dohyunkim / luatexko Goto Github PK
View Code? Open in Web Editor NEWtypeset Korean with lua(la)tex
typeset Korean with lua(la)tex
LuaTeX-ko Package version 3.6 (2023/09/11) =========================================== This is a Lua(La)TeX macro package that supports typesetting Korean documents including Old Hangul texts. As LuaTeX has opened up access to almost all the hidden routines of TeX engine, users can obtain more beautiful outcome using this package rather than other Hangul packages operating on other engines. LuaTeX version 1.10+ and luaotfload package version 2.96+ are required for this package to run. This package also requires cjk-ko package for its full functionality. License ------- This package is licensed under [LPPL](http://latex-project.org/lppl/) (LaTeX Project Public License) version 1.3c or later. See each file for details. Author ------ Dohyun Kim <nomos at ktug org> Soojin Nam <jsunam at gmail com> Please report any errors or suggestions to or leave messages in the issue tracker at: <http://github.com/dohyunkim/luatexko> Files ----- TeXinputs luatexko.sty -> tex/luatex/luatexko/ luatexko.lua -> tex/luatex/luatexko/ luatexko-normalize.lua -> tex/luatex/luatexko/ luatexko-uhc2utf8.lua -> tex/luatex/luatexko/ Documents luatexko-doc.pdf -> doc/luatex/luatexko/ luatexko-doc.tex -> doc/luatex/luatexko/ README (this file) -> doc/luatex/luatexko/ ChangeLog -> doc/luatex/luatexko/ Loading ------- For a LaTeX user, declaring \usepackage{luatexko} or \usepackage{kotex} is sufficient to load the package, which will load fontspec as well. Notice that kotex.sty is a file provided by cjk-ko package. Under plain TeX: \input luatexko.sty Package Options --------------- [hangul] Load Hangul captions. Besides, this option adjusts interword and interline spacing. Declares \hangulpunctuations=1 as well. [hanja] Load Hanja captions. Also apply other settings as [hangul] option does. Hangul Font Commands -------------------- \setmainhangulfont \setsanshangulfont \setmonohangulfont Equivalent to \setmainfont et. al. of fontspec package. These fonts are used when the font loaded by \setmainfont et. al. does not have Hangul glyphs. \setmainhanjafont \setsanshanjafont \setmonohanjafont These fonts are used when the font loaded by \setmainfont or \setmainhangulfont et. al. does not have Hanja glyphs. \setmainfallbackfont \setsansfallbackfont \setmonofallbackfont These fonts are used when the font loaded by \setmainfont, \setmainhangulfont, or \setmainhanjafont et. al. does not have Hanja glyphs. In like manner, these commands are available as well: \hangulfontspec \newhangulfontfamily \addhangulfontfeature \hanjafontspec \newhanjafontfamily \addhanjafontfeature \fallbackfontspec \newfallbackfontfamily \addfallbackfontfeature If any of these CJK fonts are not specified, UnBatang/UnDotum TrueType fonts will be used for typesetting CJK characters. Hangul Font Options ------------------- [InterHangul=<dimen>] Set spacing between Hangul characters. [InterLatinCJK=<dimen>] Set spacing between CJK and Latin characters. [CharRaise=<dimen>] Raise CJK characters by <dimen>. Other User Commands ------------------- \hangulpunctuations=<number> When <number> is 1 or greater (being default value), latin punctuations will be typeset with hangul fonts. \dotemph{...} Emphasise Hangul or Hanja by putting dot above. \ruby{<base text>}{<ruby text>} Typeset ruby annotations. \uline{...} \sout{...} \uuline{...} \xout{...} \uwave{...} \dashuline{...} \dotuline{...} Same functionality as those ulem package provides. *END of README*
아래의 MWE를 lualatex으로 컴파일하면, 라텍 기본의 verbatim환경과 fancyvrb 패키지의 Verbatim 환경의 결과가 서로 다르지 않습니다. 똑같습니다.
\documentclass{article}
\usepackage{fancyvrb}
\begin{document}
\begin{verbatim}
tex.print("hello")
\end{verbatim}
\begin{Verbatim}
tex.print("hello")
\end{Verbatim}
\end{document}
그러나 luatexko 패키지를 포함하면 결과가 달라집니다. 마치 fancyvrb 패키지의 Verbatim 환경은 글자모양만 타자체이고 간격이 고정간격이 아닌것 처럼 보입니다. 적어도 제 눈에는.
다시 자세히 보니, 괄호의 모양도 다릅니다. 폰트가 다르게 사용되는 모양입니다.
\documentclass{article}
\usepackage{luatexko} % <-- 추가
\usepackage{fancyvrb}
\begin{document}
\begin{verbatim}
tex.print("hello")
\end{verbatim}
\begin{Verbatim}
tex.print("hello")
\end{Verbatim}
\end{document}
luatexko 패키지를 포함하되, \directlua{luatexko.deactivateall()}
를 넣으면 맨처음 MWE와 같이 동일한 결과가 나오는 것으로 보아, luatexko 패키지가 fancyvrb 패키지와 뭔가 충돌을 일으키는 것으로 보입니다.
\documentclass{article}
\usepackage{luatexko} % <-- 추가
\usepackage{fancyvrb}
\begin{document}
\begin{verbatim}
tex.print("hello")
\end{verbatim}
\directlua{luatexko.deactivateall()}
\begin{Verbatim}
tex.print("hello")
\end{Verbatim}
\end{document}
Hi,
I am using lualatex + luatexko for my thesis as I am required to have some parts in Korean. But primarily the thesis is using Latin characters. For latin characters I am using mlmodern package (from here: https://ctan.org/pkg/mlmodern). Without luatexko I can use mlmodern succesfully. However, when I load luatexko, instead of getting mlmodern font for latin chracters I get the default spindly font, with all typesetting (bold, italics, etc) broken. Is there a way I can use both?
https://github.com/dohyunkim/luatexko/blob/master/luatexko-doc.tex#L138
1 부르기 에서
TEX Live 2020 이상 (LuaTEX v1.12 이상)을 사용해야 한다.
현재 텍라이브 버전은 2019이고 그의 루아텍 버전은 1.10.0 인데, 현재 텍라이브의 루아텍에서는 동작하지 않는 기능이 있다는 뜻인가요.
\nopagenumbers
\input luaotfload.sty
\font\tenrm{NanumBarunGothicOTF YetHangul}\tenrm
文
\bye
cf. CIDs and GIDs are not identical in this CIDfont (Adobe-Korea1-2).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.