Dev.to KaTeX vs Standard LaTeX — 작동하는 것과 작동하지 않는 것
Source: Dev.to
번역을 진행하려면 번역하고자 하는 전체 텍스트를 제공해 주세요. 코드 블록이나 URL는 그대로 유지하고, 본문 내용만 한국어로 번역해 드리겠습니다.
Context: Standard LaTeX vs. Dev.to
| 기능 | 표준 LaTeX | Dev.to (KaTeX) |
|---|---|---|
| 인라인 수식 | $x^2$ | {% katex inline %} x^2 {% endkatex %} |
| 디스플레이 수식 | $$x^2$$ | {% katex %} x^2 {% endkatex %} |
| 다중 행 정렬 방정식 | \begin{align} … \end{align} | Use aligned inside a KaTeX block (see below) |
| 구간별 함수 | \begin{cases} … \end{cases} | Works inside KaTeX |
| 행렬 | \begin{pmatrix} … \end{pmatrix} (and bmatrix, etc.) | All bracket types work |
| 사용자 정의 레이아웃 | \begin{array} … \end{array} | Works |
| 인라인 행렬 | \begin{smallmatrix} … \end{smallmatrix} | Works |
일반적으로 지원되는 표기법
All of the following work as expected inside KaTeX blocks:
- 그리스 문자:
\alpha…\omega, 대문자도 포함 - 분수:
\frac,\dfrac,\cfrac - 루트:
\sqrt,\sqrt[n] - 악센트(위첨자 등):
\hat,\bar,\tilde,\vec,\dot - 연산자:
\sum,\prod,\int,\lim - 관계 기호:
\leq,\geq,\neq,\sim,\cong,\equiv - 논리 기호:
\forall,\exists,\neg,\land,\lor - 집합 기호:
\in,\subset,\cup,\cap,\emptyset - 화살표:
\to,\Rightarrow,\iff,\mapsto - 폰트:
\mathbb,\mathbf,\mathcal,\mathfrak,\mathrm,\text - 꾸밈:
\color,\boxed,\cancel,\underbrace,\overbrace
Source: …
작동하지 않는 항목 ❌
1. align 환경
자동 번호가 매겨지는 최상위 align 환경은 지원되지 않습니다.
작동하지 않음
{% katex %}
\begin{align}
a &= b + c \\
&= d
\end{align}
{% endkatex %}
대신 사용
{% katex %}
\begin{aligned}
a &= b + c \\
&= d
\end{aligned}
{% endkatex %}
aligned는 수식 모드 안에서 동작하는 하위 환경으로, KaTeX가 기대하는 형태입니다.
2. 사용자 정의 매크로 (\newcommand)
\newcommand 로 단축키를 정의하는 것은 지원되지 않습니다.
% This doesn't work on Dev.to
\newcommand{\R}{\mathbb{R}}
\newcommand{\norm}[1]{\left\| #1 \right\|}
우회 방법: 매번 전체 명령을 직접 입력하거나, 편집기의 스니펫·찾기·바꾸기 기능을 활용해 입력을 빠르게 합니다.
3. 레이블 및 참조 (\label, \ref, \eqref)
자동 번호 매기기와 교차 참조는 사용할 수 없습니다.
\label{eq:main}
\ref{eq:main}
\eqref{eq:main}
우회 방법: 수동 번호 매기기를 위해 \tag{} 를 사용합니다.
{% katex %}
E = mc^2 \tag{1}
{% endkatex %}
새로운 식을 삽입하거나 삭제할 경우 번호를 직접 다시 매겨야 합니다.
4. 정리‑형식 환경
theorem, proof 와 같은 환경은 렌더링되지 않습니다.
\begin{theorem}
Every finite group of order p is cyclic.
\end{theorem}
\begin{proof}
...
\end{proof}
우회 방법: 마크다운 인용 블록과 굵은 텍스트를 활용합니다.
Theorem 1. Every finite group of order p is cyclic.
Proof
… proof content …
{% katex inline %} \square {% endkatex %}
5. 다이어그램 (TikZ, tikzcd 등)
TikZ 계열 전체가 지원되지 않습니다.
\begin{tikzcd}
A \arrow[r] & B
\end{tikzcd}
우회 방법: 외부에서 다이어그램을 만든 뒤 이미지로 삽입합니다.

유용한 외부 도구:
- quiver – 가환 다이어그램
- tikzjax – 일반 TikZ 렌더링 (SVG/PNG 로 내보내기)
6. \DeclareMathOperator
\DeclareMathOperator 로 명명된 연산자를 정의하는 것은 지원되지 않습니다.
\DeclareMathOperator{\Hom}{Hom}
우회 방법: \operatorname{} 를 직접 사용합니다.
{% katex %}
\operatorname{Hom}(A, B)
{% endkatex %}
Quick Reference: Substitutions
| What you want | Standard LaTeX | Dev.to (KaTeX) equivalent |
|---|---|---|
| Aligned equations | \begin{align} … \end{align} | \begin{aligned} inside a {% katex %} block |
| Display equation | $$ … $$ | {% katex %} … {% endkatex %} |
| Inline equation | $ … $ | {% katex inline %} … {% endkatex %} |
| Custom macro | \newcommand{\R}{\mathbb{R}} | Write \mathbb{R} each time |
| Equation number | \label{…} + \ref{…} | Manual \tag{1} |
| Named operator | \DeclareMathOperator{\Hom}{Hom} | \operatorname{Hom} |
| Theorem box | \begin{theorem} … \end{theorem} | Markdown blockquote with bold heading |
| Diagram | tikz-cd | External image (![]()) |
전체 LaTeX 플랫폼을 고려해야 할 때
대부분의 기술 기사—알고리즘 분석, 머신러닝 수학, 기본 증명—에서는 Dev.to의 KaTeX가 충분합니다. 하지만 다음과 같은 경우에는:
- 교환 다이어그램 (범주 이론, 대수학)
- 자동 번호 매기기가 가능한 형식적인 정리/증명 환경
- 복잡한 TikZ 그림 (그래프, 자동자)
- 긴 문서를 위한 사용자 정의 매크로
LaTeX‑네이티브 플랫폼(예: Folio, Overleaf 등)을 사용하면 이러한 기능을 바로 활용할 수 있습니다.
Takeaway: Dev.to는 {% katex %} liquid 태그를 통해 KaTeX를 사용합니다—$…$ 구문이 아니라. 대부분의 표준 수학 표기법은 문제없이 작동합니다. 주요 부족점은 align 환경, 사용자 정의 매크로, 자동 번호 매기기, 그리고 다이어그램 지원입니다. 이러한 우회 방법을 알면 대부분의 기술 포스트에서 Dev.to에 깔끔하고 가독성 높은 수식을 작성할 수 있습니다.