EDRSPIHCRSSRSS

Mac OS X와 XeLaTeX​

Difference between r1.13 and the current

@@ -1,43 +1,66 @@
#title Mac OS X와 XeLaTeX​
 
[[TableOfContents]]
== 폰트 찾기를 위한 texmf.cnf 수정 ==
맥의 시스템 폰트를 '파일이름으로'(즉 ExternalLocation으로) 찾으려면 다음 조치를 취해두어야 한다.
{{{/usr/local/texlive/texmf-local/web2c/texmf.cnf}}}파일을 텍스트파일로 열어서 제일 위에 다음 코드를 추가한 후 저장한다. 이미 만들어져 있다면 이 과정은 생략한다. {{{
{{{/usr/local/texlive/20XX/texmf.cnf}}}파일을 텍스트파일로 열어서 다음 코드를 추가한 후 저장한다. 이미 만들어져 있다면 이 과정은 생략한다. {{{
OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}
}}}
superuser 권한이 필요할 수 있다.
수정이유: 이 토막글의 이전 버전에서 {{{/usr/local/texlive/texmf-local/web2c/texmf.cnf}}}를 수정하라고 하고 있었으나 이것은 비표준적 방법이다. texmf-local 아래에 새로운 {{{texmf.cnf}}}를 만드는 방법의 유일한 장점은 해마다 새로 texmf.cnf를 수정하지 않아도 된다는 점뿐이다. 이 때문에 초보자가 겪을 수 있는 혼선(예컨대 mktexlsr을 실행하지 않으면 texmf.cnf가 활성화되지 않는다든지, TEXMF의 참조 순서를 바꾸었을 때 발생할 수 있는 의도하지 않은 동작이라든지 등)을 생각하면 좋은 선택이 아니다. 매년 한 번 수정하는 것이 그렇게까지 귀찮은 일인지 알지 못하겠다. 따라서 이를 표준적인 위치의 파일을 수정하도록 변경한다.

파일을 열고 편집하는 것이 불편하다면 다음 명령을 터미널에서 내린다.
파일을 열고 편집하는 것이 불편하다면 다음 명령을 터미널에서 내린다. 중간에 빈칸을 넣는다든가 뺀다든가 하는 실수를 하지 않아야 한다.
{{{#!bash
sudo echo "OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}" >>`kpsewhich texmf.cnf`
}}}
참고: 이 부분은 원래 다음과 같이 되어 있었다. texmf-local 아래의 texmf.cnf를 변경하는 것이다. {{{
sudo mkdir -p `kpsewhich -var-value=TEXMFLOCAL`/web2c
sudo echo "OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}" >>`kpsewhich -var-value=TEXMFLOCAL`/web2c/texmf.cnf
sudo mktexlsr
}}}
* 중간에 빈칸을 넣는다든가 뺀다든가 하는 실수를 하지 않아야 한다.

== TeXLive의 폰트를 맥 OS 폰트로 등록하기 ==
XeTeX은 {{{ExternalLocation}}}이 아니면 다음 위치에서 폰트를 찾는다.
{{{ /Library/Fonts, /System/Library/Fonts, ~/Library/Fonts }}}
그러므로 이 위치에 사용하고자 하는 폰트가 있어야 한다.
=== symbolic link ===
사용자의 `~/Library/Fonts` 아래에 TeX Live의 트루타입과 오픈타입 폴더를 링크해두는 방법이 있다. 이 방법은 TeX Live를 full로 설치하였을 때 등록되는 폰트가 너무 많아지기 때문에 선별적으로 등록하고자 하는 사용자에게는 적당하지 않지만 다른 고려 없이 TeX Live 폰트를 바로 사용할 수 있다는 장점이 있다.
(TeXLive 폰트가 매우 많기 때문에 심링크를 건 후에 즉시 폰트를 시스템이 인식하지 못하는 경우가 많다. 재시동을 권장한다.)
==== MacTeX으로 설치한 경우 ====
{{{#!bash
# cd ~/Library/Fonts
ln -s /Library/TeX/Root/texmf-dist/fonts/truetype ~/Library/Fonts/
ln -s /Library/TeX/Root/texmf-dist/fonts/opentype ~/Library/Fonts/
}}}
==== MacTeX이 아닌 방법으로 설치한 경우 ====
{{{#!bash
# cd ~/Library/Fonts
ln -s /usr/local/texlive/2025/texmf-dist/fonts/truetype ~/Library/Fonts/
ln -s /usr/local/texlive/2025/texmf-dist/fonts/opentype ~/Library/Fonts/
}}}
* 매년 설치한 후에 연도에 맞추어서 수정해주어야 한다.
=== 단순 복사 ===
가장 간단한 방법은, 사용자 폰트 라이브러리 폴더[[Footnote(터미널에서 Shift-Cmd-G를 누른 후 {{{~/Library/Fonts}}}로 이동할 수 있다.)]]로 해당 폰트 파일을 복사하여 가져다두는 것이다.
* 은폰트의 경우 {{{/usr/local/texlive/2023/texmf-dist/fonts/truetype/public/unfonts-core/}}} 아래에 설치되어 있다.
* 여기에 있는 폰트 파일을 {{{~/Library/Fonts}}}로 단순 복사한다.
* 더블 클릭하여 설치하면, Font Book에 설치된다.

[[Footnote]]

=== 서체관리자의 폰트 라이브러리 만들기 ===
또 다른 방법으로 서체관리자(Fontbook)를 이용하여 폰트 파일 자체를 이동하지 않고 새로운 폰트 라이브러리를 등록하는 방법이 있다.
1. 서체관리자 실행
1. 파일 -> 새로운 보관함 (New Library) 메뉴
1. 적당한 이름을 써넣는다.
1. 파일 -> 서체 추가 (Add Fonts)를 선택한다. 또는 위의 이름에서 우클릭해서 서체 추가를 선택해도 된다.
또 다른 방법으로 서체관리자(Font Book)를 이용하여 폰트 파일 자체를 이동하지 않고 새로운 폰트 라이브러리를 등록하는 방법이 있다.
1. 서체관리자(Font Book.app) 실행
1. 파일(File) -> 새로운 보관함(New Library) 메뉴 선택
* 그러면, Font Book의 왼쪽 pane의 Libraries 부분에 Unnamed Library가 생긴다.
1. (Unnamed Library를 더블 클릭하여) 적당한 이름을 써넣는다.
1. 파일 -> 서체 추가 (Add Fonts)를 선택한다. 또는 위의 이름에서 "우클릭"해서 서체 추가(Add fonts to...)를 선택해도 된다.
1. 파일 선택창이 열린다. 경로가 매우 길기 때문에 Shift-Cmd-G 를 눌러준 다음 경로를 입력한다. (20XX는 연도) {{{
/usr/local/texlive/20XX/texmf-dist/fonts/opentype/public
/usr/local/texlive/20XX/texmf-dist/fonts/truetype/public
}}}
1. 원하는 폰트들을 선택한다.
* 은폰트의 경우 {{{/usr/local/texlive/2023/texmf-dist/fonts/truetype/public/unfonts-core/}}} 아래에 설치되어 있다.
* 참고로 (거의 필수)인 [함초롬체LVT]는 {{{tlmgr install hcr-lvt}}}하면 {{{/usr/local/texlive/2023/texmf-dist/fonts/truetype/hancom/}}} 아래에 설치된다. 이 폰트들을 위의 방식으로 폰트 라이브러리에 추가한다.

참고로 (거의 필수)인 [함초롬체LVT]는 {{{tlmgr install hcr-lvt}}}하면 {{{/usr/local/texlive/2019/texmf-dist/fonts/truetype/hancom/}}} 아래에 설치된다. 이 폰트들을 위의 방식으로 폰트 라이브러리에 추가한다.
 
=== symbolic link ===
사용자의 `~/Library/Fonts` 아래에 TeX Live의 트루타입과 오픈타입 폴더를 링크해두는 방법이 있다. 이 방법은 TeX Live를 full로 설치하였을 때 등록되는 폰트가 너무 많아지기 때문에 선별적으로 등록하고자 하는 사용자에게는 적당하지 않지만 다른 고려 없이 TeX Live 폰트를 바로 사용할 수 있다는 장점이 있다.
{{{#!bash
# cd ~/Library/Fonts
ln -s /usr/local/texlive/2019/texmf-dist/fonts/truetype ~/Library/Fonts/
ln -s /usr/local/texlive/2019/texmf-dist/fonts/opentype ~/Library/Fonts/
}}}





1. 폰트 찾기를 위한 texmf.cnf 수정

맥의 시스템 폰트를 '파일이름으로'(즉 ExternalLocation으로) 찾으려면 다음 조치를 취해두어야 한다. /usr/local/texlive/20XX/texmf.cnf파일을 텍스트파일로 열어서 다음 코드를 추가한 후 저장한다. 이미 만들어져 있다면 이 과정은 생략한다.
OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}
superuser 권한이 필요할 수 있다.
수정이유: 이 토막글의 이전 버전에서 /usr/local/texlive/texmf-local/web2c/texmf.cnf를 수정하라고 하고 있었으나 이것은 비표준적 방법이다. texmf-local 아래에 새로운 texmf.cnf를 만드는 방법의 유일한 장점은 해마다 새로 texmf.cnf를 수정하지 않아도 된다는 점뿐이다. 이 때문에 초보자가 겪을 수 있는 혼선(예컨대 mktexlsr을 실행하지 않으면 texmf.cnf가 활성화되지 않는다든지, TEXMF의 참조 순서를 바꾸었을 때 발생할 수 있는 의도하지 않은 동작이라든지 등)을 생각하면 좋은 선택이 아니다. 매년 한 번 수정하는 것이 그렇게까지 귀찮은 일인지 알지 못하겠다. 따라서 이를 표준적인 위치의 파일을 수정하도록 변경한다.

파일을 열고 편집하는 것이 불편하다면 다음 명령을 터미널에서 내린다. 중간에 빈칸을 넣는다든가 뺀다든가 하는 실수를 하지 않아야 한다.
sudo echo "OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}" >>`kpsewhich texmf.cnf`
참고: 이 부분은 원래 다음과 같이 되어 있었다. texmf-local 아래의 texmf.cnf를 변경하는 것이다.
sudo mkdir -p `kpsewhich -var-value=TEXMFLOCAL`/web2c
sudo echo "OSFONTDIR = {~/Library/Fonts//;/Library/Fonts//;/System/Library/Fonts//}" >>`kpsewhich -var-value=TEXMFLOCAL`/web2c/texmf.cnf
sudo mktexlsr


2. TeXLive의 폰트를 맥 OS 폰트로 등록하기

XeTeXExternalLocation이 아니면 다음 위치에서 폰트를 찾는다. /Library/Fonts, /System/Library/Fonts, ~/Library/Fonts 그러므로 이 위치에 사용하고자 하는 폰트가 있어야 한다.

2.1. symbolic link

사용자의 ~/Library/Fonts 아래에 TeX Live의 트루타입과 오픈타입 폴더를 링크해두는 방법이 있다. 이 방법은 TeX Live를 full로 설치하였을 때 등록되는 폰트가 너무 많아지기 때문에 선별적으로 등록하고자 하는 사용자에게는 적당하지 않지만 다른 고려 없이 TeX Live 폰트를 바로 사용할 수 있다는 장점이 있다.
(TeXLive 폰트가 매우 많기 때문에 심링크를 건 후에 즉시 폰트를 시스템이 인식하지 못하는 경우가 많다. 재시동을 권장한다.)

2.1.1. MacTeX으로 설치한 경우

# cd ~/Library/Fonts
ln -s /Library/TeX/Root/texmf-dist/fonts/truetype ~/Library/Fonts/
ln -s /Library/TeX/Root/texmf-dist/fonts/opentype ~/Library/Fonts/

2.1.2. MacTeX이 아닌 방법으로 설치한 경우

# cd ~/Library/Fonts
ln -s /usr/local/texlive/2025/texmf-dist/fonts/truetype ~/Library/Fonts/
ln -s /usr/local/texlive/2025/texmf-dist/fonts/opentype ~/Library/Fonts/
  • 매년 설치한 후에 연도에 맞추어서 수정해주어야 한다.

2.2. 단순 복사


가장 간단한 방법은, 사용자 폰트 라이브러리 폴더[1]로 해당 폰트 파일을 복사하여 가져다두는 것이다.
  • 은폰트의 경우 /usr/local/texlive/2023/texmf-dist/fonts/truetype/public/unfonts-core/ 아래에 설치되어 있다.
    • 여기에 있는 폰트 파일을 ~/Library/Fonts로 단순 복사한다.
    • 더블 클릭하여 설치하면, Font Book에 설치된다.

----
  • [1] 터미널에서 Shift-Cmd-G를 누른 후 ~/Library/Fonts로 이동할 수 있다.

2.3. 서체관리자의 폰트 라이브러리 만들기

또 다른 방법으로 서체관리자(Font Book)를 이용하여 폰트 파일 자체를 이동하지 않고 새로운 폰트 라이브러리를 등록하는 방법이 있다.
  1. 서체관리자(Font Book.app) 실행
  2. 파일(File) -> 새로운 보관함(New Library) 메뉴 선택
    • 그러면, Font Book의 왼쪽 pane의 Libraries 부분에 Unnamed Library가 생긴다.
  3. (Unnamed Library를 더블 클릭하여) 적당한 이름을 써넣는다.
  4. 파일 -> 서체 추가 (Add Fonts)를 선택한다. 또는 위의 이름에서 "우클릭"해서 서체 추가(Add fonts to...)를 선택해도 된다.
  5. 파일 선택창이 열린다. 경로가 매우 길기 때문에 Shift-Cmd-G 를 눌러준 다음 경로를 입력한다. (20XX는 연도)
    /usr/local/texlive/20XX/texmf-dist/fonts/truetype/public
    
  6. 원하는 폰트들을 선택한다.
    • 은폰트의 경우 /usr/local/texlive/2023/texmf-dist/fonts/truetype/public/unfonts-core/ 아래에 설치되어 있다.
    • 참고로 (거의 필수)인 함초롬체LVTtlmgr install hcr-lvt하면 /usr/local/texlive/2023/texmf-dist/fonts/truetype/hancom/ 아래에 설치된다. 이 폰트들을 위의 방식으로 폰트 라이브러리에 추가한다.