요약
이 수업은 텍스트를 다루는 강좌의 둘째 단원을 연다. 단원이 무엇을 위한 것인지 설명한다. 곧 컴파일되는 문서에서 출발하여, 학술적 글쓰기가 요구하는 정성으로 조판된 텍스트에 이르는 것이다. 어느 언어로 쓰든, 어느 문자로 쓰든 마찬가지이다. 단원의 네 수업과 그것들을 잇는 실마리를 보여 준다. 문단, 공백, 기호에서 시작해 각주, 인용, 시에 이르는 실마리이다. 앞 단원에서 이미 아는 것으로 전제하는 내용을 밝힌다. 단원이 지키도록 가르치는 조판 관례가 어디에서 왔는지 돌아본다. 단원이 해결하는 문제를 제시한다. 타자기의 습관대로 입력한 텍스트는 오류 없이 컴파일되지만 그래도 잘못 조판되어 있다는 문제이다. 그리고 이 관례들이 이공계에도 인문계에도 똑같이 쓸모 있음을 보인다.
학습 목표
- 단원 내용의 순서를 설명하고, 각 수업이 다음 수업에 무엇을 보태는지 설명한다.
- 단원이 앞 단원에서 이미 아는 것으로 전제하는 내용을 알아보고, 필요하면 복습한다.
- 오류 없이 컴파일되는 텍스트가 왜 잘못 조판되어 있을 수 있는지 예를 들어 설명한다.
- 단원이 가르치는 텍스트 조판 관례를 여러 분야에서 알아본다.
시작 평가
단원을 시작하기 전에 출발점을 재어 두면 좋다. 이 평가는 자기 평가이며 점수를 매기지 않는다. 목적은 오직 학습의 방향을 잡는 데 있다. 처음 두 문항은 단원이 앞 단원에서 이미 아는 것으로 전제하는 내용을 복습한다. 이어지는 여덟 문항은 두 문항씩 차례대로 단원의 네 수업에 대응한다. 이런 세부에 신경을 써 본 적이 없는 사람이 정답을 맞히지 못하는 것은 당연하다. 맞든 틀리든 모든 답이 요점을 설명하고 그 요점을 다루는 수업을 알려 주기 때문이다. 같은 기능은 단원 끝의 종합 수업에서 다시 측정한다.
단원을 시작하기 전에 출발점을 확인해 보세요. 짧은 자기 평가입니다. 점수가 매겨지지 않으며 결과는 브라우저에만 저장됩니다.
문제 1이전 단원에서문서 본문에
\TeX Live를 설치한다.라는 줄을 그대로 쓰면 무엇이 출력되는가?제어 단어 뒤의 공백은 텍스트에 이르지 못한다. 엔진이 명령의 이름을 읽으면서 소비해 버린다.명령은 공백에서 오류 없이 끝난다. 문제는 그 공백을 소비한다는 데 있으며, 그래서 눈에 잘 띄지 않는다.역슬래시는 출력되지 않는다. 명령을 시작하는 문자이며,\TeX는 로고를 출력하는 알려진 명령이다.\TeX는 제어 단어이다. 그 이름은 글자가 아닌 첫 문자에서 끝나고, 뒤따르는 공백은 그 끝을 알리는 신호로 소비된다.\TeX{} Live또는\TeX\ Live라고 쓴다.복습: 문서의 해부
문제 2이전 단원에서보고서 본문에 파일 이름
data_2024.csv가 그대로 쓰여 있다. 컴파일하면 어떻게 되는가?밑줄은 열 개의 예약 문자 가운데 하나이다. 그대로 쓰면 출력되지 않는다.그것은 주석을 시작하는 퍼센트 기호가 하는 일이다. 밑줄은 오류를 일으킨다.엔진은 예약 문자를 다른 문자로 바꾸지 않는다. 그 기능에 따라 해석하며, 여기서 그 기능은 수식 안에만 있다.밑줄은 수식 안에서 아래 첨자를 쓴다. 본문에서는 엔진이 수식을 여는 것을 빠뜨렸다고 여긴다.\_라고 쓰며, 파일 이름을 더 편하게 쓰는 방법은 구조를 다루는 단원에서 보여 준다.복습: 문서의 해부
문제 3어떤 저자가 논문의 문단을 나누려고 문단마다
\\로 끝내고, 빈 줄 없이 다음 줄에 이어서 쓴다. 무엇을 얻는가?같지 않다. 빈 줄은 문단을 끝내지만,\\는 문단 안에서 한 줄을 바꿀 뿐이다. 차이는 빠진 들여쓰기에서 드러난다.\\는 문단 안에서 유효한 명령이다. 엔진이 받아들이므로 이 부주의는 눈에 잘 띄지 않는다.\\는 세로 간격을 더하지도, 문단을 열지도 않는다. 줄바꿈을 강제할 뿐이다.\\는 문단 안에서 줄을 바꾼다. 새 문단은 빈 줄로 시작하며, 그때 클래스가 들여쓰기와 간격을 준다. 게다가 각 대목의 마지막 줄이 짧게 남으면 로그에는 흔히 “Underfull” 경고가 나온다.복습: 문단, 공백, 기호
문제 4LuaLaTeX와 fontspec으로 쓴 어떤 논문은 범위의 양 끝을 붙임표보다 긴 짧은 줄표로 잇는 편집 관례를 따른다. 원본에서 12쪽부터 15쪽까지의 범위는 어떻게 쓰는가?
붙임표는 가장 짧은 기호이다. 범위에 허용하는 관례도 있지만, 이 논문이 따르는 관례는 짧은 줄표를 요구한다.붙임표 세 개는 가장 긴 기호인 긴 줄표가 되며, 앞말을 부연하는 말을 끼워 넣을 때 쓰고 범위에는 쓰지 않는다.LaTeX에서~는 줄을 바꿀 수 없는 공백이다. 두 수 사이에는 기호가 아니라 공백이 나타난다. 한국어의 물결표를 쓰려면 ~ 문자를 직접 입력한다.fontspec으로 불러온 본문 글꼴에서는 이어 쓴 붙임표 두 개가 짧은 줄표가 된다. Unicode 문자를 직접 입력해도 된다. 한국어 맞춤법은 범위를 물결표나 붙임표로도 나타낸다. 중요한 것은 관례를 하나 골라 끝까지 지키는 것이다.복습: 문단, 공백, 기호
문제 5한국어 논문의 한 문단 중간에 짧은 라틴어 구절이 나온다. babel이 이미 라틴어를 부차 언어로 선언하고 있다면, 이 구절을 어떻게 표시하는 것이 좋은가?
\selectlanguage는 구절만이 아니라 뒤따르는 모든 것의 언어를 바꾸는 선언이다. 긴 대목에 알맞으며, 나중에 한국어로 되돌려야 한다.이탤릭체는 형식에 관한 결정이다. 구절이 어느 언어인지 엔진에 알려 주지 않으므로, 낱말들은 주 언어의 규칙에 따라 다루어진다.babel은 언어를 짐작하지 않는다. 선언된 언어를 적용하며, 표시하지 않은 구절은 한국어로 다루어진다.\foreignlanguage는 인수를 받으며 그 효과는 인수 안에 한정된다. 라틴어 낱말은 라틴어의 규칙에 따라 하이픈으로 나뉘고, 문단의 나머지는 바뀌지 않는다.복습: 언어와 글꼴
문제 6프리앰블에
\babelfont[ancientgreek]{rm}{GFS Didot}이 있다. 이 줄은 무엇을 하는가?그렇게 하는 것은\setmainfont{GFS Didot}이나 언어를 지정하지 않은\babelfont{rm}{GFS Didot}이다. 대괄호는 변경을 고대 그리스어로 한정한다.babel은 아무것도 번역하지 않는다. 각 부분에 그 부분에 선언된 언어의 관례를 적용하고, 이 줄에 따라 글꼴도 적용한다.원본의 한 줄은 아무것도 설치하지 않는다. 글꼴은 이미 배포판이나 시스템에 있어야 하며, 없으면 컴파일이 그 사실을 알린다.\babelfont에 대괄호로 언어를 지정하면, babel은 그 언어에 들어갈 때마다 글꼴을 바꾼다. 예를 들어\foreignlanguage{ancientgreek}{…}안에서이다. 이렇게 하여 그리스 문자가 없는 주 글꼴과 그것이 있는 다른 글꼴이 함께 쓰일 수 있다.복습: 언어와 글꼴
문제 7이미 이탤릭체로 조판된 로마자 대목(예를 들어 영어 책 제목) 안에서 한 낱말을
\emph로 강조한다. 그 낱말은 어떻게 보이는가?그렇게 되는 것은 언제나 이탤릭체로 하는\textit의 경우이다.\emph는 주위와 번갈아 바뀐다.\emph는 굵은 글꼴을 쓰지 않는다. 둘레의 텍스트에 따라 이탤릭체와 똑바른 글자를 번갈아 쓴다.오류는 전혀 없다. 강조를 겹쳐 써도 되며, 그 모양은 클래스가 정한다.\emph가 나타내는 것은 이탤릭체가 아니라 강조이다. 똑바른 글 속에서는 이탤릭체로 하고, 이탤릭체 글 속에서는 똑바른 글자로 돌아간다. 그래서 이 명령은 낱말이 어떻게 보이는지가 아니라 낱말이 무엇인지를 말한다.복습: 의미 있는 서식
문제 8어떤 저자가 문단 중간에
앞은 \large{크게} 뒤는 보통.이라고 쓰고, “크게”만 크기가 바뀔 것이라고 생각한다. 어떻게 되는가?그렇게 작동하는 것은\textbf{…}같은 인수를 받는 명령이다. 크기 명령은 선언이다.오류는 없다. 중괄호는 평범한 그룹으로 읽히고, 이 부주의는 눈에 잘 띄지 않는다.그룹이 취소하는 것은 그 안에서 선언된 것이지, 앞서 선언된 것이 아니다. 여기서 선언은 그룹 밖에 있다.\large뒤의 중괄호는 그 인수가 아니라 선언 뒤에 오는 그룹이다. 크기 변경은 이미 그 그룹 밖에서 일어났다.{\large 크게}라고 쓰거나, 더 좋게는 그 낱말이 무엇인지 말하는 명령을 쓴다.복습: 의미 있는 서식
문제 9세 문단에 이르는 원문 그대로의 인용을 본문과 떨어뜨려 조판한다. LaTeX의 어느 환경이 알맞은가?
quote는 문단의 첫 줄을 들여 쓰지 않으므로, 여러 문단으로 된 인용에서는 문단이 잘 구별되지 않는다. 짧은 인용을 위한 환경이다.가운데 맞춤은 인용이 아니다.center는 각 줄을 가운데로 모을 뿐, 인용처럼 여백을 들이지 않는다.세 문단의 인용은 한 문단 안에 들어가지 않는다. 긴 인용은 따옴표 없이 본문과 떨어뜨려 조판한다.기본 클래스에는 두 환경이 있다.quote는 짧은 인용이나 짧은 인용의 연속을 위한 것으로 문단 들여쓰기가 없고,quotation은 여러 문단으로 된 인용을 위한 것으로 들여쓰기를 유지한다.복습: 각주, 인용, 시
문제 10시를 조판하는
verse환경에서 시행과 연은 어떻게 나누는가?빈 줄은 문단을 여는데,verse에서 문단은 연이다. 시행마다 한 줄짜리 연이 되어 버린다.원본의 줄바꿈은 공백과 같다. 시행들이 이어져 한 줄이 되어 버린다.\newline은\\처럼 줄을 바꿀 뿐, 연과 연을 떼어 놓는 간격은 넣지 않는다. 연을 나누는 것은 빈 줄이다.verse안에서 시행은 문단의 한 줄이고, 연은 문단이다.\\가 시행을 나누고, 빈 줄이 그 간격과 함께 다음 연을 연다.복습: 각주, 인용, 시
콘텐츠를 불러오는 중…