Skip to content

Instantly share code, notes, and snippets.

View dohyunkim's full-sized avatar

Dohyun Kim dohyunkim

View GitHub Profile
@dohyunkim
dohyunkim / xetexclasses.tex
Created March 4, 2021 08:19
XeTeX character classes
\documentclass{minimal}
\chardef\XeTeXcharclassIgnore=4096
\chardef\XeTeXcharclassBoundary=4095
\newXeTeXintercharclass\XeTeXcharclassID
\newXeTeXintercharclass\XeTeXcharclassCJ
\newXeTeXintercharclass\XeTeXcharclassOP
\newXeTeXintercharclass\XeTeXcharclassCL
\newXeTeXintercharclass\XeTeXcharclassEX
\newXeTeXintercharclass\XeTeXcharclassIS
\newXeTeXintercharclass\XeTeXcharclassNS
\documentclass[a4paper]{article}
\usepackage{kotex,iftex}
\defaultfontfeatures+{Renderer=OpenType}
\setmainhangulfont{Noto Sans CJK KR}[Script=Hangul, BoldFont=* Bold]
\newfontfamily\manjufont{Noto Sans Mongolian}[Script=Mongolian]
\ifluatex
\hangulpunctuations=0
\directlua{
function reverselines(box)
local t, head, curr, prevdp = {}
@dohyunkim
dohyunkim / xindex-ko.lua
Last active September 23, 2024 08:50
xindex Korean config. v2
--[[
-- xindex-ko.lua
-- written by Dohyun Kim
-- license: LPPL
-- reference: KS X 1026-1:2007
--
-- usage: xindex -c ko -l ko file.idx
--
--]]
--[[
-- xindex-ko.lua
-- written by Dohyun Kim
-- license: LPPL
-- reference: KS X 1026-1:2007
--
-- usage: xindex -c ko -l ko file.idx
--
-- todo: hanja (?)
--]]
@dohyunkim
dohyunkim / tys.tex
Last active May 3, 2017 02:27
산가지 算木
\newif\ifsetminus
\def\tys#1{%
\begingroup
\dimen0=0pt \dimen2=0pt \hsize=0pt
\setbox4=\vbox\bgroup\splitbyspace#1 ~ %
\edef\x{\egroup\hbox{\kern\the\dimen0 \box4\kern\the\dimen2}}\x
\endgroup
}
\def\splitbyspace#1 {%
\ifx#1~\else
@dohyunkim
dohyunkim / address.csv
Last active March 2, 2017 12:09
Formtec 주소용 라벨 LQ3212 (100 x 45mm). 페이지당 12개 라벨 총 240 라벨.
성명 주소 우편번호 전화번호 부수 비고 ...
성명 쉼표가, 들어간, 주소 우편번호 전화번호 부수 비고 ...
(전체 16줄)
@dohyunkim
dohyunkim / trans.tex
Created February 14, 2017 07:23
color transparency test
\input luaotfload.sty
\input luamplib.sty
\font\redtr="[lmroman12-bold.otf]:color=ff00007F" at 40pt
\font\bluetr="[lmroman12-bold.otf]:color=0000ff7f" at 40pt
\leavevmode\hbox{\redtr A\kern-0.5em \bluetr B}
\mplibsetformat{metafun}
\mplibcode
beginfig(0);
path p; p:= unitcircle scaled 2cm;
@dohyunkim
dohyunkim / nanum-uni-vf.lua
Last active July 15, 2016 01:53
nanum unicode virtual font for luatex
local T1toUni = {
-- removed [0] = 0x0060,
-- changed 0x27 from 0x2019
-- changed 0x60 from 0x2018
-- changed 0x18 nil to 0x2030
0x00B4, 0x02C6, 0x02DC, 0x00A8, 0x02DD, 0x02DA, 0x02C7,
0x02D8, 0x00AF, 0x02D9, 0x00B8, 0x02DB, 0x201A, 0x2039, 0x203A,
0x201C, 0x201D, 0x201E, 0x00AB, 0x00BB, 0x2013, 0x2014, 0x200B,
0x2030, 0x0131, 0x0237, 0xFB00, 0xFB01, 0xFB02, 0xFB03, 0xFB04,
0x2423, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
@dohyunkim
dohyunkim / xenanumtype1.tex
Created June 29, 2016 09:26
xelatex + nanum type1
\newXeTeXintercharclass \XeTeXcharclassID
\let \XeTeXcharclassOP \XeTeXcharclassID
\let \XeTeXcharclassCL \XeTeXcharclassID
\input load-unicode-xetex-classes\relax
\XeTeXcharclass "B7 = \XeTeXcharclassID
\count@="AC00 \loop
\XeTeXcharclass\count@ = \XeTeXcharclassID
\ifnum\count@<"D7A3 \advance\count@\@ne
\repeat
\XeTeXinterchartoks 0 \XeTeXcharclassID = {\LAID}
@dohyunkim
dohyunkim / subst.tex
Created June 14, 2016 11:45
tex macro, gsub
\documentclass{article}
\makeatletter
\def\gsub#1#2#3{%
\in@{#2}{#3}\ifin@
\errhelp{`#3' contains `#2', which is not allowed.}%
\errmessage{Nested Substitution}%
\fi
\in@{#2}{#1}\ifin@
\def\gsubresult##1#2##2\par{##1#3##2}%
\def\next{\expandafter\gsub\expandafter{\gsubresult#1\par}{#2}{#3}}%