summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/xetex/xetexko/ChangeLog9
-rw-r--r--Master/texmf-dist/doc/xetex/xetexko/README53
-rw-r--r--Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.pdfbin222140 -> 230268 bytes
-rw-r--r--Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.tex250
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko-font.sty173
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko-hanging.sty2
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko-josa.sty2
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko-space.sty8
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko-vertical.sty2
-rw-r--r--Master/texmf-dist/tex/xetex/xetexko/xetexko.sty2
10 files changed, 274 insertions, 227 deletions
diff --git a/Master/texmf-dist/doc/xetex/xetexko/ChangeLog b/Master/texmf-dist/doc/xetex/xetexko/ChangeLog
index 3e66de6bfe4..d09b5ab1a82 100644
--- a/Master/texmf-dist/doc/xetex/xetexko/ChangeLog
+++ b/Master/texmf-dist/doc/xetex/xetexko/ChangeLog
@@ -1,3 +1,12 @@
+2014-06-17 Dohyun Kim <nomos at ktug org>
+
+ Version 2.7
+
+ * xetexko-font.sty: Ligatures=TeX is now default option for main/sans
+ hangul/hanja fonts. Requires fontspec v2.4
+ * xetexko-font.sty: new macros \defaulthangulfontfeatures and
+ \defaulthanjafontfeatures
+
2014-05-11 Dohyun Kim <nomos at ktug org>
Version 2.6
diff --git a/Master/texmf-dist/doc/xetex/xetexko/README b/Master/texmf-dist/doc/xetex/xetexko/README
index d6f22cdc972..ca94ae72fe1 100644
--- a/Master/texmf-dist/doc/xetex/xetexko/README
+++ b/Master/texmf-dist/doc/xetex/xetexko/README
@@ -1,17 +1,13 @@
-
-XeTeX-ko Package version 2.6 (2014/05/11)
+XeTeX-ko Package version 2.7 (2014/06/17)
=========================================
XeTeX-ko is a macro package for Xe(La)TeX which supports typesetting
Korean documents including Old Hangul texts. Though XeTeX itself
-already has basic facility to typeset Korean texts, it is necessary
-to provide some enhanced features for quality products adapted to
-Korean culture. Therefore, this package has enabled, to say a few
-among others, typesetting different character classes by different
-fonts, insertion of small spaces between Hangul characters, and
-raising or lowering latin punctuations after Hangul or Hanja.
+already has basic facility to typeset Korean texts, this package
+provides some enhanced features for quality products adapted to
+Korean culture.
-This package requires cjk-ko package for Hangul counters and captions.
+This package requires cjk-ko package for its full functionality.
License
@@ -60,8 +56,8 @@ If you are a LaTeX user, declaring
or
\usepackage{kotex}
-is sufficient to load the package, which will load fontspec package
-as well. Notice that kotex.sty is a file provided by cjk-ko package.
+is sufficient to load the package. Notice that kotex.sty is a file
+provided by cjk-ko package.
Under plain TeX:
@@ -89,23 +85,20 @@ Hangul Font Commands
\setmainhangulfont
\setsanshangulfont
\setmonohangulfont
-Same as \setmainfont et. al. provided by fontspec package, except that
+Same as \setmainfont etc. provided by fontspec package, except that
these affect only Hangul characters and related symbols.
\setmainhanjafont
\setsanshanjafont
\setmonohanjafont
-Same as \setmainfont et. al., except that these affect only Hanja
+Same as \setmainfont etc. except that these affect only Hanja
characters.
In like manner, these commands are available as well:
- \hangulfontspec
- \hanjafontspec
- \newhangulfontfamily
- \newhanjafontfamily
- \addhangulfontfeature
- \addhanjafontfeature
+ \hangulfontspec \hanjafontspec
+ \newhangulfontfamily \newhanjafontfamily
+ \addhangulfontfeature \addhanjafontfeature
If \fallbackhanjafont is defined, it is used as a final fallback font.
@@ -113,20 +106,14 @@ If \fallbackhanjafont is defined, it is used as a final fallback font.
Hangul Font Options
-------------------
- [hu=<dimen>]
-Set spacing between Hangul and Latin characters.
+ [InterLatinCJK=<dimen>]
+Set spacing between Hangul/Hanja and Latin characters.
- [interhchar=<dimen>]
+ [InterHangul=<dimen>]
Set spacing between Hangul characters.
- [lowerperiod=<dimen>]
-Lower latin fullstop after Hangul character.
-
- [quoteraise=<dimen>]
-Raise latin quotation marks.
-
- [postmathskip=<dimen>]
-Set spacing after inline math and before Hangul.
+ [PunctRaise=<dimen>]
+Raise Latin fullstop after Hangul character.
See xetexko-doc.pdf for more options.
@@ -140,16 +127,12 @@ Emphasise Hangul or Hanja by putting dot above.
\begin{vertical}{<dimen>}
\end{vertical}
This environment makes a vbox vertically typeset. <dimen> is an
-argument required to indicate the box height. For vertical typesetting
+argument to indicate the box height. For vertical typesetting
of entire document, use the command \verticaltypesetting instead.
\은 \는 \이 \가 \을 \를 \와 \과 \로 \으로 \라 \이라
Commands for automatic Josa selection. Unlike those of cjk-ko
package, these commands work correctly even after Hangul or Hanja.
- \jaso \gana \ojaso \ogana \pjaso \pgana \onum \pnum \oeng
- \peng \hnum \Hnum \hroman \hRoman \hNum \hanjanum
-Hangul counters provided by cjk-ko package.
-
*END of README*
diff --git a/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.pdf b/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.pdf
index fd1a04f7b51..7892e0bb1f3 100644
--- a/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.pdf
+++ b/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.tex b/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.tex
index e4440b38aec..1d7d43fe4a3 100644
--- a/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.tex
+++ b/Master/texmf-dist/doc/xetex/xetexko/xetexko-doc.tex
@@ -7,12 +7,13 @@
\documentclass[a4paper]{article}
\usepackage[hmargin=3.8cm]{geometry}
\usepackage[hangul]{xetexko}
-\setmainhangulfont[BoldFont=KoPubBatang_Pro Bold.otf,
- Ligatures=TeX]{KoPubBatang_Pro Light.otf}
-\setsanshangulfont[BoldFont=KoPubDotum_Pro Bold.otf,
- Ligatures=TeX]{KoPubDotum_Pro Medium.otf}
-\usepackage{xetexko-hanging}
-\usepackage{hologo,xcolor,ulem}
+\setmainhangulfont{KoPubBatang_Pro Light.otf}[
+ BoldFont=KoPubBatang_Pro Bold.otf,
+]
+\setsanshangulfont{KoPubDotum_Pro Medium.otf}[
+ BoldFont=KoPubDotum_Pro Bold.otf,
+]
+\usepackage{xetexko-hanging, hologo, xcolor, ulem}
\usepackage[bookmarksnumbered]{hyperref}
\edef\verbatim{\unexpanded\expandafter{\verbatim
@@ -27,9 +28,10 @@
\def\grayhrule{{\color{white!80!black}\hrule height2pt}}
\def\grayvrule{{\color{white!80!black}\vrule width 2pt}}
\newenvironment{plaintex}
- {\setbox0=\vbox\bgroup\hsize=\dimexpr\textwidth-12pt\relax\kern10pt\par\small}
+ {\setbox0=\vbox\bgroup\hsize=\dimexpr\textwidth-12pt\relax\kern10pt\par\small
+ \noindent}
{\par\vskip-\lastskip\kern10pt\egroup \par\medskip\par
- \dimen0=\dimexpr\pagegoal-\pagetotal\relax
+ \dimen0=\dimexpr\pagegoal-\pagetotal-1ex\relax
\ifdim\ht0<\dimen0
\hbox{\grayvrule\kern10pt\box0}%
\else
@@ -47,19 +49,19 @@
\def\hemph#1{\textsf{\bfseries #1}}
\def\hparen#1{{\small\hangulparens(#1)}}
\def\hparens#1{\leavevmode\unskip---{\small #1}---\ignorespaces}
-\parindent0pt
+
\begin{document}
\title{\xetexko\ 간단 매뉴얼}
\author{Dohyun Kim \normalsize <\texttt{nomos at ktug org}> \and
\normalsize <\url{http://github.com/dohyunkim/xetexko}>}
-\date{Version 2.6\quad 2014/05/11}
+\date{Version 2.7\quad 2014/06/17}
\maketitle
\begin{quote}\small
For a summary introduction in English,
please see \verb+README+ file in this package.
- \begin{itemize}\itemsep=0pt
+ \begin{itemize}\itemsep=0pt\linespread{1.3}\selectfont
\item[v2.0]---
\item 플레인텍에서 xetexko.tex이 아니라 xetexko.sty를 불러야 한다.
\item \verb+[unfonts]+ 옵션이 없으면 은글꼴을 자동으로 부르지 않는다.
@@ -69,15 +71,22 @@
추가했다.
\item[v2.2]---
\item 글꼴 옵션 \verb|charraise|를 추가했다.
- \item \verb|\fallbackhanjafont| 명령을 인식한다.
- \item \verb|\everyhangul|, \verb|\everyhanja| 명령이 추가되었다.
+ \item \cs{fallbackhanjafont} 명령을 인식한다.
+ \item \cs{everyhangul}, \cs{everyhanja} 명령이 추가되었다.
\item 하이픈 문자를 \hparen{직전 글꼴이 아니라} 라틴 글꼴에서 찾는
것이 기본값이 되었다.
\item[v2.4]---
\item Variation Selector를 이용한 한자 변형 글리프 접근을 허용한다.
+ \item[v2.7]---
+ \item main/sans hangul/hanja 글꼴에는 디폴트 옵션으로
+ \verb|Ligatures=TeX|이 주어진다.
+ \item \cs{defaulthangulfontfeatures} 및 \cs{defaulthanjafontfeatures}
+ 명령이 추가되었다.
\end{itemize}
\end{quote}
+\smallskip
+
\section{입력 인코딩}
입력은 원칙적으로 UTF-8으로 한다.
BOM (Byte Order Mark)은 있어도 좋고 없어도 좋다.
@@ -88,12 +97,12 @@ EUC-KR이나 CP949 입력도 지원하는데, 다음과 같은 선언이 있으
\end{verbatim}
\section{\XeTeX\ 자체 기능}
-\XeTeX 은 자체적으로 유니코드를 지원하므로 \xetexko 를 사용하지
-않아도 한글을 찍을 수 있다.
+\XeTeX 은 자체적으로 유니코드를 잘 지원하므로 \xetexko 를 사용하지
+않더라도 한글을 찍는 데 문제가 없다.
\begin{verbatim}
\usepackage{fontspec}
- \setmainfont[Ligatures=TeX]{UnBatang}
- \setsansfont[Ligatures=TeX]{UnDotum}
+ \setmainfont{UnBatang}
+ \setsansfont{UnDotum}
\setmonofont{UnTaza}
\XeTeXlinebreaklocale="ko"
\XeTeXlinebreakpenalty=50
@@ -104,13 +113,13 @@ EUC-KR이나 CP949 입력도 지원하는데, 다음과 같은 선언이 있으
기능을 포기해야 할 것이다.
\section{\xetexko\ 부르기}
-\xetexko\ 로드하기: \cs{usepackage\{xetexko\}}.
-
-이 명령은 fontspec 및 xunicode 패키지도 불러온다.
+\xetexko\ 로드하기: \cs{usepackage\{xetexko\}} 혹은 \cs{usepackage\{kotex\}}.
+이 명령으로 fontspec 및 xunicode 패키지도 함께 불려온다.
종전과 달리 xltxtra 패키지를 함께 부르지 않음을 주의할 것.
+fontspec에 옵션을 주려면 \xetexko를 부르기 전에 fontspec을 따로 로드하면 된다.
\begin{plaintex}
-플레인텍이라면 \verb|\input xetexko.sty| 명령으로 로드한다.
+플레인텍이라면 \verb|\input xetexko.sty|.
\end{plaintex}
패키지 옵션:
@@ -128,9 +137,9 @@ EUC-KR이나 CP949 입력도 지원하는데, 다음과 같은 선언이 있으
\section{글꼴 명령}
\begin{verbatim}
- \setmainfont [Ligatures=TeX]{Linux Libertine}
- \setmainhangulfont[Ligatures=TeX]{NanumMyeongjo}
- \setmainhanjafont [Ligatures=TeX]{UnBatang}
+ \setmainfont {Linux Libertine}
+ \setmainhangulfont{NanumMyeongjo}
+ \setmainhanjafont {UnBatang}
\end{verbatim}
각 명령의 의미는 이름이 뜻하는 그대로이며, fontspec 매뉴얼에 따라
설정한다. 한글폰트를 따로 지정하지 않으면 영문폰트가 한글에도 사용된다.
@@ -141,6 +150,8 @@ EUC-KR이나 CP949 입력도 지원하는데, 다음과 같은 선언이 있으
\setsansfont \setsanshangulfont \setsanshanjafont
\setmonofont \setmonohangulfont \setmonohanjafont
\end{verbatim}
+main/sans hangul/hanja 폰트에는 따로 \verb|Ligatures=TeX| 옵션을 지시하지
+않더라도 자동으로 주어진다.
\begin{plaintex}
플레인텍이라면 다음처럼 한다.
@@ -151,26 +162,25 @@ EUC-KR이나 CP949 입력도 지원하는데, 다음과 같은 선언이 있으
\end{verbatim}
\end{plaintex}
-한편 버전 2.2부터는 \cs{fallbackhanjafont}를 정의해두면
+버전 2.2부터는 \cs{fallbackhanjafont}를 정의해두면
\hemph{한자 글꼴에도 없는 한자}를
이 글꼴에서 찾아 식자한다. \verb|\newfontfamily| 명령으로 정의한다.
\section{글꼴 명령 (계속)}
\begin{verbatim}
- \hangulfontspec[Ligatures=TeX]{NanumGothic}
- \hanjafontspec [Ligatures=TeX]{UnGungseo}
+ \hangulfontspec{NanumGothic}[Ligatures=TeX]
+ \hanjafontspec {UnGungseo}[Ligatures=TeX]
\end{verbatim}
임시로 사용할 한글·한자 글꼴을 지시한다.
\cs{adhochangulfont}와 \cs{adhochanjafont}는 이들 명령의 다른 이름이다.
\begin{verbatim}
- \newhangulfontfamily\myhangul[Ligatures=TeX]{NanumGothic}
- \newhanjafontfamily \myhanja [Ligatures=TeX]{UnGungseo}
- \newhangulfontface \myhangul[Ligatures=TeX]{NanumGothic Bold}
- \newhanjafontface \myhanja [Ligatures=TeX]{UnDotumBold}
+ \newhangulfontfamily\myhangul{NanumGothic}[Ligatures=TeX]
+ \newhanjafontfamily \myhanja {UnGungseo}[Ligatures=TeX]
+ \newhangulfontface \myhangul{NanumGothic Bold}[Ligatures=TeX]
+ \newhanjafontface \myhanja {UnDotumBold}[Ligatures=TeX]
\end{verbatim}
-fontspec 패키지의 \verb+\newfontfamily+ \verb+\newfontface+ 명령을
-수정한 것이다.
+fontspec 패키지의 \verb+\newfontfamily+ \verb+\newfontface+ 명령에 해당한다.
\begin{verbatim}
\addhangulfontfeature{Color=FF0000,interhchar=-.1em}
@@ -181,25 +191,25 @@ fontspec과 마찬가지로 각 명령의 끝에 `s'를 붙여도 된다.
참고로, 한자와 한글을 같은 글꼴로 식자하고 싶을 때 글꼴 설정을
번거롭게 두 번 할 필요 없이 한글 글꼴만 설정한 뒤 간단히
- \cs{hanjabyhangulfont}를 선언하면 된다.
+\cs{hanjabyhangulfont}를 선언하면 된다.%
+\footnote{앞 절의 main/sans 글꼴 명령들과 달리 한글 폰트가 자동으로
+ 한자에도 적용되지 않는다는 말이다. 어쨌든 이미 한자 폰트가 지정돼 있는
+ 상태이기 때문이다.}
\section{기호 글꼴 명령}
라틴 문자나 CJK 기호를 어떤 폰트로 식자할 것인가를 사용자가 지정할 수 있다.
\begin{verbatim}
- \xetexkofontregime[quotes=latin, puncts=prevfont]{hangul}
+ \xetexkofontregime{hangul}[quotes=latin, puncts=prevfont]
\end{verbatim}
모든 라틴 문자와 CJK 기호들을 원칙적으로 한글 폰트로 식자하되,
따옴표는 라틴 폰트로 찍고 마침표 따위는 현재 폰트를 따라간다는 의미이다.
-옵션은 생략할 수 있다.
-
명령의 인자에는 latin, hangul, hanja, prevfont 중 하나가 올 수 있어서
각각 라틴 폰트, 한글 폰트, 한자 폰트로 식자하라는 뜻이며
-마지막의 prevfont는 \hemph{현재 활성화된 폰트를 그대로 받도록} 지시한다.
+마지막의 prevfont는 \hemph{현재 활성화된 폰트를 그대로 이어받도록} 지시한다.
현재 폰트가 직전 문자의 폰트가 아닐 수 있음에 주의할 것.
-옵션 키의 종류와 의미는 다음과 같으며 각 키 값은 인자와 마찬가지로
-latin, hangul, hanja, prevfont 가운데 하나를 허용한다.
+옵션 키의 종류와 의미는 다음과 같으며 각 키 값은 인자의 경우와 같다.
\begin{description}\itemsep0pt\hangulparens
\item[alphs] 라틴 알파벳 및 아래에 해당하지 않는 모든 라틴 문자
\item[nums] 라틴 숫자 \hparen{수식 제외}
@@ -210,16 +220,13 @@ latin, hangul, hanja, prevfont 가운데 하나를 허용한다.
\item[puncts] 마침표, 물음표, 느낌표, 쉼표
\item[cjksymbols] CJK 구두점, 괄호 및 상징기호
\end{description}
-
기본값은 다음 명령을 준 것과 동일하다. \hemph{CJK 기호가 한글폰트}로,
\hemph{하이픈은 라틴폰트}로
식자되게 기본값이 변경되었음에 유의할 것.
\begin{verbatim}
- \xetexkofontregime
- [ puncts=prevfont, colons=prevfont, cjksymbols=hangul ]
- {latin}
+ \xetexkofontregime {latin}%
+ [ puncts=prevfont, colons=prevfont, cjksymbols=hangul ]
\end{verbatim}
-
\begin{plaintex}
플레인텍에서는 다음 명령을 사용한다. \LaTeX에서도 쓸 수 있다.
\begin{verbatim}
@@ -238,60 +245,57 @@ latin, hangul, hanja, prevfont 가운데 하나를 허용한다.
\end{verbatim}
\end{plaintex}
-\section{간격 조정}
-한글 관련 미세 간격 조정은 다음과 같이 폰트 옵션으로 지시한다.
+\section{간격 조정 옵션}
+\dotemph{고정폭 글꼴을 제외한} 한글·한자 글꼴 명령에 미세 간격 옵션을
+쓸 수 있다.
\begin{verbatim}
- \setsanshangulfont[interhchar=-.04em]{NanumGothic}
+ \setsanshangulfont{NanumGothic}[interhchar=-.04em]
\end{verbatim}
이 때 나눔고딕 글꼴에만 한글 마이너스 자간이 작동한다.
-\dotemph{고정폭 글꼴을 제외한} 한글·한자 글꼴
-명령에 이런 옵션을 쓸 수 있다.
-허용되는 옵션은 다음과 같다. 각 항목의 길이값은 디폴트값을 뜻한다.
+허용되는 옵션은 다음과 같으며 기본값은 다른 언급이 없는 한 모두 0pt이다.
\begin{description}\itemsep0pt
\item[hu, InterLatinCJK]
영문자와 한글 사이 간격을 지시한다.
- 영문 괄호와 한글 사이 간격은 그 두 배이다. 0.06em.
+ 영문 괄호와 한글 사이 간격은 그 두 배이다. 기본값 0.06em.
\item[interhchar, InterHangul]
{\addhangulfontfeature{interhchar=0.3em} 한글 자간을} 지시한다.%
\footnote{한자 자간 옵션은 제공하지 않는다.
혹시 한자 자간을 조절하고 싶다면 \cs{XKinterhanjabreak}을 재정의하라.
참고로 한글 자간을 조절하는 저수준 명령은 \cs{XKinterhangulbreak} 이다.}
- 0pt.
\item[charraise, CharRaise]
- 버전 2.2의 새로운 옵션으로
- 글자의 \hemph{\addhangulfontfeature{charraise=.5ex}수직 위치}를 조절한다.
- 다른 글꼴 관련 효과와 충돌할 수 있어 주의를 요한다. 0pt.
+ 글자의 {\addhangulfontfeature{charraise=.5ex}수직 위치}를 조절한다.
+ 다른 글꼴 관련 효과와 충돌할 수 있어 주의를 요한다.
\item[lowerperiod, PunctRaise]
\verb+lowerperiod+는 CJK 문자 직후의 마침표를 아래로 끌어내리는
{\addhangulfontfeature{lowerperiod=.5ex}정도를 지시한다.
- 반대로 \verb+PunctRaise+ 옵션은 끌어올리는 정도를 지시한다. 0pt.}
+ 반대로 \verb+PunctRaise+ 옵션은 끌어올리는 정도를 지시한다.}
\item[lowerquestion]
- CJK 문자 직후의 물음표를 아래로 끌어내리는 정도. 0pt.
+ CJK 문자 직후의 물음표를 아래로 끌어내리는 정도.
\item[lowerexclamation]
- CJK 문자 직후의 느낌표를 아래로 끌어내리는 정도. 0pt.
+ CJK 문자 직후의 느낌표를 아래로 끌어내리는 정도.
\item[lowercomma]
- CJK 문자 직후의 쉼표를 아래로 끌어내리는 정도. 0pt.
+ CJK 문자 직후의 쉼표를 아래로 끌어내리는 정도.
\item[preperiodkern]
{\addhangulfontfeature{preperiodkern=1ex}CJK 문자 직후의 마침표 앞에
- 들어가는 간격. 0pt.}
+ 들어가는 간격.}
\item[postperiodkern]
{\addhangulfontfeature{postperiodkern=1ex}CJK 문자 직후의 마침표 뒤에
- 들어가는 간격. 0pt.}
+ 들어가는 간격.}
\item[prequestionkern]
- CJK 문자 직후의 물음표 앞에 들어가는 간격. 0pt.
+ CJK 문자 직후의 물음표 앞에 들어가는 간격.
\item[postquestionkern]
- CJK 문자 직후의 물음표 뒤에 들어가는 간격. 0pt.
+ CJK 문자 직후의 물음표 뒤에 들어가는 간격.
\item[preexclamationkern]
- CJK 문자 직후의 느낌표 앞에 들어가는 간격. 0pt.
+ CJK 문자 직후의 느낌표 앞에 들어가는 간격.
\item[postexclamationkern]
- CJK 문자 직후의 느낌표 뒤에 들어가는 간격. 0pt.
+ CJK 문자 직후의 느낌표 뒤에 들어가는 간격.
\item[precommakern]
- CJK 문자 직후의 쉼표 앞에 들어가는 간격. 0pt.
+ CJK 문자 직후의 쉼표 앞에 들어가는 간격.
\item[postcommakern]
- CJK 문자 직후의 쉼표 뒤에 들어가는 간격. 0pt.
+ CJK 문자 직후의 쉼표 뒤에 들어가는 간격.
\item[quoteraise]
- 영문 인용부호\hparens{아스키문자로 입력하는 것을 말함}를
- 위로 끌어올리는 정도. 0pt.
+ 영문 인용부호\hparens{아스키문자로 입력하는 것}를
+ 위로 끌어올리는 정도.
\item[quotewidth]
영문 인용부호의 폭. 기본값은 natural width.
\item[postmathskip]
@@ -322,13 +326,24 @@ latin, hangul, hanja, prevfont 가운데 하나를 허용한다.
\end{verbatim}
\end{plaintex}
+\LaTeX 에서는 한글·한자 글꼴의 기본 옵션을 지정할 수 있다.
+\begin{verbatim}
+ \defaulthangulfontfeatures {hu=.1em, interhchar=-.1em}
+ \defaulthangulfontfeatures+{hu=.1em, interhchar=-.1em}
+ \defaulthanjafontfeatures {hu=.1em}
+ \defaulthanjafontfeatures +{hu=.1em}
+\end{verbatim}
+fontspec 패키지의 \cs{defaultfontfeatures}에 상응하는 것이지만,
+오직 이 절에서 언급한 옵션들만 인식하며 나머지는 무시된다는 점을 유의하라.
+
+
\section{그밖의 명령들}
\begin{description}
\item[\cs{everyhangul}, \cs{everyhanja}]
한글 또는 한자에 대해 글자마다 지시한 명령을 수행한다. 예컨대
\verb|\everyhangul{\fbox{#1}}| 명령은 모든
{\everyhangul{\fbox{#1}}\fboxsep=1pt 한글 주위에 박스}를
- 두른다. 2.2 버전의 새로운 명령. 다른 글꼴 옵션과 충돌할 수 있으므로
+ 두른다. 다른 글꼴 옵션과 충돌할 수 있으므로
주의를 요한다.
\item[\cs{disablekoreanfonts}]
@@ -343,7 +358,6 @@ latin, hangul, hanja, prevfont 가운데 하나를 허용한다.
옛한글 자모에 한해서 자동조사 기능을 끈다.
옛한글 자모에 영향을 주는 \verb+Mapping+ 글꼴 옵션을 사용해야 한다면
이 명령을 선언해두어야 정상 작동한다.
-버전 2.1에서 새롭게 추가된 명령이다.
\item[\cs{disablecjksymbolspacing}]
CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
@@ -359,9 +373,8 @@ CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
위 명령과 마찬가지로 모든 미세간격을 금지할 뿐만 아니라 CJK 글자 사이의
줄바꿈까지도 먹지 않게 한다.
일부 고급 오픈타입 기능을 사용하기 위해서 이 명령이 필요할 때가 있다.
-이를테면, interhchar 옵션에 의해 자간을 주면 한글 리거쳐가
-동작하지 않게 되거니와 이 명령을 선언하면 문제가
-해결된다.\footnote{만약 사용자가
+이를테면, 폰트가 지원하는 한글 리거쳐가 동작하지 않을 때 이 명령을
+선언하면 문제가 해결된다.\footnote{만약 사용자가
{\ttfamily\string\XeTeXlinebreaklocale}도 선언했다면
{\ttfamily\string\XeTeXlinebreaklocale""} 명령도 요구된다.
이 원시명령은 그룹 내에서 쓰더라도 항상 전역적인 효과를 가짐을 유의하라}
@@ -369,9 +382,15 @@ CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
\section{옛한글}
+옛한글을 사용하기 위해선 \verb|Script=Hangul| 옵션을 주는 것으로 족하다.
+옛한글 식자는 고급 오픈타입 기능을 이용하므로
+폰트가 이런 기능을 제공해야만 가능한 일이다.\footnote{%
+\today\ 현재, 이런 기능을 제공하는 폰트로는 윈도즈~8에 번들된 맑은고딕이
+있으며 공개폰트로는 은바탕과 함초롬~LVT 글꼴이 있다.}
+
\begin{figure}
\begin{example}
- \hangulfontspec[Script=Hangul]{HCR Dotum LVT}
+ \hangulfontspec{HCR Dotum LVT}[Script=Hangul]
\hanjabyhangulfont%\parindent1em
\obeylines\leftskip10em
뎨 가ᄂᆞᆫ 뎌 각시 본 듯도 ᄒᆞᆫ뎌이고.
@@ -388,14 +407,8 @@ CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
\caption{옛한글 조판 보기}\label{fig:yethangul}
\end{figure}
-옛한글을 사용하기 위해선 \verb|Script=Hangul| 옵션을 주는 것으로 족하다.
-옛한글 식자는 고급 오픈타입 기능을 이용하므로
-폰트가 이런 기능을 제공해야만 가능한 일이다.\footnote{%
-\today\ 현재, 이런 기능을 제공하는 폰트로는 마이크로소프트 오피스 플러스팩이
-제공하는 옛한글 글꼴과 윈도즈~8에 번들된 맑은고딕이 있으며
-공개폰트로는 은바탕과 KTUG판 함초롬 글꼴이 있다.}
\begin{verbatim}
- \setmainhangulfont[ Script=Hangul ]{Malgun Gothic}
+ \setmainhangulfont{Malgun Gothic}[ Script=Hangul ]
\end{verbatim}
\begin{plaintex}
플레인텍이라면,
@@ -406,10 +419,25 @@ CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
\section{세로쓰기}
+세로쓰기를 위한 글꼴 지정은 다음과 같다.
+역시 고급 오픈타입 기능을 이용하는 것이므로
+폰트가 이를 지원해야 한다.%
+\footnote{만일 폰트의 세로쓰기 글자폭이 가로쓰기와 다르다면
+ \cs{verticalem=1.05em} 같은 선언을 미리 해두는 게 좋다.}
+\begin{verbatim}
+ \setmainhangulfont{Adobe Myungjo Std}[ Vertical=RotatedGlyphs ]
+\end{verbatim}
+문서 전체를 세로쓰기할 때 \cs{verticaltypesetting}을 선언하면
+면주는 그대로 두고 본문만 세로쓰기한다.\footnote{당연히 면주의 글꼴에는
+ \texttt{Vertical} 옵션이 없어야 할 것이다.
+ 면주 글꼴을 따로 지정하는 것은 사용자의 몫이다. }
+문서의 일부를 세로쓰기 하려면 vertical 환경을 이용한다.
+vertical 환경의 인자는 세로쓰기 박스의 세로 길이이다.
+보통 그 뒤에 세로쓰기에 사용할 글꼴 명령이 온다.
\begin{figure}
\begin{example}
\hfil\begin{vertical}{16em}
- \hangulfontspec[Vertical=RotatedGlyphs]{AdobeMyungjoStd-Medium.otf}
+ \hangulfontspec{AdobeMyungjoStd-Medium.otf}[Vertical=RotatedGlyphs]
\hangulmarks \hanjabyhangulfont \parindent-1em\leftskip1em
\noindent 님의 침묵 {\small(The Silent Beloved)}
\smallbreak
@@ -427,33 +455,17 @@ CJK 구두점의 폭을 0.5em으로 강제설정하는 것을 방지한다.
\caption{세로쓰기 보기}\label{fig:vertical}
\end{figure}
-세로쓰기를 위한 글꼴 지정은 다음과 같다.
-역시 고급 오픈타입 기능을 이용하는 것이므로
-폰트가 이를 지원해야 한다.\footnote{%
-만일 폰트의 세로쓰기 em 박스 크기가 가로쓰기와 다르다면
-\cs{verticalem=1.05em}과 같은 선언을 미리 해두는 것이 좋다.}
-\begin{verbatim}
- \setmainhangulfont[ Vertical=RotatedGlyphs ]{Adobe Myungjo Std}
-\end{verbatim}
-문서 전체를 세로쓰기할 때 \cs{verticaltypesetting}을 선언하면
-면주는 그대로 두고 본문만 세로쓰기한다.\footnote{당연히 면주의 글꼴은
-\texttt{Vertical} 옵션이 없는 것이라야 할 것이다.
-면주 글꼴을 따로 지정하는 것은 사용자의 몫이다. }
-문서의 일부를 세로쓰기 하려면 vertical 환경을 이용한다.
-vertical 환경의 인자는 세로쓰기 박스의 세로 길이이다.
-보통 그 뒤에 세로쓰기에 사용할 글꼴 명령이 온다.
\begin{verbatim}
\begin{vertical}{12em}
- \hangulfontspec[ Vertical=RotatedGlyphs ]{Adobe Myungjo Std}
+ \hangulfontspec{Adobe Myungjo Std}[ Vertical=RotatedGlyphs ]
세로쓰기로 식자할 부분
\end{vertical}
\end{verbatim}
-
혹시 세로로 식자되지 않는 라틴문자 부분이 있다면
베이스라인이 한글과 어울리지 않을 수 있다. 이를 교정하려면
-\verb|charraise| 옵션을 한글 폰트에 준다.
-이 방법이 여의치 않으면 라틴문자 부분을 \cs{vertlatin} 명령으로 감쌀 수도
-있는데, 이때 인자가 박스로 처리되어 그 안에서 줄바꿈이 일어나지 않는다.
+\verb|charraise| 옵션을 한글 폰트에 준다.\footnote{%
+ 이 방법이 여의치 않으면 라틴문자 부분을 \cs{vertlatin} 명령으로 감쌀 수도
+ 있는데, 이때 인자가 박스로 처리되어 그 안에서 줄바꿈이 일어나지 않는다.}
\medbreak
\begin{plaintex}
플레인텍이라면,
@@ -464,30 +476,34 @@ vertical 환경의 인자는 세로쓰기 박스의 세로 길이이다.
\end{verbatim}
\end{plaintex}
-\section{일본어·중국어·고문헌}
+\section{고문헌·일본어·중국어}
+
+띄어쓰기가 없는 옛문헌이나 일본어 단락 따위를 삽입할 때
+japanese 혹은 chinese 환경을 선언하는 것이 좋다.
+들여쓰기\footnote {들여쓰기 기본값은 japanese는 1em 이고 chinese는 2em 이다.}
+및 자간 조절이 자동으로 이루어지며
+사용자가 입력한 불필요한 공백도 없애준다.
+Schinese 환경은 chinese의 다른 이름이다.
+Tchinese도 제공하는데 중국어 번체 글꼴을 사용한다면 이 환경을 이용하라.
\begin{figure}
- \begin{example}
+ \begin{example}\linespread{1.3}
\hanjafontspec{STFangsong}\chinese
子曰:「學而時習之,不亦說乎?有朋自遠方來,不亦樂乎?人不知而不慍,不亦君子乎?」
-有子曰:「其為人也孝弟,而好犯上者,鮮矣!不好犯上,而好作亂者,未之有也!君子務本,本立而道生;孝弟也者,其為仁之本歟?」
+有子曰:「其爲人也孝弟,而好犯上者,鮮矣!不好犯上,而好作亂者,未之有也!君子務本,本立而道生;孝弟也者,其爲仁之本與?」
子曰:「巧言令色,鮮矣仁!」
-曾子曰:「吾日三省吾身:為人謀,而不忠乎?與朋友交,而不信乎?傳,不習乎?」
+曾子曰:「吾日三省吾身:爲人謀,而不忠乎?與朋友交,而不信乎?傳,不習乎?」
+
+子曰:「道千乘之國,敬事而信,節用而愛人,使民以時。」
+
+子曰:「弟子入則孝,出則弟;謹而信,汎愛衆;而親仁,行有餘力,則以學文。」
\end{example}
\caption{고문헌 조판 보기}\label{fig:ancientdoc}
\end{figure}
-띄어쓰기가 없는 옛문헌이나 일본어 단락 따위를 삽입할 때
-japanese 혹은 chinese 환경을 선언하는 것이 좋다.
-들여쓰기\footnote {들여쓰기 기본값은 japanese는 1em 이고 chinese는 2em 이다.}
-및 자간 조절이 자동으로 이루어지며
-사용자가 입력한 불필요한 공백도 없애준다.
-Schinese 환경은 chinese의 다른 이름이다.
-Tchinese도 제공하는데 중국어 번체 글꼴을 사용한다면 이 환경을 이용하라.
-
\cs{inhibitglue} 명령은 일본어 등 환경에서 가끔 유용한데,
해당 지점에 자동 삽입되는 공백을 영(zero)으로
만들어준다.
@@ -582,7 +598,7 @@ microtype 패키지를 로드하는 것으로도 유사한 결과를 얻을 수
플레인텍에서는 패키지 로드 후 사용자가 \cs{xetexkoulemsupport}
명령을 내려주어야 한다.
\end{plaintex}
-\hfill \fboxsep=-\fboxrule \fbox{\vbox to1em{\hbox to1em{\hss}\vss}}
+%\hfill \fboxsep=-\fboxrule \fbox{\vbox to1em{\hbox to1em{\hss}\vss}}
\end{document}
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko-font.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko-font.sty
index a959de576e4..bdca890d47a 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko-font.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko-font.sty
@@ -10,10 +10,10 @@
% and version 1.3c or later is part of all distributions of LaTeX
% version 2006/05/20 or later.
-\ProvidesPackage{xetexko-font}[2014/05/11 v2.6 Font commands for XeTeX-ko]
+\ProvidesPackage{xetexko-font}[2014/06/17 v2.7 LaTeX Font commands for XeTeX-ko]
\let\xetexko@f@size\f@size
-\RequirePackage{fontspec}
+\RequirePackage{fontspec}[2014/05/25]
\let\f@size\xetexko@f@size
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -89,98 +89,103 @@
{ \__xtxko_add_font_opt:Nn \xetexkoquotewidth {#1} } ,
charraise .code:n =
{ \__xtxko_add_font_opt:Nn \xetexkocharraise {#1} } ,
- InterLatinCJK .code:n =
- { \keys_set:nn { xtxko-font } { hu = {#1} } } ,
- InterHangul .code:n =
- { \keys_set:nn { xtxko-font } { interhchar = {#1} } } ,
- PunctRaise .code:n =
- { \keys_set:nn { xtxko-font } { lowerperiod = { \dim_eval:n {-#1} } } } ,
- CharRaise .code:n =
- { \keys_set:nn { xtxko-font } { charraise = {#1} } } ,
+ InterLatinCJK .meta:n = { hu = {#1} } ,
+ InterHangul .meta:n = { interhchar = {#1} } ,
+ PunctRaise .meta:n = { lowerperiod = { \dim_eval:n {-#1} } } ,
+ CharRaise .meta:n = { charraise = {#1} } ,
}
\tl_new:N \l_xtxko_rem_tl
-\cs_new:Nn \__xtxko_assign_font_opts:Nn
+\tl_set_eq:NN \l_xtxko_hangul_font_opts_init_tl \l_xtxko_font_opts_init_tl
+\cs_new:Nn \__xtxko_hangul_assign_font_opts:n
{
- \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_font_opts_init_tl
- \keys_set_known:nxN { xtxko-font } {#2} \l_xtxko_rem_tl
- \tl_set_eq:NN #1 \l_xtxko_font_opts_tl
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_hangul_font_opts_init_tl
+ \keys_set_known:nxN { xtxko-font } {#1} \l_xtxko_rem_tl
+ }
+\tl_set_eq:NN \l_xtxko_hanja_font_opts_init_tl \l_xtxko_font_opts_init_tl
+\cs_new:Nn \__xtxko_hanja_assign_font_opts:n
+ {
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_hanja_font_opts_init_tl
+ \keys_set_known:nxN { xtxko-font } {#1} \l_xtxko_rem_tl
}
-\cs_generate_variant:Nn \__xtxko_assign_font_opts:Nn { c }
%%%%%%%%%%%%%%%%%%%%
% user font commands
-\DeclareDocumentCommand \setmainhangulfont { O{} m }
+\DeclareDocumentCommand \setmainhangulfont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@main@hangul@options {#1}
- \newfontfamily \XK@main@hangul@font [\l_xtxko_rem_tl] {#2}
- \tl_set:Nn \kormainfont {\XK@main@hangul@font \XK@main@hangul@options}
+ \__xtxko_hangul_assign_font_opts:n {#1,#3}
+ \newfontfamily \kormainfont [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \kormainfont \l_xtxko_font_opts_tl
\ignorespaces
}
-\DeclareDocumentCommand \setsanshangulfont { O{} m }
+\DeclareDocumentCommand \setsanshangulfont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@sans@hangul@options {#1}
- \newfontfamily \XK@sans@hangul@font [\l_xtxko_rem_tl] {#2}
- \tl_set:Nn \korsansfont {\XK@sans@hangul@font \XK@sans@hangul@options}
+ \__xtxko_hangul_assign_font_opts:n {#1,#3}
+ \newfontfamily \korsansfont [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \korsansfont \l_xtxko_font_opts_tl
\ignorespaces
}
-\DeclareDocumentCommand \setmonohangulfont { O{} m }
+\DeclareDocumentCommand \setmonohangulfont { O{} m O{} }
{
- \newfontfamily \kormonofont [#1] {#2}
+ \newfontfamily \kormonofont [#1,#3] {#2}
\ignorespaces
}
-\DeclareDocumentCommand \setmainhanjafont { O{} m }
+\DeclareDocumentCommand \setmainhanjafont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@main@hanja@options {#1}
- \newfontfamily \XK@main@hanja@font [\l_xtxko_rem_tl] {#2}
- \tl_set:Nn \hnjmainfont {\XK@main@hanja@font \XK@main@hanja@options}
+ \__xtxko_hanja_assign_font_opts:n {#1,#3}
+ \newfontfamily \hnjmainfont [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \hnjmainfont \l_xtxko_font_opts_tl
\ignorespaces
}
-\DeclareDocumentCommand \setsanshanjafont { O{} m }
+\DeclareDocumentCommand \setsanshanjafont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@sans@hanja@options {#1}
- \newfontfamily \XK@sans@hanja@font [\l_xtxko_rem_tl] {#2}
- \tl_set:Nn \hnjsansfont {\XK@sans@hanja@font \XK@sans@hanja@options}
+ \__xtxko_hanja_assign_font_opts:n {#1,#3}
+ \newfontfamily \hnjsansfont [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \hnjsansfont \l_xtxko_font_opts_tl
\ignorespaces
}
-\DeclareDocumentCommand \setmonohanjafont { O{} m }
+\DeclareDocumentCommand \setmonohanjafont { O{} m O{} }
{
- \newfontfamily \hnjmonofont [#1] {#2}
+ \newfontfamily \hnjmonofont [#1,#3] {#2}
\ignorespaces
}
%% {hangul,hanja}fontspec = adhoc{hangul,hanja}font
-\DeclareDocumentCommand \adhochangulfont { O{} m }
+\DeclareDocumentCommand \adhochangulfont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@adhoc@hangul@options {#1}
+ \__xtxko_hangul_assign_font_opts:n {#1,#3}
\newfontfamily \XK@adhoc@hangul@font [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \XK@adhoc@hangul@font \l_xtxko_font_opts_tl
\tl_set:Nn \XKhangulfont
{
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_one
- \XK@adhoc@hangul@font \XK@adhoc@hangul@options
+ \XK@adhoc@hangul@font
\XK@storecjkfont
}
\ignorespaces
}
\cs_set_eq:NN \hangulfontspec \adhochangulfont
-\DeclareDocumentCommand \adhochanjafont { O{} m }
+\DeclareDocumentCommand \adhochanjafont { O{} m O{} }
{
- \__xtxko_assign_font_opts:Nn \XK@adhoc@hanja@options {#1}
+ \__xtxko_hanja_assign_font_opts:n {#1,#3}
\newfontfamily \XK@adhoc@hanja@font [\l_xtxko_rem_tl] {#2}
+ \tl_put_right:NV \XK@adhoc@hanja@font \l_xtxko_font_opts_tl
\tl_set:Nn \XKhanjafont
{
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_two
- \XK@adhoc@hanja@font \XK@adhoc@hanja@options
+ \XK@adhoc@hanja@font
\XK@storecjkfont
}
\ignorespaces
}
\cs_set_eq:NN \hanjafontspec \adhochanjafont
%% new{hangul,hanja}font{family,face}
-\DeclareDocumentCommand \newhangulfontfamily { m O{} m }
+\DeclareDocumentCommand \newhangulfontfamily { m O{} m O{} }
{
- \__xtxko_assign_font_opts:cn { XK@newfont@options \token_to_str:N #1 } {#2}
- \exp_after:wN \newfontfamily
- \cs:w XK@newfont@family \token_to_str:N #1 \cs_end: [\l_xtxko_rem_tl] {#3}
+ \__xtxko_hangul_assign_font_opts:n {#2,#4}
+ \exp_args:Nc \newfontfamily { XK@newfont@family \token_to_str:N #1 }
+ [\l_xtxko_rem_tl] {#3}
+ \tl_put_right:cV { XK@newfont@family \token_to_str:N #1 }
+ \l_xtxko_font_opts_tl
\DeclareRobustCommand #1
{
\tl_set:Nn \XKhangulfont
@@ -188,16 +193,17 @@
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_one
\use:c { XK@newfont@family \token_to_str:N #1 }
- \use:c { XK@newfont@options \token_to_str:N #1 }
\XK@storecjkfont
}
}
}
-\DeclareDocumentCommand \newhanjafontfamily { m O{} m }
+\DeclareDocumentCommand \newhanjafontfamily { m O{} m O{} }
{
- \__xtxko_assign_font_opts:cn { XK@newfont@options \token_to_str:N #1 } {#2}
- \exp_after:wN \newfontfamily
- \cs:w XK@newfont@family \token_to_str:N #1 \cs_end: [\l_xtxko_rem_tl] {#3}
+ \__xtxko_hanja_assign_font_opts:n {#2,#4}
+ \exp_args:Nc \newfontfamily { XK@newfont@family \token_to_str:N #1 }
+ [\l_xtxko_rem_tl] {#3}
+ \tl_put_right:cV { XK@newfont@family \token_to_str:N #1 }
+ \l_xtxko_font_opts_tl
\DeclareRobustCommand #1
{
\tl_set:Nn \XKhanjafont
@@ -205,16 +211,17 @@
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_two
\use:c { XK@newfont@family \token_to_str:N #1 }
- \use:c { XK@newfont@options \token_to_str:N #1 }
\XK@storecjkfont
}
}
}
-\DeclareDocumentCommand \newhangulfontface { m O{} m }
+\DeclareDocumentCommand \newhangulfontface { m O{} m O{} }
{
- \__xtxko_assign_font_opts:cn { XK@newfont@options \token_to_str:N #1 } {#2}
- \exp_after:wN \newfontface
- \cs:w XK@newfont@family \token_to_str:N #1 \cs_end: [\l_xtxko_rem_tl] {#3}
+ \__xtxko_hangul_assign_font_opts:n {#2,#4}
+ \exp_args:Nc \newfontface { XK@newfont@family \token_to_str:N #1 }
+ [\l_xtxko_rem_tl] {#3}
+ \tl_put_right:cV { XK@newfont@family \token_to_str:N #1 }
+ \l_xtxko_font_opts_tl
\DeclareRobustCommand #1
{
\tl_set:Nn \XKhangulfont
@@ -222,16 +229,17 @@
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_one
\use:c { XK@newfont@family \token_to_str:N #1 }
- \use:c { XK@newfont@options \token_to_str:N #1 }
\XK@storecjkfont
}
}
}
-\DeclareDocumentCommand \newhanjafontface { m O{} m }
+\DeclareDocumentCommand \newhanjafontface { m O{} m O{} }
{
- \__xtxko_assign_font_opts:cn { XK@newfont@options \token_to_str:N #1 } {#2}
- \exp_after:wN \newfontface
- \cs:w XK@newfont@family \token_to_str:N #1 \cs_end: [\l_xtxko_rem_tl] {#3}
+ \__xtxko_hanja_assign_font_opts:n {#2,#4}
+ \exp_args:Nc \newfontface { XK@newfont@family \token_to_str:N #1 }
+ [\l_xtxko_rem_tl] {#3}
+ \tl_put_right:cV { XK@newfont@family \token_to_str:N #1 }
+ \l_xtxko_font_opts_tl
\DeclareRobustCommand #1
{
\tl_set:Nn \XKhanjafont
@@ -239,7 +247,6 @@
\XK@storeltnfont
\tl_set_eq:NN \XKcurrentfont \c_two
\use:c { XK@newfont@family \token_to_str:N #1 }
- \use:c { XK@newfont@options \token_to_str:N #1 }
\XK@storecjkfont
}
}
@@ -257,8 +264,7 @@
\group_end:
\exp_not:N \tl_set:Nn \exp_not:N \XKhangulfont
{
- \exp_not:N \XK@storeltnfont
- \exp_not:N \tl_set_eq:NN \exp_not:N \XKcurrentfont \exp_not:N \c_one
+ \exp_not:V \XKhangulfont
\exp_not:N \fontfamily { \f@family } \exp_not:N \selectfont
\exp_not:V \l_xtxko_font_opts_tl
\exp_not:N \XK@storecjkfont
@@ -279,8 +285,7 @@
\group_end:
\exp_not:N \tl_set:Nn \exp_not:N \XKhanjafont
{
- \exp_not:N \XK@storeltnfont
- \exp_not:N \tl_set_eq:NN \exp_not:N \XKcurrentfont \exp_not:N \c_two
+ \exp_not:V \XKhanjafont
\exp_not:N \fontfamily { \f@family } \exp_not:N \selectfont
\exp_not:V \l_xtxko_font_opts_tl
\exp_not:N \XK@storecjkfont
@@ -289,10 +294,40 @@
\ignorespaces
}
\cs_set_eq:NN \addhanjafontfeatures \addhanjafontfeature
+%% default font features
+\defaultfontfeatures
+ [
+ \kormainfont, \korsansfont, \hnjmainfont, \hnjsansfont,
+ ]
+ {Ligatures=TeX}
+\DeclareDocumentCommand \defaulthangulfontfeatures { t+ o m } % o is ignored
+ {
+ \IfBooleanTF {#1}
+ {
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_hangul_font_opts_init_tl
+ }
+ {
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_font_opts_init_tl
+ }
+ \keys_set_known:nxN { xtxko-font } {#3} \l_xtxko_rem_tl % rem_tl ignored
+ \tl_set_eq:NN \l_xtxko_hangul_font_opts_init_tl \l_xtxko_font_opts_tl
+ }
+\DeclareDocumentCommand \defaulthanjafontfeatures { t+ o m } % o is ignored
+ {
+ \IfBooleanTF {#1}
+ {
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_hanja_font_opts_init_tl
+ }
+ {
+ \tl_set_eq:NN \l_xtxko_font_opts_tl \l_xtxko_font_opts_init_tl
+ }
+ \keys_set_known:nxN { xtxko-font } {#3} \l_xtxko_rem_tl % rem_tl ignored
+ \tl_set_eq:NN \l_xtxko_hanja_font_opts_init_tl \l_xtxko_font_opts_tl
+ }
%% math hangul font
-\DeclareDocumentCommand \setmathhangulfont { O{} m }
+\DeclareDocumentCommand \setmathhangulfont { O{} m O{} }
{
- \fontspec_set_family:Nnn \xetexko@math@hangul@family {#1} {#2}
+ \fontspec_set_family:Nnn \xetexko@math@hangul@family {#1,#3} {#2}
}
%%%%%%%%%%%%%%%%%%%%
%% xetexkofontregime
@@ -307,10 +342,10 @@
hyphens .code:n = \use:c { #1hyphens } ,
cjksymbols .code:n = \use:c { #1cjksymbols } ,
}
-\DeclareDocumentCommand \xetexkofontregime { O{} m }
+\DeclareDocumentCommand \xetexkofontregime { O{} m O{} }
{
\use:c { #2marks }
- \keys_set:nn { xtxko-char } { #1 }
+ \keys_set:nn { xtxko-char } { #1, #3 }
}
\ExplSyntaxOff
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko-hanging.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko-hanging.sty
index e079a7aa1ec..993dcc241fd 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko-hanging.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko-hanging.sty
@@ -13,7 +13,7 @@
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else
\ProvidesPackage{xetexko-hanging}
- [2014/05/11 v2.6 Hanging punctuations for XeTeX-ko]
+ [2014/06/17 v2.7 Hanging punctuations for XeTeX-ko]
\fi
\chardef\catcodeofATcharacter\catcode`@
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko-josa.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko-josa.sty
index a78fa8a511a..160c7df8308 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko-josa.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko-josa.sty
@@ -12,7 +12,7 @@
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else
- \ProvidesPackage{xetexko-josa}[2014/05/11 v2.6 Auto-josa for XeTeX-ko]
+ \ProvidesPackage{xetexko-josa}[2014/06/17 v2.7 Auto-josa for XeTeX-ko]
\fi
\unless\ifcsname @tempcnta\endcsname\newcount\@tempcnta\fi
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko-space.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko-space.sty
index 87ba623421c..9b62734ee61 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko-space.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko-space.sty
@@ -13,7 +13,7 @@
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else
\ProvidesPackage{xetexko-space}
- [2014/05/11 v2.6 Spacings and fonts for XeTeX-ko]
+ [2014/06/17 v2.7 Spacings and fonts for XeTeX-ko]
\fi
%%% we need XeTeX > 0.997
@@ -1380,7 +1380,11 @@
\let\@let@token#1\XK@save@last@char
% and supress char orphan
\toks@{\XK@every@hangul{#1}}% everyhangul 가
- \XK@futurelet@let@token
+ \ifnum\lastpenalty=\z@ % bypass 가\\나 case
+ \expandafter\XK@futurelet@let@token
+ \else
+ \expandafter\XK@normal@the@toks@
+ \fi
}
\def\XK@check@next@char{%
\ifx\par\@let@token
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko-vertical.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko-vertical.sty
index d29ad6b6e0e..1ac187205c0 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko-vertical.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko-vertical.sty
@@ -13,7 +13,7 @@
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else
\ProvidesPackage{xetexko-vertical}
- [2014/05/11 v2.6 Vertical environment for XeTeX-ko]
+ [2014/06/17 v2.7 Vertical environment for XeTeX-ko]
\fi
\unless\ifcsname @tempdima\endcsname\newdimen\@tempdima\fi
diff --git a/Master/texmf-dist/tex/xetex/xetexko/xetexko.sty b/Master/texmf-dist/tex/xetex/xetexko/xetexko.sty
index 6b006a773f9..d50d7d31906 100644
--- a/Master/texmf-dist/tex/xetex/xetexko/xetexko.sty
+++ b/Master/texmf-dist/tex/xetex/xetexko/xetexko.sty
@@ -42,7 +42,7 @@
\expandafter\endinput
\fi
-\ProvidesPackage{xetexko}[2014/05/11 v2.6 Typesetting Korean with XeLaTeX]
+\ProvidesPackage{xetexko}[2014/06/17 v2.7 Typesetting Korean with XeLaTeX]
\newif\if@hangul
\newif\if@hanja