بڕۆ بۆ ناوەڕۆک

فەرمانەکانی خۆت بە \newcommand

\newcommand{\name}{replacement} لە پێشەکیدا بنووسە، لەگەڵ [n] بۆ ئارگیومێنتەکانی #1 تا #n؛ لەو کاتەوە \name بە پێناسەکەی دەگۆڕدرێت، لە دەق و لە بیرکاریدا.

فەرمانێک بێ ئارگیومێنت

فەرمانێک نووسین کەم دەکاتەوە و نیشانەکان یەکگرتوو دەهێڵێتەوە. یەک جار لە پێشەکیدا پێناسەی بکە و لە هەر شوێنێک بەکاری بهێنە.

کورتکراوە بۆ کۆمەڵەکان و ناوی بەرهەمێک

\documentclass{article}
\usepackage{amssymb}
\newcommand{\R}{\mathbb{R}}
\newcommand{\product}{Scissor LaTeX}
\begin{document}
Every $x \in \R$ has a square $x^2 \ge 0$.
This page was typeset by \product.
\end{document}
Scissor LaTeX ڕیزی کردووە: کورتکراوە بۆ کۆمەڵەکان و ناوی بەرهەمێک

ئارگیومێنت و بەهای بنەڕەتی

[n] دوای ناوەکە دەڵێت فەرمانەکە چەند ئارگیومێنت وەردەگرێت؛ لەناو پێناسەکەدا ئەوان #1، #2 و هتدن. کەوانەیەکی دووەم بەهایەکی بنەڕەتی دەداتە یەکەم ئارگیومێنت، کە دەیکات بە ئارەزوومەندانە.

ئارگیومێنتەکان و یەکەم ئارگیومێنتێکی ئارەزوومەندانە

\documentclass{article}
\newcommand{\vect}[1]{\mathbf{#1}}
\newcommand{\norm}[1]{\left\lVert #1 \right\rVert}
\newcommand{\greet}[2][Hello]{#1, #2!}
\begin{document}
The length of $\vect{v}$ is $\norm{\vect{v}}$.
\greet{Erika} \greet[Good morning]{John}
\end{document}

گۆڕینی فەرمانێکی هەبوو

\renewcommand فەرمانێک دەگۆڕێت کە پێشتر هەیە، و \providecommand تەنها ئەگەر فەرمانەکە هێشتا نەبێت پێناسەی دەکات. \newcommand بۆ ناوێک کە گیراوە لە دامەزراندنێکی TeX دا هەڵەیە؛ ئەوکات \renewcommand بەکاربهێنە.

\renewcommand و \providecommand

\documentclass{article}
\renewcommand{\emph}[1]{\textbf{#1}}
\providecommand{\R}{\mathbb{R}}
\begin{document}
This is \emph{emphasised} in bold now, and $\R$ is defined.
\end{document}

ناوی کارپێکەرەکان

ناوی فەنکشنەکانی وەک sin و log بە ڕاستی و بە بۆشایی دروست ڕیز دەکرێن. \DeclareMathOperator (amsmath) هی خۆت دروست دەکات؛ شێوە ئەستێرەدارەکە لە نمایشدا سنوورەکان دەخاتە ژێرەوە، وەک \max.

\DeclareMathOperator و شێوە ئەستێرەدارەکەی

\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator{\Var}{Var}
\DeclareMathOperator*{\argmax}{arg\,max}
\begin{document}
\[
  \Var(X) = \mathbb{E}\left[(X - \mu)^2\right],
  \qquad
  \hat{\theta} = \argmax_{\theta} L(\theta)
\]
\end{document}

ژینگەکانی خۆت

\newenvironment{name}[n]{before}{after} ژینگەیەک پێناسە دەکات: کۆدی "before" لە \begin{name} و کۆدی "after" لە \end{name} ڕادەکرێت. ئارگیومێنتەکان دەتوانرێن لە بەشی "before"دا بەکاربهێنرێن.

ژینگەیەک بە ئارگیومێنتێک

\documentclass{article}
\newenvironment{task}[1]
  {\par\noindent\textbf{Task #1.}\ }
  {\par}
\begin{document}
\begin{task}{44}
Measure the rainfall every morning.
\end{task}
\end{document}

ئەوەی کار دەکات

فەرمانلە Scissor LaTeXتێبینی
\newcommand، \renewcommand، \providecommandکار دەکاتتا 9 ئارگیومێنت، یەکەم ئارگیومێنتێکی ئارەزوومەندانە بە بەهای بنەڕەتی. شێوە ئەستێرەدارەکانیش.
\DeclareRobustCommandکار دەکاتوەک \newcommand.
\newenvironment، \renewenvironmentکار دەکاتلەگەڵ ئارگیومێنت و بەهای بنەڕەتی.
\DeclareMathOperator، \DeclareMathOperator*کار دەکات
\def\name{...}، \gdef، \edef، \xdefبەشێکیپێناسە سادەکان و ئارگیومێنتی شێوەی #1 کار دەکەن؛ پارامەترە سنووردارکراوەکانی وەک \def\pt(#1,#2){...} ناگونجێنرێن و دەرئەنجامی تێکچوو دەدەن.
\let\new\oldکار دەکات
\NewDocumentCommand، \RenewDocumentCommand (xparse)پشتگیری ناکرێتپێناسەکە لادەبرێت و فەرمانەکە لەو شوێنەی بەکاردێت وەک نەناسراو ڕاپۆرت دەکرێت.
\DeclarePairedDelimiter (mathtools)کار دەکات
\makeatletter، \makeatotherوەردەگیرێتئەو فەرمانانەی @یان لە ناوەکەیاندایە ڕاناکرێن.

پێناسەکان پێش ڕیزکردن فراوان دەکرێن، بۆیە فەرمانێک دەتوانرێت لە دەق، بیرکاری، ناونیشانی وێنە و ناونیشانی بەشەکاندا بەکاربهێنرێت. بۆ پاراستن لە خولانەوەی بێکۆتایی، فراوانکردن لە سنوورێکی سەلامەتیدا دەوەستێت، لەگەڵ پەیامێک لە تابی کێشەکان.

فەرمانەکانی xparse

\NewDocumentCommand لە xparse ناخوێندرێتەوە. پێناسەکە لادەبرێت، و لەو شوێنەی فەرمانەکە بەکاردێت، ناوەکەی بە پەیامێک تێدەپەڕێندرێت لە کاتێکدا ئارگیومێنتەکانی لە دەقەکەدا دەمێننەوە.

\NewDocumentCommand پشتگیری ناکرێت

\documentclass{article}
\usepackage{xparse}
\NewDocumentCommand{\pair}{m m}{(#1, #2)}
\begin{document}
The pair \pair{a}{b} loses its parentheses and comma.
\end{document}

تابی کێشەکان: Skipped 1 unknown command: \pair

بۆ چاککردنی، هەمان فەرمان بە \newcommand{\pair}[2]{(#1, #2)} بنووسە. بۆ ئارگیومێنتی ئارەزوومەندانە، \newcommand بە بەهایەکی بنەڕەتی حاڵەتە باوەکە دەگرێتەوە.

چی جیاوازە لە دامەزراندنێکی TeX

ڕێنماییەکانی xparse و mathtools لەسەر CTANـن: xparse، mathtools. بۆ کارپێکەر و ناوی فەنکشنەکان، هەروەها کۆ، تەواوکاری و ناوی فەنکشنەکان ببینە.

پرسیار و وەڵام

چۆن لە LaTeX فەرمانێکی نوێ پێناسە بکەم؟

\newcommand{\name}{text} لە پێشەکیدا بنووسە. بۆ دوو ئارگیومێنت [2] دوای ناوەکە زیاد بکە و #1 و #2 لە دەقەکەدا بەکاربهێنە.

جیاوازیی نێوان \newcommand و \def چییە؟

\newcommand دەپشکنێت کە ناوەکە ئازادە و پشتگیری ئارگیومێنتێکی ئارەزوومەندانە دەکات. \def فەرمانە نزمئاستەکەی TeXـە؛ بێ پرسیار بەسەریدا دەنووسێتەوە. \newcommand و \renewcommand باشترن.

ئایا \NewDocumentCommand لە Scissor LaTeX کار دەکات؟

نەخێر. ئەو جۆرە فەرمانانە بە \newcommand دووبارە بنووسەوە، کە ئارگیومێنتە پێویستەکان و یەک ئارگیومێنتی ئارەزوومەندانە دەگرێتەوە.

هەموو نموونەیەکی ئەم پەڕەیە لە کاتی دروستکردنی ماڵپەڕەکەدا لەلایەن Scissor LaTeX ڕیز دەکرێت. دوایین نوێکردنەوە: 2026-11-07.