diff options
Diffstat (limited to 'language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex')
-rw-r--r-- | language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex | 98 |
1 files changed, 86 insertions, 12 deletions
diff --git a/language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex b/language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex index 8af27c11c4..1f64941f4e 100644 --- a/language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex +++ b/language/korean/pmhanguljamo/doc/pmhanguljamo-kdoc.tex @@ -114,7 +114,8 @@ %\date{2022/09/02\quad v0.5} %\date{2022/09/07\quad v0.5.2} %\date{2023/02/19\quad v1.0} -\date{2023/02/22\quad v1.0.1} +%\date{2023/02/26\quad v1.0.1a} +\date{2023/03/03\quad v1.0.2} \maketitle @@ -752,7 +753,7 @@ mainfont로 식자할 것인지, 또는 별도의 폰트를 \cmda{\newfontfamily \jamoword{na/ras;mar:ss@/mi; dyuf/guig;ei dar/a;} \end{exampleside} -\subsection{\env{jamotext} 환경} +\subsection{\env{jamotext} 환경}\label{sec:asciiescape} \begin{boxedverbatim} \begin{jamotext} @@ -813,8 +814,8 @@ vr yu/do/ha/ye bo/ja/. \end{jamotext} \end{exampleside} -아스키 에스케이프 트릭은 \texttt{method=frkim}이나 \texttt{method=rrk}에서는 -쓸 수 없다. +아스키 에스케이프 트릭은 %\texttt{method=frkim}이나 +\texttt{method=rrk}에서는 쓸 수 없다. \section{\texttt{\bs jmcc} 명령} @@ -839,7 +840,7 @@ vr yu/do/ha/ye bo/ja/. \jmcc{BSG} \jmcc{@} \jmcc{UEY} \jmcc{@@} \end{exampleside} -\section{밑줄 긋기} +\section{밑줄 긋기}\label{sec:ulem} \leavevmode\marginpar{\fbox{\footnotesize v0.5.1}}% 밑줄을 긋는 명령 \cmda{\underline}의 인자로 \cs{jamoword}가 오는 것은 문제가 없다. @@ -859,9 +860,8 @@ Lua\LaTeX, 즉 \textsf{luatexko}를 이용하는 경우에는 \textsf{ulem} 없 \cs{uline}과 같은 ulem 명령을 사용하여야 한다면 Lua\LaTeX 으로 컴파일하는 것이 좋다. 그러나 부득이하여 \XeLaTeX 으로 컴파일하여야 하는 경우이고 밑줄 등을 구현하여야 하는 때라면 -\cmda{\jamoul} 명령을 이용할 수 있다. 물론 \textsf{ulem} 패키지 등은 preamble에서 -선언되어 있어야 한다.\footnote{Lua\LaTeX 과 \koTeX 을 쓸 때는 \textsf{ulem} 패키지를 -별도로 로드하지 않는다.} +\cmda{\jamoul} 명령을 이용할 수 있다. 물론 \textsf{ulem} 패키지는 preamble에서 +선언되어 있어야 한다.\footnote{Lua\LaTeX 에서 \koTeX 을 쓸 때는 \textsf{ulem} 패키지를 별도로 로드하지 않는다.} \begin{boxedverbatim} \jamoul{<ulem command name>}{jamo text} @@ -889,7 +889,7 @@ Lua\LaTeX, 즉 \textsf{luatexko}를 이용하는 경우에는 \textsf{ulem} 없 %\verb|\jamoul{texthl}{nuns/mvr/r@r sbv/ri/gey/ko}| %\jamoul{texthl}{nuns/mvr/r@r sbv/ri/gey/ko} -\cs{jamoul}을 이용하여 밑줄을 긋는 기능은 RRK 입력방법과 \texttt{frkim}에서는 구현되지 않았다. +\cs{jamoul}을 이용하여 밑줄을 긋는 기능은 RRK 입력 방법에서는 구현되지 않았다. 이 때에는 \textsf{luatexko}의 ulem 명령을 사용하여야 할 것이다. \section{문장 부호, 한자와 음절 한글} @@ -1308,7 +1308,19 @@ nog-eumbangcho ugeojyeo geumjandi jwaleuleug sgal-in jye \chapter{method=frkim}\label{chap:frkim} +\makeatletter \ExplSyntaxOn +\bool_new:N \opt_luatexko_loaded +\@ifpackageloaded{luatexko}{ + \bool_set_true:N \opt_luatexko_loaded +}{ + \bool_set_false:N \opt_luatexko_loaded +} +\ExplSyntaxOff +\makeatother +\ExplSyntaxOn +\cs_undefine:N \jamoul +\cs_undefine:N \jamoword \cs_undefine:N \l_inputword_seq \cs_undefine:N \l_inputpar_seq \cs_undefine:N \jamotext @@ -1375,7 +1387,9 @@ nog-eumbangcho ugeojyeo geumjandi jwaleuleug sgal-in jye 제공하지 않는다. 한편, \cs{jamoword}와 \env{jamotext}는 \texttt{method=frkim}에서도 동작한다. -\pkg{pmhanguljamo}의 기본 입력 방식인 \texttt{method=pm}에 비하여, 아스키 에스케이프 트릭이 없으며 \XeLaTeX 에서의 밑줄 긋기가 원활하지 않다\footnote{밑줄이 반드시 필요하면 \LuaLaTeX 으로 컴파일하라.}는 차이가 있다. +%\pkg{pmhanguljamo}의 기본 입력 방식인 \texttt{method=pm}에 비하여, +%%아스키 에스케이프 트릭이 없으며 +%\XeLaTeX 에서 \pkg{ulem}을 이용한 밑줄 긋기가 원활하지 않다\footnote{밑줄이 반드시 필요하면 \LuaLaTeX 으로 컴파일하라.}는 차이가 있다. \bigskip @@ -1536,13 +1550,15 @@ sa'uen 'ugihoan'yi jujaqgoa majbaro toqhaiSda. 닫는 따옴표는 \cs{zeroisrq}일 때 \cs{rq} 매크로를 써야 한다. \begin{examplebelow} -\zeroisx \hangul ``xonyr harxirxyr naixirro miruji mara''nyn +\zeroisx \hangul {``}xonyr harxirxyr naixirro miruji mara{''}nyn marxi iSda. \endhangul \end{examplebelow} +여는 겹따옴표 \verb|``|는 하나의 토큰으로 전달해주는 것이 좋다. + \begin{examplebelow} \zeroisrq -\hg{``'erin'inyn nara'yi bobai'ibnida\rq\rq{} sopa +\hg{{``}'erin'inyn nara'yi bobai'ibnida\rq\rq{} sopa `baqjeqhoan\rq{} sensaiqnim'i hasin marSym'ida.} \end{examplebelow} @@ -1597,6 +1613,35 @@ marxi iSda. \endhangul 위의 마지막 예는 호환 자모를 쓰지 않고 낱자를 나타낸 것이다. 대체로 이것으로 된다고 생각하기 때문에 \cs{activatefrcccmds}를 디폴트로 활성화시켜 두지 않은 것이다. +\paragraph{ASCII 에스케이프 트릭} +\texttt{frkim} 방식에서 아스키 에스케이프 트릭은 오직 \env{jamotext} 환경을 쓰는 경우에 가능하다. 즉, \cs{hangul} ... \cs{endhangul} 범위에서는 동작하지 않는다. +신택스는 \texttt{method=pm}에서와 동일하다. \ref{sec:asciiescape}절을 보라. + +(다음 예에서 \cs{unskip}을 사용한 이유는 이 트릭이 단어 중간에 쓰일 수 없으나 괄호를 이전 단어에 붙여야 했기 때문이다.) + +\begin{examplebelow} +\begin{jamotext} +ieq'uer'ieg !{\unskip (Yeongwol Station, 寧越驛)}'yn gaq'uendo ieq'uergun 'ieq'uer'yb'ei iSnyn taibaigsen'yi cerdomieq'ida. +iegsanyn han'og hieqsig'yro genserdoi'eS'ymie, hangugcerdogoqsa senjeq juncerdoginiemmurro jijeqdoi'e iSda. +\end{jamotext} +\end{examplebelow} + +\paragraph{\pkg{ulem}에 의한 밑줄긋기} + +\marginpar{\fbox{v1.1}}% +\cs{jamoul} 명령은 \texttt{[method=pm]}의 경우와 그 사용법이 같다(\pageref{sec:ulem}페이지). +\pkg{xetexko}와 함께 쓸 때에는 반드시 \pkg{ulem}을 로드하여야 하고 +\pkg{luatexko}와 함께 쓸 때에는 \pkg{ulem}을 로드할 필요가 없다. + +\begin{exampleside} +\jamoword{odyq'yn ja'ei a} +\jamoul{uline}{josen'yi dogribgug'im}% +\jamoword{goa} +\jamoul{uline}{josen'in'yi jajumin'im}% +\jamoword{'yr} +\jamoul{uwave}{sen'enhanora} +\end{exampleside} + \section{폰트} \paragraph{\pkg{pmhanguljamo}에서 옵션으로 부르는 경우} @@ -1620,6 +1665,33 @@ marxi iSda. \endhangul eny nari i doragar h@i'o} \end{examplebelow} +\emph{hangul\TeX}에는 \cs{bf}라는 명령이 있었다. 폰트를 고딕체로 +바꿔주는 것이었다. +이 비슷한 효과를 얻기 위해서, \cs{hg} 명령을 쓰는 경우에는 \cs{hg} 밖에서 +\cs{setpmhangulfont}를 쓰면 되지만 비교적 긴 문장을 쓰는 \env{jamotext} 환경 내에서는 다음처럼 할 수 있다. +단 이와 같은 `외부 매크로'는 한글을 구성하는 단어의 일부여서는 아니된다. +그렇기 때문에 빈 칸을 하나 두고 명령을 주어야 한다. 이를테면 +\verb|nim'yn\pmrm|과 같이 하면 안되고 \verb|nim'yn \pmrm|과 같이 앞 단어를 완성한 후에 매크로를 두어야 한다. + +\begin{examplebelow} +\newcommand*\pmbf{\setpmhangulfont{Noto Sans CJK KR}} +\newcommand*\pmrm{\setpmhangulfont{Noto Serif CJK KR}} +\hg{nim'yn gaSsybnida a'a} \pmbf \hg{saraqhanyn na'yi nim}\pmrm\hg{'yn gaSsybnida}\\ +\hangul puryn sanbic'yr sgaicigo \pmbf danpuqnamu sup'yr hiaqha'ie nan \pmrm jag'yn gir'yr ger'ese cama sdercigo gaSsybnida\endhangul +\begin{jamotext} +narkaro'un \pmbf ceskisy'yi cu'eg \pmrm\unskip 'yn na'yi unmieq'yi jicim'yr dorrienohgo duisger'ymciese sarajieSsybnida +\end{jamotext} +\end{examplebelow} + +앞서 소개한 \cs{jamoul}이 ``감싸는 명령''임을 이용하여 다음처럼 일시적으로 폰트를 바꾸는 데 쓸 수도 있겠다. + +\begin{exampleside} +\jamoword{jei gogjoryr mos iginyn} +\jamoul{dotemph}{saraq'yi norai}\jamoword{nyn} +\jamoul{textbf}{nim'yi cimmug}% +\jamoword{yr huibSago dobnida} +\end{exampleside} + \chapter{입력 방법 요약} @@ -1823,6 +1895,8 @@ Expl3는 내가 원하는 일을 너무나 간단하게 구현할 수 있게 해 \textbullet\ v1.0.1 (2023/02/22): frkim rule에 \cs{AddRule} 추가. \cs{zeroisx} 버그 수정. +\textbullet\ v1.0.2 (2023/03/01): frkim의 \cs{hg} 명령 일부 개선 + %%% APPENDICES \ExplSyntaxOn |