Perintah buatan sendiri dengan \newcommand
Tulis \newcommand{\name}{pengganti} di preambul, dengan [n] untuk argumen #1 sampai #n; sejak itu \name diganti dengan definisinya, di dalam teks maupun matematika.
Perintah tanpa argumen
Perintah menghemat ketikan dan menjaga notasi tetap konsisten. Definisikan sekali di preambul dan pakai di mana saja.
Pintasan untuk himpunan dan nama produk
\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}Argumen dan nilai bawaan
[n] setelah nama menyatakan berapa banyak argumen yang diterima perintah; di dalam definisi argumen itu ditulis #1, #2, dan seterusnya. Kurung siku kedua memberi argumen pertama nilai bawaan, sehingga argumen itu menjadi opsional.
Argumen dan argumen pertama yang opsional
\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}Mengubah perintah yang sudah ada
\renewcommand mengganti perintah yang sudah ada, dan \providecommand mendefinisikan perintah hanya jika belum ada. \newcommand untuk nama yang sudah dipakai adalah galat di instalasi TeX; dalam hal itu pakai \renewcommand.
\renewcommand dan \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}Nama operator
Nama fungsi seperti sin dan log disusun tegak dengan jarak yang tepat. \DeclareMathOperator (amsmath) membuat operator Anda sendiri; bentuk berbintangnya menempatkan batas di bawah dalam tampilan, seperti \max.
\DeclareMathOperator dan bentuk berbintangnya
\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}Lingkungan buatan sendiri
\newenvironment{name}[n]{before}{after} mendefinisikan lingkungan: kode "before" dijalankan pada \begin{name} dan kode "after" pada \end{name}. Argumen bisa dipakai di bagian "before".
Lingkungan dengan sebuah argumen
\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}Apa yang berfungsi
| Perintah | Di Scissor LaTeX | Catatan |
|---|---|---|
\newcommand, \renewcommand, \providecommand | Berfungsi | Sampai 9 argumen, argumen pertama opsional dengan nilai bawaan. Bentuk berbintang juga. |
\DeclareRobustCommand | Berfungsi | Sama seperti \newcommand. |
\newenvironment, \renewenvironment | Berfungsi | Dengan argumen dan nilai bawaan. |
\DeclareMathOperator, \DeclareMathOperator* | Berfungsi | |
\def\name{...}, \gdef, \edef, \xdef | Sebagian | Definisi sederhana dan argumen gaya #1 berfungsi; parameter berpembatas seperti \def\pt(#1,#2){...} tidak dicocokkan dan menghasilkan keluaran yang kacau. |
\let\new\old | Berfungsi | |
\NewDocumentCommand, \RenewDocumentCommand (xparse) | Tidak didukung | Definisinya dibuang dan perintahnya dilaporkan tidak dikenal di tempat ia dipakai. |
\DeclarePairedDelimiter (mathtools) | Berfungsi | |
\makeatletter, \makeatother | Diterima | Perintah dengan @ di namanya tidak dijalankan. |
Definisi diekspansi sebelum tata huruf, sehingga perintah bisa dipakai di teks, matematika, keterangan, dan judul bagian. Untuk mencegah perulangan tanpa akhir, ekspansi berhenti pada batas pengaman, disertai pesan di tab Masalah.
Perintah xparse
\NewDocumentCommand dari xparse tidak dibaca. Definisinya dibuang, dan di tempat perintah itu dipakai, namanya dilewati dengan pesan sementara argumennya tetap ada di teks.
\NewDocumentCommand tidak didukung
\documentclass{article}
\usepackage{xparse}
\NewDocumentCommand{\pair}{m m}{(#1, #2)}
\begin{document}
The pair \pair{a}{b} loses its parentheses and comma.
\end{document}Tab Masalah: Skipped 1 unknown command: \pair
Untuk memperbaikinya, tulis perintah yang sama dengan \newcommand{\pair}[2]{(#1, #2)}. Untuk argumen opsional, \newcommand dengan nilai bawaan sudah mencakup kasus yang umum.
Perbedaan dengan instalasi TeX
Manual xparse dan mathtools ada di CTAN: xparse, mathtools. Untuk operator dan nama fungsi, lihat juga Jumlah, integral, dan nama fungsi.
Tanya jawab
Bagaimana cara mendefinisikan perintah baru di LaTeX?
Tulis \newcommand{\name}{teks} di preambul. Tambahkan [2] setelah nama untuk dua argumen dan pakai #1 serta #2 di dalam teks.
Apa bedanya \newcommand dan \def?
\newcommand memeriksa bahwa namanya belum dipakai dan mendukung argumen opsional. \def adalah perintah TeX tingkat rendah; perintah ini menimpa tanpa bertanya. Utamakan \newcommand dan \renewcommand.
Apakah \NewDocumentCommand berfungsi di Scissor LaTeX?
Tidak. Tulis ulang perintah seperti itu dengan \newcommand, yang mencakup argumen wajib dan satu argumen opsional.
Setiap contoh di halaman ini ditata oleh Scissor LaTeX saat situs dibuat. Terakhir diperbarui 2026-11-07.