summaryrefslogtreecommitdiff
path: root/language/korean
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-03-02 03:03:38 +0000
committerNorbert Preining <norbert@preining.info>2022-03-02 03:03:38 +0000
commit1769d3d8842ef66919943128931e647de9756adb (patch)
tree46df94f2204cba9384cccf5ab6ca8cbbcd49bcad /language/korean
parent3e9a44ea155766214d8657ed79db2206592b6e8e (diff)
CTAN sync 202203020303
Diffstat (limited to 'language/korean')
-rw-r--r--language/korean/kotex-oblivoir/README11
-rw-r--r--language/korean/kotex-oblivoir/doc/ChangeLog (renamed from language/korean/kotex-oblivoir/ChangeLog)17
-rw-r--r--language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.pdfbin247256 -> 256845 bytes
-rw-r--r--language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.tex161
-rw-r--r--language/korean/kotex-oblivoir/tex/memhangul-common/fapapersize.sty63
-rw-r--r--language/korean/kotex-oblivoir/tex/memhangul-common/memhangul-common.sty197
-rw-r--r--language/korean/kotex-oblivoir/tex/memhangul-common/oblivoir-misc.sty122
-rw-r--r--language/korean/kotex-oblivoir/tex/oblivoir-utf.cls2
-rw-r--r--language/korean/kotex-oblivoir/tex/oblivoir-xl.cls2
-rw-r--r--language/korean/kotex-oblivoir/tex/oblivoir.cls4
-rw-r--r--language/korean/kotex-oblivoir/tex/xoblivoir.cls2
11 files changed, 417 insertions, 164 deletions
diff --git a/language/korean/kotex-oblivoir/README b/language/korean/kotex-oblivoir/README
index 429d4b646d..0a1edaa49f 100644
--- a/language/korean/kotex-oblivoir/README
+++ b/language/korean/kotex-oblivoir/README
@@ -1,5 +1,10 @@
-kotex-oblivoir, v3.0.2
-======================
+kotex-oblivoir
+====================
+
+Current State
+-------------
+
+* 2022/03/01, uploaded to CTAN.
Introduction
------------
@@ -19,7 +24,7 @@ Dependencies
kotex-oblivoir depends on the following packages to function:
* memoir: base class
-* ko.TeX: Korean typesetting
+* ko.TeX: Korean typesetting packages
Usage
-----
diff --git a/language/korean/kotex-oblivoir/ChangeLog b/language/korean/kotex-oblivoir/doc/ChangeLog
index e259523d9f..b723bbdfd3 100644
--- a/language/korean/kotex-oblivoir/ChangeLog
+++ b/language/korean/kotex-oblivoir/doc/ChangeLog
@@ -1,16 +1,11 @@
-2021-09-21 Kangsoo Kim <modviv2k15@gmail.com>
+2022-03-01 Kangsoo Kim
- Version 3.0.2
-
- * fix the conflicts with lwarp
-
-2021-03-15 Kangsoo Kim <karnes at ktug org>
-
- Version 3.0.1
-
- * changed Unfont usage.
+ Version 3.1
+
+ * update fapapersize.sty
+ * add oblivoir-misc.sty
-2021-03-03 Kangsoo Kim <karnes at ktug org>
+2021-03-03 Kangsoo Kim
Version 3.0
diff --git a/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.pdf b/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.pdf
index ec1eeb63be..fc2916f03f 100644
--- a/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.pdf
+++ b/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.pdf
Binary files differ
diff --git a/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.tex b/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.tex
index 30cd92bd48..f48873d430 100644
--- a/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.tex
+++ b/language/korean/kotex-oblivoir/doc/oblivoir-simpledoc.tex
@@ -19,13 +19,20 @@
% lwarp
]{oblivoir}
+\usepackage{xcolor}
+
\usepackage{fapapersize}
\usefapapersize{*,*,30mm,*,35mm,*}
+\definefageometry{default}{30mm,*,35mm,*}[\nopagecolor]
+\definefageometry{test}{15mm,25mm,35mm,*}[\pagecolor{cyan!15}]
\usepackage{kotex-logo}
\hypersetup{colorlinks,linkcolor=blue}
+\usepackage{afterpage}
+\usepackage{oblivoir-misc}
+
%%% ifpxltex can be installed from KTUG Private Repository. not included in TeX Live
\usepackage{ifpxltex}
@@ -96,9 +103,9 @@
\begin{document}
-\title{초간단 \obclass{} v3.0.1 사용법}
+\title{초간단 \obclass{} v3.1 사용법}
-\date{2021년 3월}
+\date{2022년 3월}
\author{x-ob-liv-oir }
@@ -1214,6 +1221,8 @@ ExternalLocation으로 호출할 수 있을 것이다. 리눅스에서는 모르
% 참고로, bnm, cnm 등의 \obclass{} \oblivoirquote{괄호 명령}에도 별표(*)를 붙여 앞뒤 간격을
% 줄여줄 수 있다. |\ccnm{테스트}|, |\ccnm*{테스트}|.
+\clearpage
+
\section{그밖의 사항들}
\subsection{판면 설정을 위한 fapapersize}
@@ -1254,8 +1263,54 @@ oblivoir에서 제공된다.
\item [newmum] 신국판. (154mm$\times$225mm). 여백 25mm.
\item [1in] \hologo{plainTeX}에서처럼 1in 오프셋을 설정한 판면. 여백 1in.
\item [dbl4x6] 4$\times$6 배판. (190mm$\times$260mm). 여백 30mm.
+\item [a4] \texttt{a4paper} 용지에 \texttt{[1in]} 옵션과 같은 여백.
\end{description}
+\bigskip
+
+\marginpar{v3.1}
+\texttt{geometry} 패키지의 \cs{newgeometry}, \cs{restoregeometry} 명령과 유사하게
+문서의 중간에 페이지 레이아웃을 변경하는 명령이 있다. 다음과 같이 사용한다.
+
+\begin{description}
+\item [\cs{definefageometry}] 페이지 레이아웃을 정의하고 저장한다.
+\begin{verbatim}
+\definefageometry{default}{20mm,*,25mm,*}
+\end{verbatim}
+첫 번째 인자는 이 페이지 레이아웃의 unique한 이름으로서 letter로 이루어진다.
+
+두 번째 mandatory 인자는 \verb|\fapapersize| 명령에서
+페이지 사이즈에 해당하는 부분을 제외한 네 개의 길이를 쉼표로 구분하여 제시한다.
+
+이 명령은 다음과 같이 쓸 수 있다.
+\begin{verbatim}
+\definefageometry{default}[before]{<layout>}[after]
+\end{verbatim}
+여기 before와 after 위치에는 레이아웃을 바꾸기 전과 후에 실행할
+토큰을 둘 수 있다.
+
+\item[\cs{selectfagemetry}] 정의된 페이지 레이아웃을 적용한다.
+레이아웃 변경의 효과는 반드시 새로운 페이지가 시작되어야 나타나기 때문에
+\cs{newpage} 또는 \cs{clearpage}를 직접 지정하여야 하나,
+이 명령에 별표를 붙이면 페이지 레이아웃을 정의하기 전에 \cs{clearpage}를
+실행한다.
+페이지 레이아웃이 define되어 있지 않으면 안 된다.
+
+\end{description}
+
+다음 한 페이지의 레이아웃을 바꾸어본다. 다음과 같이 정의한 레이아웃이다
+\begin{verbatim}
+\definefageometry{test}{15mm,25mm,35mm,*}[\pagecolor{cyan!15}]
+\end{verbatim}
+
+\bigskip
+
+\cs{evenmarginsameasodd}는 짝수쪽의 마진을 홀수쪽 마진과
+동일하게 설정하라는 명령이다. 페이지 레이아웃 디자인시에 필요할 수
+있어서 별도로 정의해두었다.
+
+\selectfageometry*{test}
+
\subsection{enumerate}
enumerate 패키지의 enumerate 아이템 항목 머리 설정은
@@ -1329,6 +1384,8 @@ png, jpg, pdf 그림을 잘 불러온다. %즉 \obclass가 알맞게 이 패키
\hfill “소절 \myREF{sec:font}{sec:폰트}\를 보라.”
\end{minipage}
+\selectfageometry*{default}
+
\subsection{문장부호}
이 패키지가 제공하는 문장부호는 다음과 같은 것이 있다.
@@ -1457,46 +1514,6 @@ oblivoir가 추가적으로 제공하는 페이지 스타일로 \texttt{hangul}
\trimKmark
\end{boxedverbatim}
-\subsection{chaptertoc}
-
-\marginpar{v3.0}
-chaptertoc란 장 표제면에 그 chapter에 해당하는 절(section) 이하의 목록을
-만드는 것을 말한다. 이 목적을 위한 별도의 패키지가 있고 oblivoir에서 해당 패키지를
-활용하는 것도 가능하다. 한편 oblivoir v3.0은 \textsf{obchaptertoc}라는 부수
-패키지를 제공하는데 이것은 \textsf{memoir}의 기능만을 이용하고 다른 패키지에
-의존하지 않으면서 chaptertoc를 제작하게 한 것이다.
-이 기능은 오직 \verb|\chapter|보다 높은 수준의 문서구분명령에서만 동작하며
-\verb|\section| 이하 수준의 명령에 대해서는 고려하지 않았다. 따라서 \verb|[chapter]| 옵션이
-주어진 경우에 유효하다고 하겠다.
-
-\begin{boxedverbatim}
-\usepackage{obchaptertoc}
-%%
-\chaptertoc
-\end{boxedverbatim}
-
-이 패키지는 원래 독자적으로 개발되었던 것으로 안내 문서를 따로 가지고 있다(한국어).
-문서를 읽으려면
-\begin{verbatim}
-# texdoc obchaptertoc
-\end{verbatim}
-
-\subsection{mathleading}
-
-oblivoir는 한국어 문서에 대하여 기본 행간을 넓혀서 조판하기 때문에 여러 줄 수식의 경우에도
-그 영향을 받아서 행간격이 늘어지는 경우가 있었다.
-\textsf{amsmath}의 여러 줄 수식에 대하여 이 문제를 조절할 수 있게 하는 \textsf{ob-mathleading}
-패키지를 포함하였다. 따로 문서가 마련되어 있으므로 이를 참조하라.
-
-\begin{boxedverbatim}
-\usepackage{ob-mathleading}
-\end{boxedverbatim}
-
-문서를 읽으려면,
-\begin{verbatim}
-# texdoc ob-mathleading
-\end{verbatim}
-
\subsection{\cs{ReleaseMacros} 명령}
여러 \LaTeX\ 패키지를 로드하여 쓰다 보면 어떤 명령이 이미 정의되었다는 에러를
@@ -1571,10 +1588,65 @@ oblivoir 2.0까지 \verb|\footnotesinmargin|이 동작하지 않던 문제를
\caption{그림과 표의 캡션}
\end{figure}
-
이를 제외한 다른 부분, 이를테면 label과 caption text의 폰트를 바꾸는 것 등은 memoir의
해당 명령을 이용한다. 즉, \verb|\captionnamefont|, \verb|\captiontitlefont| 등을 이용하라는 것이다.
+\section{보조 패키지}
+
+\subsection{chaptertoc}
+
+\marginpar{v3.0}
+chaptertoc란 장 표제면에 그 chapter에 해당하는 절(section) 이하의 목록을
+만드는 것을 말한다. 이 목적을 위한 별도의 패키지가 있고 oblivoir에서 해당 패키지를
+활용하는 것도 가능하다. 한편 oblivoir v3.0은 \textsf{obchaptertoc}라는 부수
+패키지를 제공하는데 이것은 \textsf{memoir}의 기능만을 이용하고 다른 패키지에
+의존하지 않으면서 chaptertoc를 제작하게 한 것이다.
+이 기능은 오직 \verb|\chapter|보다 높은 수준의 문서구분명령에서만 동작하며
+\verb|\section| 이하 수준의 명령에 대해서는 고려하지 않았다. 따라서 \verb|[chapter]| 옵션이
+주어진 경우에 유효하다고 하겠다.
+
+\begin{boxedverbatim}
+\usepackage{obchaptertoc}
+%%
+\chaptertoc
+\end{boxedverbatim}
+
+이 패키지는 원래 독자적으로 개발되었던 것으로 안내 문서를 따로 가지고 있다(한국어).
+문서를 읽으려면
+\begin{verbatim}
+# texdoc obchaptertoc
+\end{verbatim}
+
+\subsection{mathleading}
+
+oblivoir는 한국어 문서에 대하여 기본 행간을 넓혀서 조판하기 때문에 여러 줄 수식의 경우에도
+그 영향을 받아서 행간격이 늘어지는 경우가 있었다.
+\textsf{amsmath}의 여러 줄 수식에 대하여 이 문제를 조절할 수 있게 하는 \textsf{ob-mathleading}
+패키지를 포함하였다. 따로 문서가 마련되어 있으므로 이를 참조하라.
+
+\begin{boxedverbatim}
+\usepackage{ob-mathleading}
+\end{boxedverbatim}
+
+문서를 읽으려면,
+\begin{verbatim}
+# texdoc ob-mathleading
+\end{verbatim}
+
+\subsection{oblivoir-misc}
+
+\marginpar{v3.1}
+시험적인 기능이나 그다지 중요하지 않은 명령을 포함하고 있는
+부수 패키지이다. 현재 다음 두 가지 명령이 정의되어 있다.
+
+\begin{description}
+\item[tikz pagenode] \texttt{tikz}를 로드했을 때 \texttt{current page}
+노드가 memoir의 레이아웃과 미묘하게 엇갈리는 것을 보정해준다. 이것은 oblivoir-misc를 로드하면 (tikz가 불렸을 때) 자동으로 처리한다.
+\item[\cs{texthl}] 한글 문자에 \texthl{하이라이트}해준다. 실험적인 기능으로
+현재 \XeLaTeX 일 때에 정상 동작한다. 하이라이트할 색상은 \cs{obhlcolor}, 높이와
+위치는 \cs{obhlheight}, \cs{obhlraisedim}을 재정의하여 설정할 수 있다.
+\end{description}
+
\section{HTML 제작}
@@ -1762,6 +1834,9 @@ Lua\TeX 과 \XeTeX 이라는 유니코드 텍 엔진의 등장은, 이러한 모
\section{변경 이력}
+2022년의 3.1 버전은 fapapersize에 새로운 명령을 추가하고 약간의
+개선된 기능을 포함하였다.
+
2021년의 3.0 버전은 상당히 많은 버그와 의도와 다른 동작을 수정하고 새로운
기능을 추가하였다.
diff --git a/language/korean/kotex-oblivoir/tex/memhangul-common/fapapersize.sty b/language/korean/kotex-oblivoir/tex/memhangul-common/fapapersize.sty
index a1a57f113f..7d072a293e 100644
--- a/language/korean/kotex-oblivoir/tex/memhangul-common/fapapersize.sty
+++ b/language/korean/kotex-oblivoir/tex/memhangul-common/fapapersize.sty
@@ -1,6 +1,7 @@
%% File `fapapersize.sty`
+%% this file is a part of oblivoir-packages.
%%
-%% Copyright (c) 2006-2013 Kangsoo Kim <karnes at ktug org>
+%% Copyright (c) 2006-2022 Kangsoo Kim <modviv2k15 at gmail.com>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -15,18 +16,24 @@
%% ver 0.03 (2006/11/24)
%% stocksize를 별도 지정할 수 있게 함
%% option [stock], command \usefastocksize{<width>}{<height>}
-%% ver 0.02
+%% ver 0.02 (2007)
%% 사륙배판, 국판, 신국판 정의.
%% marginnote 영역 설정은 제외되어 있음.
-%% ver 0.1
+%% ver 0.1 (2020)
%% option 1in added
+%% ver 0.2 (2022)
+%% option a4 added
+%% \definefageometry, \selectfageometry added.
%%
-\ProvidesPackage{fapapersize}[2020/02/10 v0.1]
+\ProvidesPackage{fapapersize}[2022/03/01 v0.2]
%%%
%%% 옵션
%%% dbl4x6 : 사륙배판
%%% mum : 국판
%%% newmum : 신국판
+%%% 1in : margin 1in
+%%% a4 : a4paper + 1in
+%%% stock : stocksize
\DeclareOption{dbl4x6}{%
\AtEndOfPackage{\usefapapersize{190mm,260mm,30mm,*,30mm,*}}%
}
@@ -38,7 +45,10 @@
}
\DeclareOption{1in}{%
\AtEndOfPackage{\usefapapersize{*,*,1in,*,1in,*}}%
- }
+}
+\DeclareOption{a4}{%
+ \AtEndOfPackage{\usefapapersize{210mm,290mm,1in,*,1in,*}}%
+}
\newif\ifStockSize@\StockSize@false
\DeclareOption{stock}{%
\StockSize@true
@@ -144,4 +154,47 @@
\fi
}
+%%%%
+%%% fapapersize.sty, 2021-06-21
+%%% \deffageometry, \setfageometry
+%%%
+\ExplSyntaxOn
+ \NewDocumentCommand \definefageometry { m o m o }
+ {
+ \IfValueTF{#2}
+ {
+ \tl_gset:cn { g_famarginsetopt_#1_tl } { #2 }
+ }
+ {
+ \tl_gset:cn { g_famarginsetopt_#1_tl } {}
+ }
+ \tl_gset:cn { g_famarginset_#1_tl } { #3 }
+ \IfValueTF { #4 }
+ {
+ \tl_gset:cn { g_famarginsetoptpost_#1_tl } { #4 }
+ }
+ {
+ \tl_gset:cn { g_famarginsetoptpost_#1_tl } {}
+ }
+ }
+
+ \NewDocumentCommand \selectfageometry { s m }
+ {
+ \IfBooleanT { #1 } { \clearpage }
+ \tl_use:c { g_famarginsetopt_#2_tl }
+ \exp_args:Nx \usefapapersize{*,*, \use:c{ g_famarginset_#2_tl } }
+ \tl_if_empty:cF { g_famarginsetoptpost_#2_tl }
+ {
+ \tl_use:c { g_famarginsetoptpost_#2_tl }
+ }
+ \ch@ngetext
+ }
+
+\NewDocumentCommand \evenmarginsameasodd {}
+{
+ \setlength\evensidemargin{\oddsidemargin}
+}
+
+\ExplSyntaxOff
+
\endinput
diff --git a/language/korean/kotex-oblivoir/tex/memhangul-common/memhangul-common.sty b/language/korean/kotex-oblivoir/tex/memhangul-common/memhangul-common.sty
index f96aafc731..7742b961e0 100644
--- a/language/korean/kotex-oblivoir/tex/memhangul-common/memhangul-common.sty
+++ b/language/korean/kotex-oblivoir/tex/memhangul-common/memhangul-common.sty
@@ -241,36 +241,111 @@
%% \chapter[toc][hdr]{title}
%% \chapter[toc]{hdr/title}
%% \chapter{toc/hdr/title}
+%%%%\def\@chapter[#1]#2{%
+%%%% \m@mpn@new@chaptrue%
+%%%% \m@mpn@new@schapfalse%
+%%%% \def\f@rbdy{#2}%
+%%%%% \ifx\ch@pt@c\@empty % no optional args
+%%%%% \def\f@rtoc{#2}%
+%%%%% \def\f@rhdr{#2}%
+%%%%% \PrerenderUnicode{#2}%
+%%%%% \else % at least one opt arg
+%%%%% \let\f@rtoc\ch@pt@c
+%%%%% \ifx\@empty#1\@empty
+%%%%% \let\f@rhdr\ch@pt@c
+%%%%% \PrerenderUnicode{#1#2}%
+%%%%% \else
+%%%%% \def\f@rhdr{#1}%
+%%%%% \PrerenderUnicode{#1}%
+%%%%% \fi
+%%%%% \fi
+%%%% \ifx\ch@pt@c\m@m@empty % no optional args
+%%%% \def\f@rtoc{#1}%
+%%%% \def\f@rhdr{#1}%
+%%%%% \PrerenderUnicode{#1}%
+%%%% \else % at least one opt arg
+%%%% \def\f@rtoc{\ch@pt@c}%
+%%%% \nametest{#1}{#2}%
+%%%% \ifsamename % one opt arg
+%%%% \def\f@rhdr{\ch@pt@c}%
+%%%%% \PrerenderUnicode{#1#2}%
+%%%% \else % two opt args
+%%%% \def\f@rhdr{#1}%
+%%%%% \PrerenderUnicode{#1}%
+%%%% \fi
+%%%% \fi
+%%%% \m@m@Andfalse
+%%%% \ifnum \c@secnumdepth >\m@ne
+%%%% \if@mainmatter
+%%%% \m@m@Andtrue
+%%%% \fi
+%%%% \fi
+%%%% \ifm@m@And
+%%%% \ifanappendix
+%%%% \refstepcounter{APPchapter}%
+%%%% \else
+%%%% \refstepcounter{chapter}%
+%%%% \fi
+%%%% \fi
+%%%% \chaptermark{\f@rhdr}
+%%%% \ifartopt
+%%%% \@makechapterhead{#2}%
+%%%% \@afterheading
+%%%% \else
+%%%% \insertchapterspace
+%%%% \if@twocolumn
+%%%% \@topnewpage[\@makechapterhead{#2}]%
+%%%% \else
+%%%% \@makechapterhead{#2}%
+%%%% \fi
+%%%% \@afterheading
+%%%% \fi
+%%%% \ifm@m@And
+%%%% \ifanappendix
+%%%% \addcontentsline{toc}{appendix}{%
+%%%%% \protect\chapternumberline{\thechapter}\f@rtoc}%
+%%%% \protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
+%%%%% \memappchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \memappchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \else
+%%%% \addcontentsline{toc}{chapter}{%
+%%%%% \protect\chapternumberline{\thechapter}\f@rtoc}%
+%%%% \protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
+%%%%% \memchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \memchapinfo{\hchaptertitlehead}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \fi
+%%%% \else
+%%%% \addcontentsline{toc}{chapter}{\f@rtoc}%
+%%%% \ifanappendix
+%%%% \memappchapinfo{}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \else
+%%%% \memchapinfo{\hchaptertitlehead}{\f@rtoc}{\f@rhdr}{#2}%
+%%%% \fi
+%%%% \fi
+%%%% \mempostaddchaptertotochook%
+%%%% \ifheadnameref\M@gettitle{\f@rhdr}\else\M@gettitle{\f@rtoc}\fi
+%%%%%%% for chapter
+%%%% \ifanappendix
+%%%% \protected@edef\@currentlabel{\thechapter}%
+%%%% \fi
+%%%% \memendofchapterhook%
+%%%%}
+
\def\@chapter[#1]#2{%
\m@mpn@new@chaptrue%
\m@mpn@new@schapfalse%
\def\f@rbdy{#2}%
-% \ifx\ch@pt@c\@empty % no optional args
-% \def\f@rtoc{#2}%
-% \def\f@rhdr{#2}%
-% \PrerenderUnicode{#2}%
-% \else % at least one opt arg
-% \let\f@rtoc\ch@pt@c
-% \ifx\@empty#1\@empty
-% \let\f@rhdr\ch@pt@c
-% \PrerenderUnicode{#1#2}%
-% \else
-% \def\f@rhdr{#1}%
-% \PrerenderUnicode{#1}%
-% \fi
-% \fi
- \ifx\ch@pt@c\m@m@empty % no optional args
- \def\f@rtoc{#1}%
- \def\f@rhdr{#1}%
+ \ifx\ch@pt@c\@empty % no optional args
+ \def\f@rtoc{#2}%
+ \def\f@rhdr{#2}%
\else % at least one opt arg
- \def\f@rtoc{\ch@pt@c}%
- \nametest{#1}{#2}%
- \ifsamename % one opt arg
- \def\f@rhdr{\ch@pt@c}%
- \else % two opt args
+ \let\f@rtoc\ch@pt@c
+ \ifx\@empty#1\@empty
+ \let\f@rhdr\ch@pt@c
+ \else
\def\f@rhdr{#1}%
\fi
- \fi
+ \fi
\m@m@Andfalse
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
@@ -297,18 +372,16 @@
\fi
\@afterheading
\fi
+ \@nameuse{chapter@f@rtoc@before@write@hook}%
+ \mempreaddchaptertotochook%
\ifm@m@And
\ifanappendix
\addcontentsline{toc}{appendix}{%
-% \protect\chapternumberline{\thechapter}\f@rtoc}%
\protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
-% \memappchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
\memappchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
\else
\addcontentsline{toc}{chapter}{%
-% \protect\chapternumberline{\thechapter}\f@rtoc}%
\protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
-% \memchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
\memchapinfo{\hchaptertitlehead}{\f@rtoc}{\f@rhdr}{#2}%
\fi
\else
@@ -321,82 +394,12 @@
\fi
\mempostaddchaptertotochook%
\ifheadnameref\M@gettitle{\f@rhdr}\else\M@gettitle{\f@rtoc}\fi
-%%% for chapter
\ifanappendix
\protected@edef\@currentlabel{\thechapter}%
\fi
\memendofchapterhook%
}
-%%%\def\@chapter[#1]#2{%
-%%% \m@mpn@new@chaptrue%
-%%% \m@mpn@new@schapfalse%
-%%% \def\f@rbdy{#2}%
-%%% \ifx\ch@pt@c\@empty % no optional args
-%%% \def\f@rtoc{#2}%
-%%% \def\f@rhdr{#2}%
-%%% \else % at least one opt arg
-%%% \let\f@rtoc\ch@pt@c
-%%% \ifx\@empty#1\@empty
-%%% \let\f@rhdr\ch@pt@c
-%%% \else
-%%% \def\f@rhdr{#1}%
-%%% \fi
-%%% \fi
-%%% \m@m@Andfalse
-%%% \ifnum \c@secnumdepth >\m@ne
-%%% \if@mainmatter
-%%% \m@m@Andtrue
-%%% \fi
-%%% \fi
-%%% \ifm@m@And
-%%% \ifanappendix
-%%% \refstepcounter{APPchapter}%
-%%% \else
-%%% \refstepcounter{chapter}%
-%%% \fi
-%%% \fi
-%%% \chaptermark{\f@rhdr}
-%%% \ifartopt
-%%% \@makechapterhead{#2}%
-%%% \@afterheading
-%%% \else
-%%% \insertchapterspace
-%%% \if@twocolumn
-%%% \@topnewpage[\@makechapterhead{#2}]%
-%%% \else
-%%% \@makechapterhead{#2}%
-%%% \fi
-%%% \@afterheading
-%%% \fi
-%%% \@nameuse{chapter@f@rtoc@before@write@hook}%
-%%% \mempreaddchaptertotochook%
-%%% \ifm@m@And
-%%% \ifanappendix
-%%% \addcontentsline{toc}{appendix}{%
-%%% \protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
-%%% \memappchapinfo{\thechapter}{\f@rtoc}{\f@rhdr}{#2}%
-%%% \else
-%%% \addcontentsline{toc}{chapter}{%
-%%% \protect\chapternumberline{\hchaptertitlehead}\f@rtoc}%
-%%% \memchapinfo{\hchaptertitlehead}{\f@rtoc}{\f@rhdr}{#2}%
-%%% \fi
-%%% \else
-%%% \addcontentsline{toc}{chapter}{\f@rtoc}%
-%%% \ifanappendix
-%%% \memappchapinfo{}{\f@rtoc}{\f@rhdr}{#2}%
-%%% \else
-%%% \memchapinfo{\hchaptertitlehead}{\f@rtoc}{\f@rhdr}{#2}%
-%%% \fi
-%%% \fi
-%%% \mempostaddchaptertotochook%
-%%% \ifheadnameref\M@gettitle{\f@rhdr}\else\M@gettitle{\f@rtoc}\fi
-%%% \ifanappendix
-%%% \protected@edef\@currentlabel{\thechapter}%
-%%% \fi
-%%% \memendofchapterhook%
-%%%}
-
%\def\@makechapterhead#1{%
% \chapterheadstart% \vspace*{50\p@}%
% {\parindent \z@ \raggedright \normalfont
diff --git a/language/korean/kotex-oblivoir/tex/memhangul-common/oblivoir-misc.sty b/language/korean/kotex-oblivoir/tex/memhangul-common/oblivoir-misc.sty
new file mode 100644
index 0000000000..8d81ccefbf
--- /dev/null
+++ b/language/korean/kotex-oblivoir/tex/memhangul-common/oblivoir-misc.sty
@@ -0,0 +1,122 @@
+%% file oblivoir-misc.sty
+%% part of oblivoir class
+%%
+%% (c) 2022 Kangsoo Kim
+%%
+%% 2022-03-01
+%%
+\ProvidesPackage{oblivoir-misc}[2022/03/01 version0.1]
+
+\RequirePackage{etoolbox}
+
+%%% tikz pagenode
+%%% see http://www.ktug.org/xe/index.php?mid=KTUG_QnA_board&document_srl=253542
+
+\AtEndPreamble{%
+\ifx\pgfkeys\undefined\else
+\newcommand\setpagenode{%
+ \expandafter\def\csname pgf@sh@ns@current page\endcsname{rectangle}%
+ \strictpagecheck%
+ \checkoddpage%
+ \ifoddpage%
+ \expandafter\def\csname pgf@sh@np@current page\endcsname{%
+ \def\southwest{\pgfpoint{\stockwidth-\paperwidth-\trimedge}%
+ {\stockheight-\trimtop-\paperheight}}%
+ \def\northeast{\pgfpoint{\stockwidth-\trimedge}{\stockheight-\trimtop}}%
+ }%
+ \else
+ \expandafter\def\csname pgf@sh@np@current page\endcsname{%
+ \def\southwest{\pgfpoint{\trimedge}{\stockheight-\trimtop-\paperheight}}%
+ \def\northeast{\pgfpoint{\trimedge+\paperwidth}{\stockheight-\trimtop}}%
+ }%
+ \fi
+ \expandafter\def\csname pgf@sh@nt@current page\endcsname{{1}{0}{0}{1}{0pt}{0pt}}%
+ \expandafter\def\csname pgf@sh@pi@current page\endcsname{pgfpageorigin}}
+
+\pgfkeys{/tikz/overlay/.add code={}{\setpagenode}}
+\fi
+}
+
+%%% \texthl
+%%% from oblivoir-patch2.sty, 2021
+%%% \texthl command
+%%% highlighs text in XeTeX
+%%% * now, in mathmode it doesn't work.
+%%%. * now, lualatex is not supported.
+%%%
+%%% \obhlcolor, \obhlheight, \obhlraisedim can be redefined by user.
+\ExplSyntaxOn
+\bool_new:N \g_ulemloaded_bool
+\bool_new:N \g_xcolorloaded_bool
+\dim_new:N \obhlraisedim
+\dim_new:N \obhlheight
+\AtEndPreamble{
+ \@ifpackageloaded{color}
+ { \bool_set_true:N \g_xcolorloaded_bool }
+ {
+ \@ifpackageloaded{xcolor}
+ { \bool_set_true:N \g_xcolorloaded_bool }
+ { \bool_set_false:N \g_xcolorloaded_bool }
+ }
+ \@ifpackageloaded{ulem}
+ { \bool_set_true:N \g_ulemloaded_bool }
+ { \bool_set_false:N \g_ulemloaded_bool
+ \let\UL@protected\protected
+ }
+ \sys_if_engine_luatex:TF {
+ \cs_if_exist:NF \obhlcolor { \def\obhlcolor{yellow!80} }
+ \dim_set:Nn \obhlraisedim { -.1\baselineskip }
+ \dim_set:Nn \obhlheight { 1.01em }
+ \NewDocumentCommand\texthl{}{
+ \bool_if:NTF \g_ulemloaded_bool
+ {
+ \msg_error:nn { texthl } { Do~not~use~ulem~with~luatexko. }
+ }
+ {
+ \hbox_set:Nn \l_tmpa_box { \color{\obhlcolor}\rule{1pt}{\obhlheight} }
+ \markoverwith{
+ \box_move_up:nn { \obhlraisedim } { \box_use:N \l_tmpa_box }
+ }
+ }
+ }
+ }{
+% \sys_if_engine_xetex:TF {
+ \bool_if:nTF
+ {
+ \g_ulemloaded_bool
+ &&
+ \g_xcolorloaded_bool
+ }
+ {
+ \cs_if_exist:NF \obhlcolor
+ {
+ \def\obhlcolor{yellow!80}
+ }
+ \dim_set:Nn \obhlraisedim { -.1\baselineskip }
+ \dim_set:Nn \obhlheight { 1.01em }
+ \UL@protected\def \texthl
+ {
+ \bgroup
+ \hbox_set:Nn \l_tmpa_box {\color{\obhlcolor}\rule{1pt}{\obhlheight}}
+ \box_set_ht:Nn \l_tmpa_box { \c_zero_dim }
+ \box_set_dp:Nn \l_tmpa_box { \c_zero_dim }
+ \markoverwith{%
+ \kern-.1pt
+ \box_move_up:nn { \obhlraisedim } { \box_use:N \l_tmpa_box }
+ }\ULon
+ }
+ }
+ {
+ \def\texthl {
+ \msg_error:nn { texthl } { ulem~and~(x)color~required.}
+ }
+ }
+% }
+% {
+% \msg_error:nn { texthl } { pdftex~not~supported }
+% }
+ }
+}
+\ExplSyntaxOff
+
+\endinput
diff --git a/language/korean/kotex-oblivoir/tex/oblivoir-utf.cls b/language/korean/kotex-oblivoir/tex/oblivoir-utf.cls
index 3d321a1446..535b74dbd4 100644
--- a/language/korean/kotex-oblivoir/tex/oblivoir-utf.cls
+++ b/language/korean/kotex-oblivoir/tex/oblivoir-utf.cls
@@ -1,6 +1,6 @@
%% File `oblivoir-utf.cls`
%%
-%% (C) Copyright 2006-2021 Kangsoo Kim <modviv2k15 at gmail com>
+%% (C) Copyright 2006-2015 Kangsoo Kim <karnes at ktug org>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
diff --git a/language/korean/kotex-oblivoir/tex/oblivoir-xl.cls b/language/korean/kotex-oblivoir/tex/oblivoir-xl.cls
index 88327a694a..e68aa40c94 100644
--- a/language/korean/kotex-oblivoir/tex/oblivoir-xl.cls
+++ b/language/korean/kotex-oblivoir/tex/oblivoir-xl.cls
@@ -1,6 +1,6 @@
%% File `oblivoir-xl.cls`
%%
-%% (C) Copyright 2006-2021 Kangsoo Kim <modviv2k15 at gmail com>
+%% (C) Copyright 2006-2021 Kangsoo Kim <karnes at ktug org>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
diff --git a/language/korean/kotex-oblivoir/tex/oblivoir.cls b/language/korean/kotex-oblivoir/tex/oblivoir.cls
index 19807a454a..2ccb1f0fc2 100644
--- a/language/korean/kotex-oblivoir/tex/oblivoir.cls
+++ b/language/korean/kotex-oblivoir/tex/oblivoir.cls
@@ -1,6 +1,6 @@
%% File `oblivoir.cls`
%%
-%% (C) Copyright 2006-2021 Kangsoo Kim <modviv2k15 at gmail com>
+%% (C) Copyright 2006-2022 Kangsoo Kim <karnes at ktug org>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -10,7 +10,7 @@
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2006/05/20 or later.
%%
-\ProvidesClass{oblivoir}[2021/09/21 v3.0.2]
+\ProvidesClass{oblivoir}[2022/03/01 v3.1]
\RequirePackage{xkeyval}
\RequirePackage{xparse}
diff --git a/language/korean/kotex-oblivoir/tex/xoblivoir.cls b/language/korean/kotex-oblivoir/tex/xoblivoir.cls
index d1444651d2..a825b59adf 100644
--- a/language/korean/kotex-oblivoir/tex/xoblivoir.cls
+++ b/language/korean/kotex-oblivoir/tex/xoblivoir.cls
@@ -1,6 +1,6 @@
%% File `xoblivoir.cls`
%%
-%% (C) Copyright 2006-2021 Kangsoo Kim <modviv2k15 at gmail com>
+%% (C) Copyright 2006-2021 Kangsoo Kim <karnes at ktug org>
%% (C) Copyright 2013 Kihwang Lee <leekh at ktug org>
%%
%% This work may be distributed and/or modified under the