سلام من با استفاده از بسته tcolorbox محیطی برای لم نوشتم. دستورات به صورت زیر است
\documentclass{article}
\usepackage{cleveref}
\usepackage{tikz,lmodern,amssymb}
\usepackage[most]{tcolorbox}
\tcbuselibrary{skins}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
\definecolor{hotpink}{rgb}{1,0,0.5}
\newtcbtheorem[auto counter]{lem}{لم}%
{enhanced,arc=1mm,outer arc=1mm,
boxrule=1mm,toprule=1mm,bottomrule=1mm,left=1mm,right=1mm,
titlerule=0mm,toptitle=0mm,bottomtitle=1mm,top=0mm,
colframe=hotpink!90!black,colback=hotpink!10!white,coltitle=white,
title style={left color=white,right color=hotpink},
fonttitle=\bfseries\normalsize,fontupper=\normalsize\itshape,
}{theo}
%%%%%%%%%%%%%%%%%%%%%%%%
\begin{lem}{عنوان }{n1}%
مقداری متن
\end{lem}
\begin{lem}[label={n2}]{ }{}%
مقداری متن
\end{lem}
ارجاع \ref{n2} و ارجاع \ref{theo:n1}
\end{document}
حالا میخواهم یک فرمان بنویسم که دستور
\begin{lem}{عنوان }{n1}
را بتوان به صورتهای مثلا
\ble{عنوان }{n1}
\ble
\ble{n1}
وارد کنم که وقتی آپشن عنوان یا آپشن لیبل ندارم آنها را ننویسم. خودم سعی کردم
با newcommand این کار را انجام دهم ولی خطا میگیره.