summaryrefslogtreecommitdiff
path: root/macros/luatex/generic/luatexko/luatexko-doc.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/luatex/generic/luatexko/luatexko-doc.tex')
-rw-r--r--macros/luatex/generic/luatexko/luatexko-doc.tex188
1 files changed, 104 insertions, 84 deletions
diff --git a/macros/luatex/generic/luatexko/luatexko-doc.tex b/macros/luatex/generic/luatexko/luatexko-doc.tex
index 759a46bfb9..7d57dee230 100644
--- a/macros/luatex/generic/luatexko/luatexko-doc.tex
+++ b/macros/luatex/generic/luatexko/luatexko-doc.tex
@@ -11,45 +11,47 @@
\documentclass[a4paper]{article}
\usepackage[hmargin=3.8cm]{geometry}
\usepackage[svgnames]{xcolor}
+\usepackage{luacolor}
\usepackage[hangul]{luatexko}
\directlua{
- fonts.protrusions.setups.notoserifcjk = {
- [171] = { 0.5, 0 },
- [187] = { 0, 0.5 },
- [1002965] = { 0, 0.5 },
- [1002968] = { 0.5, 0 },
- [1002969] = { 0, 0.5 },
- [1002970] = { 0, 1 },
- [1002971] = { 0, 0.5 },
- [1002972] = { 0, 1 },
- [1002974] = { 0, 0.5 },
- [1002975] = { 0, 0.5 },
- [1002976] = { 0, 0.5 },
- [1002985] = { 1, 0 },
- [1002986] = { 0, 1 },
- [1002988] = { 0.5, 0 },
- [1002989] = { 0, 0.5 },
+ local gidoffset = 0x120000
+ local notoserifcjkkr_hb = {
+ [171] = { 0.5, 0 }, % «
+ [187] = { 0, 0.5 }, % »
+ [62253+gidoffset] = { 0.5, 0 }, % (
+ [62254+gidoffset] = { 0, 0.5 }, % )
+ [62255+gidoffset] = { 0, 1 }, % ,
+ [62257+gidoffset] = { 0, 1 }, % .
+ [62259+gidoffset] = { 0, 0.5 }, % :
+ [62260+gidoffset] = { 0, 0.5 }, % ;
+ [62270+gidoffset] = { 1, 0 }, % ‘
+ [62271+gidoffset] = { 0, 1 }, % ’
+ [62273+gidoffset] = { 0.5, 0 }, % “
+ [62274+gidoffset] = { 0, 0.5 }, % ”
}
+ fonts.protrusions.setups.notoserifcjk = notoserifcjkkr_hb
}
+\defaultfontfeatures+{Renderer=OpenType}
+\setmainfont{Latin Modern Roman}[Expansion] % for hb tlig
\setmainhangulfont{Noto Serif CJK KR}[
Scale=0.98,
AutoFakeSlant,
Script=Hangul,
Language=Korean,
- LocalForms=On,
UprightFont=* Light,
BoldFont=* Bold,
InterLatinCJK=.125em,
Expansion, Protrusion=notoserifcjk,
]
+\setsansfont{Latin Modern Sans}
\setsanshangulfont{Noto Sans CJK KR}[
- \ifluahbtex Renderer=OpenType\fi,
Scale=0.98,
Script=Hangul,
Language=Korean,
UprightFont=* DemiLight,
BoldFont=* Bold,
InterLatinCJK=.125em,
+ CompressPunctuations,
]
\setmonofont{Inconsolatazi4}[
Scale=0.98,
@@ -72,6 +74,20 @@
{Size=9-, Font=* DemiLight},
},
]
+\newhangulfontfamily\verticalhangulfont{Noto Sans CJK KR}[
+ Renderer=Node,
+ Script=Hangul,
+ Language=Korean,
+ UprightFont=* DemiLight,
+ BoldFont=* Bold,
+ InterLatinCJK=.125em,
+ Vertical=Alternates,
+ RawFeature=vertical,
+ CompressPunctuations,
+ InterCharStretch=1pt,
+ CharRaise=3.6pt,
+ CharacterWidth=Full,
+]
\newhangulfontface\rubyfont{Noto Serif CJK KR Medium}[
Script=Hangul,
Language=Korean,
@@ -104,7 +120,7 @@
\author{Dohyun Kim \normalsize |<nomos at ktug org>| \and
Soojin Nam \normalsize |<jsunam at gmail com>| \and
\normalsize <\url{http://github.com/dohyunkim/luatexko}>}
-\date{Version 2.6\quad 2020/02/17}
+\date{Version 2.7\quad 2020/03/14}
\maketitle
\begin{quote}\small
@@ -256,9 +272,8 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\footnote{%
옛한글 식자를 위해서는 적어도 |Script=Hangul|
(플레인텍이라면 |script=hang|)을 주어야 한다.
- 옛한글이 아니더라도 한글을 쓴다면 이 옵션은 주는 것이 좋다.
- 또한 폰트가 지원한다면 |LocalForms=On| (플레인텍이라면 |+locl|)과
- 함께 쓰는 것이 권장된다. }\,%
+ 옛한글이 아니더라도 한글을 쓴다면 이 옵션과 |Language=Korean|
+ (플레인텍은 |language=KOR|)을 주는 것이 좋다. }\,%
\footnote{%
|PunctRaise|, |NoEmbedding| 옵션은 v2.0부터 더는 제공하지 않는다. }
@@ -266,9 +281,9 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\noindent\textbf{%
世솅〮宗조ᇰ御ᅌᅥᆼ〮製졩〮訓훈〮民민正져ᇰ〮音ᅙᅳᆷ
}\par
- 製졩〮ᄂᆞᆫ〮글〮지ᅀᅳᆯ〮씨〮니〮御ᅌᅥᆼ〮製졩〮ᄂᆞᆫ〮님〯금〮지〯ᅀᅳ샨〮그〮리라〮訓훈〮은〮ᄀᆞᄅᆞ칠〮씨〮오〮民%
- 민ᄋᆞᆫ〮百ᄇᆡᆨ〮姓셔ᇰ〮이〮오〮音ᅙᅳᆷ은〮소리〮니〮訓훈〮民%
- 민正져ᇰ〮音ᅙᅳᆷ은〮百ᄇᆡᆨ〮姓셔ᇰ〮ᄀᆞᄅᆞ치〮시논〮正져ᇰ〮ᄒᆞᆫ소리〮라〮
+ 製졩〮ᄂᆞᆫ〮글〮지ᅀᅳᆯ〮씨〮니〮御ᅌᅥᆼ〮製졩〮ᄂᆞᆫ〮님〯금〮지〯ᅀᅳ샨〮그〮리라〮%
+ 訓훈〮은〮ᄀᆞᄅᆞ칠〮씨〮오〮民민ᄋᆞᆫ〮百ᄇᆡᆨ〮姓셔ᇰ〮이〮오〮音ᅙᅳᆷ은〮소리〮니〮%
+ 訓훈〮民민正져ᇰ〮音ᅙᅳᆷ은〮百ᄇᆡᆨ〮姓셔ᇰ〮ᄀᆞᄅᆞ치〮시논〮正져ᇰ〮ᄒᆞᆫ소리〮라〮
\par\medskip
\noindent\textbf{%
國귁〮之징語ᅌᅥᆼ〯音ᅙᅳᆷ이〮
@@ -280,8 +295,9 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\noindent\textbf{%
異잉〮乎ᅘᅩᆼ中듀ᇰ國귁〮ᄒᆞ〮야〮
}\par
- 異잉〮ᄂᆞᆫ〮다ᄅᆞᆯ씨라乎ᅘᅩᆼᄂᆞᆫ〮아〯모〮그ᅌᅦᄒᆞ〮논겨〮체ᄡᅳ〮는字ᄍᆞᆼ〮ㅣ라〮中듀ᇰ國귁〮ᄋᆞᆫ〮%
- 皇ᅘᅪᇰ帝뎽〮겨〯신나라〮히니〮우〮리〮나랏〮常쌰ᇰ談땀애〮江가ᇰ南남이〮라〮ᄒᆞ〮ᄂᆞ〮니라〮
+ 異잉〮ᄂᆞᆫ〮다ᄅᆞᆯ씨라乎ᅘᅩᆼᄂᆞᆫ〮아〯모〮그ᅌᅦᄒᆞ〮논겨〮체ᄡᅳ〮는字ᄍᆞᆼ〮ㅣ라〮%
+ 中듀ᇰ國귁〮ᄋᆞᆫ〮皇ᅘᅪᇰ帝뎽〮겨〯신나라〮히니〮우〮리〮나랏〮常쌰ᇰ談땀애〮%
+ 江가ᇰ南남이〮라〮ᄒᆞ〮ᄂᆞ〮니라〮
\par
中듀ᇰ國귁〮에〮달아〮
}
@@ -289,10 +305,10 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\begin{figure}
\fboxsep=1em
\fbox{\parbox{\dimexpr\linewidth-2.1em\relax}{\sffamily
- \parindent1em
- \hunmintxt
-}}
-\caption{옛한글 조판 보기}\label{fig:yethangul}
+ \parindent1em
+ \hunmintxt
+ }}
+ \caption{옛한글 조판 보기}\label{fig:yethangul}
\end{figure}
\begin{description}
@@ -366,13 +382,14 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\item[Protrusion] \pkgkwd*{Protrusion}%
특정 글자가 행 끝에 왔을 때 판면 바깥으로 끌어내는
- 기능이다. Lua\TeX은 기본값으로 온점 반점 등을 완전 글자내밀기 한다.
+ 기능이다. \luatex은 기본값으로 온점 반점 등을 완전 글자내밀기 한다.
|Protrusion|은 |Protrusion=default|와 같은 뜻이다.%
\footnote{%
플레인텍에서는 |protrusion=default|. }
자신만의 설정을 만들어 지정할 수 있다.%
\footnote{%
- default 설정을 고치는 방법은 이를테면 다음과 같다:\par
+ default 설정을 고치는 방법은 이를테면 다음과 같다
+ (이 매뉴얼의 소스 앞부분을 참고하라):\par
\leftskip=3em\noindent
\cs{directlua{ fonts.protrusions.setups.default[0x201C] = { 1, 0 } }} }
@@ -387,23 +404,21 @@ fontspec의 글꼴 옵션 외에 \luatexko가 따로 제공하는 것들이 있
\section{고문헌}\label{sec:classic}
\def\analectstext{%
-子曰:「學而時習之,不亦說乎?有朋自遠方來,不亦樂乎?人不知而不慍,
-不亦君子乎?」\par
-有子曰:「其爲人也孝弟,而好犯上者,鮮矣!不好犯上,而好作亂者,未之有也!
-君子務本,本立而道生;孝弟也者,其爲仁之本與?」\par
+子曰:「學而時習之,不亦說乎?有朋自遠方來,不亦樂乎?人不知而不慍,不亦君子乎?」\par
+有子曰:「其爲人也孝弟,而好犯上者,鮮矣!不好犯上,而好作亂者,未之有也!君子務本,本立而道生;孝弟也者,其爲仁之本與?」\par
子曰:「巧言令色,鮮矣仁!」\par
-曾子曰:「吾日三省吾身:爲人謀,而不忠乎?與朋友交,而不信乎?傳,
-不習乎?」\par
+曾子曰:「吾日三省吾身:爲人謀,而不忠乎?與朋友交,而不信乎?傳,不習乎?」\par
子曰:「道千乘之國,敬事而信,節用而愛人,使民以時。」\par
子曰:「弟子入則孝,出則弟;謹而信,汎愛衆;而親仁,行有餘力,則以學文。」
}
\begin{figure}
\centering
\fbox{\parbox{37em}{\typesetclassic\sffamily
- \addhangulfontfeature{CompressPunctuations}
- \analectstext
+ \analectstext
}}
-\caption{고문헌 조판 보기. typesetclassic 환경을 이용했다.}\label{fig:gomun}
+ \caption{고문헌 조판 보기. typesetclassic 환경을 이용했다.
+ 글꼴에 |CompressPunctuations| 옵션을 주었다.
+ }\label{fig:gomun}
\end{figure}
고문헌 조판을 위해 \pkgkwd{typesetclassic} 환경을 제공한다.%
@@ -441,8 +456,9 @@ v2.0부터는 고문헌 조판에서 한글^^b7한자와 영문자가 붙어 나
|vmtx| 정보를 가지고 있지 않은 글꼴은 세로쓰기에 적합치 않은 글꼴이다.
|otfinfo -t <파일>| 명령으로 글꼴에 들어있는 테이블 정보를 알 수 있다. }\,%
\footnote{%
- 폰트 옵션 |Renderer=OpenType| 등(플레인텍에서는 |mode=harf| 옵션)을 주고
- |luahblatex|으로 컴파일하여 Harfbuzz 모듈을 이용하려는 경우 세로쓰기가
+ 폰트 옵션 |Renderer=OpenType| 또는 |Renderer=HarfBuzz| 등
+ (플레인텍에서는 |mode=harf| 옵션)을 주고
+ 컴파일하여 Harfbuzz 모듈을 이용하려는 경우 세로쓰기가
현재로서는 지원되지 않는다. 세로쓰기를 하려면 이 옵션을 빼고 디폴트 값인
|Renderer=Node| (플레인텍에서는 |mode=node|)를 사용하라.}
세로쓰기에서 |CharRaise| 옵션의 효과에 대해서는 제\ref{sec:fontoption}절을
@@ -452,26 +468,28 @@ v2.0부터는 고문헌 조판에서 한글^^b7한자와 영문자가 붙어 나
기본으로 셋팅되어 있다. 일종의 고문헌 조판으로 보는 것이다.
\begin{figure}
-\framebox[\linewidth]{\begin{vertical}{19.6em}\sffamily
- \addhangulfontfeature{Renderer=Node, Vertical=Alternates, RawFeature=vertical}
- \linespread{1.5}\selectfont
- \hunmintxt
-\end{vertical}}
-\caption{세로쓰기의 예. 박스 높이 |20em|을 지시했다.}\label{fig:vertical}
+ \framebox[\linewidth]{
+ \begin{vertical}{20em}
+ \linespread{1.5}\sffamily \verticalhangulfont
+ \hunmintxt
+ \end{vertical}
+ }
+ \caption{세로쓰기의 예. 박스 높이 |20em|을 지시했다.}\label{fig:vertical}
\end{figure}
\begin{figure}
-\framebox[\linewidth]{\begin{vertical}{18.62em}\sffamily
- \addhangulfontfeature{Renderer=Node, Vertical=Alternates, RemoveClassicSpaces,
- InterCharStretch=1pt, CompressPunctuations, RawFeature=vertical}
- \linespread{1.5}\selectfont
- \parindent=-1em \leftskip=1em
- \analectstext
-\end{vertical}}
-\caption{세로쓰기의 다른 예. 박스 높이 |19em|을 지시했다.
- 글꼴옵션으로 |RemoveClassicSpaces|, |CompressPunctuations|와 더불어
- |InterCharStretch=1pt|를 추가했다. 공백이 없는 문서는 자간늘이기 값을
- 넉넉하게 주는 것이 좋다.}\label{fig:vertical3}
+ \framebox[\linewidth]{
+ \begin{vertical}{19em}
+ \linespread{1.5}\sffamily \verticalhangulfont
+ \parindent0pt \everypar{\hangindent1em \hangafter1 }
+ \analectstext
+ \end{vertical}
+ }
+ \caption{세로쓰기의 다른 예. 박스 높이 |19em|을 지시했다.
+ 글꼴에 |CompressPunctuations|와 더불어
+ |InterCharStretch=1pt|를 옵션으로 주었다. 공백이 없는 문서는 자간늘이기 값을
+ 넉넉하게 주는 것이 좋다.
+ }\label{fig:vertical3}
\end{figure}
문서의 일부를 세로쓰기하려면
@@ -494,29 +512,31 @@ v2.0부터는 고문헌 조판에서 한글^^b7한자와 영문자가 붙어 나
\footnote{폰트 지시는 |horizontal| 환경 안에서 행하는 것을 권장한다.}
\begin{figure}
-\framebox[\linewidth]{\begin{vertical}{16.66em}\sffamily
- \addhangulfontfeature{Renderer=Node, Vertical=Alternates, CharRaise=3.2pt,
- CompressPunctuations, CharacterWidth=Full, RawFeature=vertical}
- \parindent-1em\leftskip1em \linespread{1.5}\selectfont
- \spaceskip=.5em plus.25em minus.125em
- \noindent 님의 침묵(The Silent Beloved)
- \smallbreak
- \hfil\hfil 한 용 운\hfil
- \bigbreak
- 님은 갓슴니다 아아 사랑하는나의님은 갓슴니다\par
- 푸른산빗을깨치고 단풍나무숩을향하야난 적은길을 거러서 참어떨치고
- 갓슴니다\par
- 黃金의꽃가티 굿고빗나든 옛盟誓는 차듸찬띠끌이되야서 한숨의 微風에
- 나러갓슴니다\par
- 날카로은 첫〈키쓰〉의追憶은 나의運命의指針을 돌너노코 뒷거름처서 사러젓슴니다\par
- \hellipsis\par
- 아아 님은갓지마는 나는 님을보내지 아니하얏슴니다\par
- 제곡조를못이기는 사랑의노래는 님의沈默을 휩싸고돔니다\par
-\end{vertical}}
-\caption{세로쓰기의 또 다른 예. 박스 높이 |17em|을 지시했다.
- Noto Sans CJK 글꼴의 세로쓰기 공백은 원래 |1em|,
- 즉 전각크기로 매우 크기 때문에, 여기서는 \cs{spaceskip} 명령을 이용하여
- 반각 크기로 강제했다.}\label{fig:vertical2}
+ \framebox[\linewidth]{
+ \begin{vertical}{17em}
+ \linespread{1.5}\sffamily \verticalhangulfont
+ \parindent0pt \everypar{\hangindent1em \hangafter1 }
+ \spaceskip=.5em plus.25em minus.125em
+ \quad 님의 침묵(The Silent Beloved)
+ \smallbreak
+ \hfil\hfil 한 용 운\hfil
+ \bigbreak
+ 님은 갓슴니다 아아 사랑하는나의님은 갓슴니다\par
+ 푸른산빗을깨치고 단풍나무숩을향하야난 적은길을 거러서 참어떨치고
+ 갓슴니다\par
+ 黃金의꽃가티 굿고빗나든 옛盟誓는 차듸찬띠끌이되야서 한숨의 微風에
+ 나러갓슴니다\par
+ 날카로은 첫〈키쓰〉의追憶은 나의運命의指針을 돌너노코 뒷거름처서 사러젓슴니다\par
+ \hellipsis\par
+ 아아 님은갓지마는 나는 님을보내지 아니하얏슴니다\par
+ 제곡조를못이기는 사랑의노래는 님의沈默을 휩싸고돔니다\par
+ \end{vertical}
+ }
+ \caption{세로쓰기의 또 다른 예. 박스 높이 |17em|을 지시했다.
+ Noto Sans CJK 글꼴의 세로쓰기 공백은 원래 |1em|,
+ 즉 전각크기로 매우 크기 때문에, 여기서는 \cs{spaceskip} 명령을 이용하여
+ 반각 크기로 강제했다.
+ }\label{fig:vertical2}
\end{figure}
\section{드러냄표}\label{sec:dotemph}