Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
환경 매크로를 \let하는 방법은?
2011.02.08 16:33
\let\this\that
이렇게 하면 \this 매크로가 \that 매크로를 불러서 작동하잖아요?
환경도 이런 식으로 다른 환경으로 치환하는 방법이 있을까요?
이를테면, itemize를 enumerate로 치환하는 것처럼요.
댓글 5
-
progress
2011.02.08 17:59
-
yihoze
2011.02.08 22:05
그렇게 하니까 되네요. 고맙습니다.
-
gromov
2011.02.08 23:30
명쾌하군요. 설명해 주신 김에 하나 더 여쭈어 봅니다.
이 \begin{enumerate}~\end{enumerate}가 내부적으로는 \enumerate~\endenumerate로 작동한다는 것은 얼마 전에 들어 알았습니다. 이 내부 명령 형식은 오래 전에 없어진 amsppt 스타일이 쓰던 방식이군요.(어쩌면 plain tex의 방식인지도) 그런데 내부적으로는 이런 방식을 쓰더라도 엔드 유저는 \begin{enumerate}를 쓰면 좋은 점은 무엇일까요? 뭔가 이점이 있어서 latex에서는 소스 파일에 이렇게 나타나도록 고쳤을 것 같은데요...
또 한 번의 명쾌한 설명을 부탁드립니다.
-
춉
2011.02.09 18:11
- 문서의 논리구조가 사용자 뿐만 아니라 라텍에게도 잘 보인다.
- 쉽게 말해, \enumerate 라고 적혀 있으면 이게 \endenumerate 가 함께 제공되는지 그렇지 않은지 알 수가 없다는 이야기. 혹시 에러라도 발생하면 어디서 에러가 발생했는지 찾기가 매우 어려워 짐
- 라텍의 입장에서도 알 수가 없으므로 제대로 사용되었는지 에러 체크를 할 수가 없음
- \begin{my enumerate} ... \end{my enumerate} 처럼 빈칸을 쓸 수가 있다.
-
progress
2011.02.09 12:23
먼저 AMS-TeX이나 PlainTeX을 사용해본 경험이 별로 없어 gromov 님의 질문에 대해 명쾌히 설명드리지 못함을 양해해 주십시오.===잘 아시다시피 PlainTeX은 AMS-TeX과 LaTeX으로 발전합니다.AMS-TeX은 The Joy of TeX의 저자 Spivak 교수가, LaTeX은 Lamport가 각각 주도했지요.AMS-TeX의 특징은 수식 표현에 관한 편리한 매크로를 대거 집어넣었다는 데 있습니다. 예를 들어 \matrix ~\endmatrix, \bmatrix ~ \endbmatrix, \cases ~ \endcases, \align ~ \endalign 등을 쓸 수 있지요. 여기서 \something으로 지정한 명령어가 과연 어디까지 영향을 미치는 것인지 알 수 있도록 \endsomething이 나왔다고 생각하고 있습니다. 이렇듯 특정 something 매크로의 시작과 끝을 \something ~ \endsomething으로 표현하는 것이 PlainTeX에서부터 있던 것인지 AMS-TeX에서 처음 등장한 것인지는 저도 잘 모르겠습니다.한편 LaTeX의 특징은 "환경(environment)"이 주어졌다는 것입니다. \begin{document}~\end{document}를 위시하여 수많은 \begin{...} ~ \end{...} 환경이 주어지지요. 근데 이 환경이란 것이 전혀 없던 개념이 새로 생긴 것이 아니라 사용자의 입력 편의성을 고려하여 만들어진 것으로 이해하고 있습니다. 즉 "\begin{...}으로 시작하는 구문은 반드시 \end{...}로 끝나는 구문을 동반한다"는 사실이 사용자들에게 더 쉽게 느껴졌던 것 같습니다. 아무래도 AMS-TeX에서 \something이란 명령이 나오면 이게 단일 매크로인지, 아니면 저쪽 뒤에 \endsomething을 수반하는 것인지 헷갈리는 것이겠지요.이렇게 AMS-TeX과 LaTeX이 사용하던 환경 정의 방법이 공존하다가 LaTeX의 입력 방식을 사람들이 더 선호하게 된 것이고요. 결국 AMS-TeX도 나중엔 LaTeX의 환경 정의 방법을 받아들여 AMS-LaTeX이라는 것으로 발전을 하게 됩니다. AMS-LaTeX이라는 매크로 집합은 우리가 잘 아는 \usepakcge{amsmath} 입니다. 즉 이를 토대로 \align ~ \endalign 같은 입력방식이 \begin{align} ~ \end{align} 같은 방식으로 바뀌게 되는 것이죠. 그리고 아예 클래스단계에서부터 AMS-LaTeX을 사용하도록 amsart, amsbook 같은 클래스 파일도제공하게 됩니다.[마무리] (이점이 무엇인지는 잘 모르지만) LaTeX의 환경 정의 방식, 즉 환경의 시작(begin)과 끝(end)을 알리는 방식이 AMS-TeX의 방식보다 사람들에게 더 호응을 얻었다고 미루어 짐작합니다.*TeX을 오래전부터 사용하시는 분의 현답도 기대하고 있겠습니다.
제가 알기로
환경은 내부적으로
로 이루어진다고 알고 있습니다. 그러니
하면 될 것 같아요.