summaryrefslogtreecommitdiff
path: root/indexing/upmendex/doc
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /indexing/upmendex/doc
Initial commit
Diffstat (limited to 'indexing/upmendex/doc')
-rw-r--r--indexing/upmendex/doc/samples/Makefile19
-rw-r--r--indexing/upmendex/doc/samples/alphabet/Makefile37
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_es.idx95
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_zh.idx86
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_zhp.idx86
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_zhr.idx214
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_zhs.idx58
-rw-r--r--indexing/upmendex/doc/samples/alphabet/alpha_zhz.idx97
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es1.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es11.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es12.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es13.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es2.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es21.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es22.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_es23.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh1.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh11.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh12.ist13
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh13.ist13
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh14.ist13
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh2.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh21.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh22.ist12
-rw-r--r--indexing/upmendex/doc/samples/alphabet/mdxsty_zh31.ist12
-rw-r--r--indexing/upmendex/doc/samples/french.idx18
-rw-r--r--indexing/upmendex/doc/samples/german.idx19
-rw-r--r--indexing/upmendex/doc/samples/greek.idx10
-rw-r--r--indexing/upmendex/doc/samples/korean.idx60
-rw-r--r--indexing/upmendex/doc/samples/mdxsty00.ist10
-rw-r--r--indexing/upmendex/doc/samples/mdxsty01.ist12
-rw-r--r--indexing/upmendex/doc/samples/mdxsty02.ist17
-rw-r--r--indexing/upmendex/doc/samples/multi.idx9
-rw-r--r--indexing/upmendex/doc/samples/option/Makefile22
-rw-r--r--indexing/upmendex/doc/samples/option/attri1.idx42
-rw-r--r--indexing/upmendex/doc/samples/option/japanese.idx34
-rw-r--r--indexing/upmendex/doc/samples/option/mdxsty_j00.ist11
-rw-r--r--indexing/upmendex/doc/samples/option/mdxsty_j01.ist11
-rw-r--r--indexing/upmendex/doc/samples/option/mdxsty_j02.ist12
-rw-r--r--indexing/upmendex/doc/samples/option/mdxsty_rule0.ist12
-rw-r--r--indexing/upmendex/doc/samples/russian.idx17
-rw-r--r--indexing/upmendex/doc/upmendex.ja.txt430
42 files changed, 1645 insertions, 0 deletions
diff --git a/indexing/upmendex/doc/samples/Makefile b/indexing/upmendex/doc/samples/Makefile
new file mode 100644
index 0000000000..7cd082cbb8
--- /dev/null
+++ b/indexing/upmendex/doc/samples/Makefile
@@ -0,0 +1,19 @@
+UPMENDEX = upmendex
+
+all: scripts styles
+
+scripts:
+ for scr in french german greek russian korean; do \
+ $(UPMENDEX) $$scr -s mdxsty00.ist ; \
+ done
+
+styles:
+ for num in 00 01 02; do \
+ $(UPMENDEX) multi.idx -s mdxsty$$num.ist -o multi_$$num.ind ; \
+ done
+
+compare:
+ for ind in $(wildcard *.ind); do \
+ diff -qs $$ind output/$$ind ; \
+ done
+
diff --git a/indexing/upmendex/doc/samples/alphabet/Makefile b/indexing/upmendex/doc/samples/alphabet/Makefile
new file mode 100644
index 0000000000..a33c0e11b8
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/Makefile
@@ -0,0 +1,37 @@
+UPMENDEX = upmendex
+
+alphabet: es zh
+
+es:
+ for num in 1 2 11 12 13 22 22 23; do \
+ for loc in es; do \
+ $(UPMENDEX) alpha_$$loc.idx -s mdxsty_$$loc$$num.ist -o alpha_$$loc$$num.ind ; \
+ done ; \
+ done
+
+zh:
+ for num in 1 2 11 12 13 14 21 22 31; do \
+ for loc in zh; do \
+ $(UPMENDEX) alpha_$$loc.idx -s mdxsty_$$loc$$num.ist -o alpha_$$loc$$num.ind ; \
+ done ; \
+ done
+ for num in 11 12 13 14; do \
+ loc='zh' ; \
+ locx='zhr' ; \
+ $(UPMENDEX) alpha_$$locx.idx -s mdxsty_$$loc$$num.ist -o alpha_$$locx$$num.ind ; \
+ done
+ for num in 21 22; do \
+ loc='zh' ; \
+ locx='zhs' ; \
+ $(UPMENDEX) alpha_$$locx.idx -s mdxsty_$$loc$$num.ist -o alpha_$$locx$$num.ind ; \
+ done
+ for num in 31; do \
+ loc='zh' ; \
+ locx='zhz' ; \
+ $(UPMENDEX) alpha_$$locx.idx -s mdxsty_$$loc$$num.ist -o alpha_$$locx$$num.ind ; \
+ done
+ for num in 1 2; do \
+ loc='zh' ; \
+ locx='zhp' ; \
+ $(UPMENDEX) alpha_$$locx.idx -s mdxsty_$$loc$$num.ist -o alpha_$$locx$$num.ind ; \
+ done
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_es.idx b/indexing/upmendex/doc/samples/alphabet/alpha_es.idx
new file mode 100644
index 0000000000..7c3982df83
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_es.idx
@@ -0,0 +1,95 @@
+\indexentry{A}{101}
+\indexentry{B}{102}
+\indexentry{C}{103}
+\indexentry{CH}{160}
+\indexentry{D}{104}
+\indexentry{E}{105}
+\indexentry{F}{106}
+\indexentry{G}{107}
+\indexentry{H}{108}
+\indexentry{I}{109}
+\indexentry{J}{110}
+\indexentry{K}{111}
+\indexentry{L}{112}
+\indexentry{LL}{161}
+\indexentry{M}{113}
+\indexentry{N}{114}
+\indexentry{Ñ}{162}
+\indexentry{O}{115}
+\indexentry{P}{116}
+\indexentry{Q}{117}
+\indexentry{R}{118}
+\indexentry{S}{119}
+\indexentry{T}{120}
+\indexentry{U}{121}
+\indexentry{V}{122}
+\indexentry{W}{123}
+\indexentry{X}{124}
+\indexentry{Y}{125}
+\indexentry{Z}{126}
+\indexentry{a}{201}
+\indexentry{b}{202}
+\indexentry{c}{203}
+\indexentry{ch}{260}
+\indexentry{d}{204}
+\indexentry{e}{205}
+\indexentry{f}{206}
+\indexentry{g}{207}
+\indexentry{h}{208}
+\indexentry{i}{209}
+\indexentry{j}{210}
+\indexentry{k}{211}
+\indexentry{l}{212}
+\indexentry{ll}{261}
+\indexentry{m}{213}
+\indexentry{n}{214}
+\indexentry{ñ}{262}
+\indexentry{o}{215}
+\indexentry{p}{216}
+\indexentry{q}{217}
+\indexentry{r}{218}
+\indexentry{s}{219}
+\indexentry{t}{220}
+\indexentry{u}{221}
+\indexentry{v}{222}
+\indexentry{w}{223}
+\indexentry{x}{224}
+\indexentry{y}{225}
+\indexentry{z}{226}
+\indexentry{ca}{1000}
+\indexentry{cg}{1001}
+\indexentry{ci}{1002}
+\indexentry{cz}{1003}
+\indexentry{cha}{1004}
+\indexentry{chz}{1005}
+\indexentry{la}{2000}
+\indexentry{lk}{2001}
+\indexentry{lm}{2001}
+\indexentry{lz}{2001}
+\indexentry{lla}{2004}
+\indexentry{llz}{2005}
+\indexentry{na}{3000}
+\indexentry{nz}{3001}
+\indexentry{ña}{3002}
+\indexentry{ñz}{3003}
+\indexentry{ra}{4000}
+\indexentry{rq}{4001}
+\indexentry{rs}{4002}
+\indexentry{rz}{4003}
+\indexentry{rr}{4004}
+\indexentry{rra}{4005}
+\indexentry{rrz}{4006}
+\indexentry{ga}{5000}
+\indexentry{gt}{5001}
+\indexentry{gv}{5002}
+\indexentry{gz}{5003}
+\indexentry{gu}{5004}
+\indexentry{gua}{5005}
+\indexentry{guz}{5006}
+\indexentry{qa}{6000}
+\indexentry{qt}{6001}
+\indexentry{qv}{6002}
+\indexentry{qz}{6003}
+\indexentry{qu}{6004}
+\indexentry{qua}{6005}
+\indexentry{quz}{6006}
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_zh.idx b/indexing/upmendex/doc/samples/alphabet/alpha_zh.idx
new file mode 100644
index 0000000000..1e7845cb47
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_zh.idx
@@ -0,0 +1,86 @@
+\indexentry{一 (1, 一, yī, ㄧ)}{101}
+\indexentry{二 (2, 二, èr, ㄦˋ)}{102}
+\indexentry{三 (3, 一, sān, ㄙㄢ)}{103}
+\indexentry{四 (5, 囗, sì, ㄙˋ)}{104}
+\indexentry{五 (4, 二, wǔ, ㄨˇ)}{105}
+\indexentry{六 (4, 八, liù, ㄌㄧㄡˋ)}{106}
+\indexentry{七 (2, 一, qī, ㄑㄧ)}{160}
+\indexentry{八 (2, 八, bā, ㄅㄚ)}{107}
+\indexentry{九 (2, 乙, jiǔ, ㄐㄧㄡˇ)}{108}
+\indexentry{十 (2, 十, shí, ㄕˊ)}{161}
+\indexentry{百 (6, 白, bǎi, ㄅㄞˇ)}{202}
+\indexentry{千 (3, 十, qiān, ㄑㄧㄢ)}{203}
+\indexentry{万 (3, 一, wàn, ㄨㄢˋ)}{204}
+\indexentry{億 (15, 人, yì, ㄧˋ)}{205}
+\indexentry{兆 (6, 儿, zhào, ㄓㄠˋ)}{206}
+\indexentry{京 (8, 亠, jīng, ㄐㄧㄥ)}{260}
+\indexentry{春 (9, 日, chūn, ㄔㄨㄣ)}{110}
+\indexentry{夏 (10, 夊, xià, ㄒㄧㄚˋ)}{111}
+\indexentry{秋 (9, 禾, qiū, ㄑㄧㄡ)}{112}
+\indexentry{冬 (5, 冫, dōng, ㄉㄨㄥ)}{113}
+\indexentry{月 (4, 月, yuè, ㄩㄝˋ)}{114}
+\indexentry{火 (4, 火, huǒ, ㄏㄨㄛˇ)}{115}
+\indexentry{水 (4, 水, shuǐ, ㄕㄨㄟˇ)}{116}
+\indexentry{木 (4, 木, mù, ㄇㄨˋ)}{117}
+\indexentry{金 (8, 金, jīn, ㄐㄧㄣ)}{118}
+\indexentry{土 (3, 土, tǔ, ㄊㄨˇ)}{119}
+\indexentry{日 (4, 日, rì, ㄖˋ)}{120}
+\indexentry{子 (3, 子, zǐ, ㄗˇ)}{162}
+\indexentry{丑 (4, 一, chǒu, ㄔㄡˇ)}{121}
+\indexentry{寅 (11, 宀, yín, ㄧㄣˊ)}{122}
+\indexentry{卯 (5, 卩, mǎo, ㄇㄠˇ)}{123}
+\indexentry{辰 (7, 辰, chén, ㄔㄣˊ)}{124}
+\indexentry{巳 (3, 己, sì, ㄙˋ)}{125}
+\indexentry{午 (4, 十, wǔ, ㄨˇ)}{128}
+\indexentry{未 (5, 木, wèi, ㄨㄟˋ)}{129}
+\indexentry{申 (5, 田, shēn, ㄕㄣ)}{130}
+\indexentry{酉 (7, 酉, yǒu, ㄧㄡˇ)}{131}
+\indexentry{戌 (6, 戈, xū, ㄒㄩ)}{132}
+\indexentry{亥 (6, 亠, hài, ㄏㄞˋ)}{201}
+\indexentry{甲 (5, 田, jiǎ, ㄐㄧㄚˇ)}{207}
+\indexentry{乙 (1, 乙, yǐ, ㄧˇ)}{208}
+\indexentry{丙 (5, 一, bǐng, ㄅㄧㄥˇ)}{261}
+\indexentry{丁 (2, 一, dīng, ㄉㄧㄥ)}{210}
+\indexentry{戊 (5, 戈, wù, ㄨˋ)}{211}
+\indexentry{己 (3, 己, jǐ, ㄐㄧˇ)}{212}
+\indexentry{庚 (8, 广, gēng, ㄍㄥ)}{213}
+\indexentry{辛 (7, 辛, xīn, ㄒㄧㄣ)}{214}
+\indexentry{壬 (4, 士, rén, ㄖㄣˊ)}{215}
+\indexentry{癸 (9, 癶, guǐ, ㄍㄨㄟˇ)}{216}
+\indexentry{東 (8, 木, dōng, ㄉㄨㄥ)}{217}
+\indexentry{西 (6, 襾, xī, ㄒㄧ)}{218}
+\indexentry{南 (9, 十, nán, ㄋㄢˊ)}{219}
+\indexentry{北 (5, 匕, běi, ㄅㄟˇ)}{220}
+\indexentry{靑 (8, 靑, qīng, ㄑㄧㄥ)}{221}
+\indexentry{赤 (7, 赤, chì, ㄔˋ)}{222}
+\indexentry{黃 (12, 黃, huáng, ㄏㄨㄤˊ)}{223}
+\indexentry{白 (5, 白, bái, ㄅㄞˊ)}{224}
+\indexentry{黑 (12, 黑, hēi, ㄏㄟ)}{225}
+\indexentry{喜 (12, 口, xǐ, ㄒㄧˇ)}{226}
+\indexentry{怒 (9, 心, nù, ㄋㄨˋ)}{227}
+\indexentry{哀 (9, 口, āi, ㄞ)}{228}
+\indexentry{樂 (15, 木, lè, ㄌㄜˋ)}{229}
+\indexentry{花 (8, 艸, huā, ㄏㄨㄚ)}{230}
+\indexentry{鳥 (11, 鳥, niǎo, ㄋㄧㄠˇ)}{231}
+\indexentry{風 (9, 風, fēng, ㄈㄥ)}{232}
+\indexentry{月 (4, 月, yuè, ㄩㄝˋ)}{233}
+\indexentry{天 (4, 大, tiān, ㄊㄧㄢ)}{234}
+\indexentry{馬 (10, 馬, mǎ, ㄇㄚˇ)}{235}
+\indexentry{行 (6, 行, xíng, ㄒㄧㄥˊ)}{236}
+\indexentry{空 (8, 穴, kōng, ㄎㄨㄥ)}{237}
+\indexentry{品 (9, 口, pǐn, ㄆㄧㄣˇ)}{238}
+\indexentry{行 (6, 行, xíng, ㄒㄧㄥˊ)}{239}
+\indexentry{方 (4, 方, fāng, ㄈㄤ)}{240}
+\indexentry{正 (5, 止, zhèng, ㄓㄥˋ)}{241}
+\indexentry{海 (10, 水, hǎi, ㄏㄞˇ)}{242}
+\indexentry{翁 (10, 羽, wēng, ㄨㄥ)}{243}
+\indexentry{好 (6, 女, hǎo, ㄏㄠˇ)}{244}
+\indexentry{鷗 (22, 鳥, ōu, ㄡ)}{245}
+\indexentry{安 (6, 宀, ān, ㄢ)}{246}
+\indexentry{心 (4, 心, xīn, ㄒㄧㄣ)}{247}
+\indexentry{立 (5, 立, lì, ㄌㄧˋ)}{248}
+\indexentry{命 (8, 口, mìng, ㄇㄧㄥˋ)}{249}
+\indexentry{勸 (19, 力, quàn, ㄑㄩㄢˋ)}{250}
+\indexentry{善 (12, 口, shàn, ㄕㄢˋ)}{251}
+\indexentry{懲 (19, 心, chéng, ㄔㄥˊ)}{252}
+\indexentry{惡 (12, 心, è, ㄜˋ)}{253}
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_zhp.idx b/indexing/upmendex/doc/samples/alphabet/alpha_zhp.idx
new file mode 100644
index 0000000000..d7d537f96e
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_zhp.idx
@@ -0,0 +1,86 @@
+\indexentry{一}{101}
+\indexentry{二}{102}
+\indexentry{三}{103}
+\indexentry{四}{104}
+\indexentry{五}{105}
+\indexentry{六}{106}
+\indexentry{七}{160}
+\indexentry{八}{107}
+\indexentry{九}{108}
+\indexentry{十}{161}
+\indexentry{百}{202}
+\indexentry{千}{203}
+\indexentry{万}{204}
+\indexentry{億}{205}
+\indexentry{兆}{206}
+\indexentry{京}{260}
+\indexentry{春}{110}
+\indexentry{夏}{111}
+\indexentry{秋}{112}
+\indexentry{冬}{113}
+\indexentry{月}{114}
+\indexentry{火}{115}
+\indexentry{水}{116}
+\indexentry{木}{117}
+\indexentry{金}{118}
+\indexentry{土}{119}
+\indexentry{日}{120}
+\indexentry{子}{162}
+\indexentry{丑}{121}
+\indexentry{寅}{122}
+\indexentry{卯}{123}
+\indexentry{辰}{124}
+\indexentry{巳{125}
+\indexentry{午}{128}
+\indexentry{未}{129}
+\indexentry{申}{130}
+\indexentry{酉}{131}
+\indexentry{戌}{132}
+\indexentry{亥}{201}
+\indexentry{甲}{207}
+\indexentry{乙}{208}
+\indexentry{丙}{261}
+\indexentry{丁}{210}
+\indexentry{戊}{211}
+\indexentry{己}{212}
+\indexentry{庚}{213}
+\indexentry{辛}{214}
+\indexentry{壬}{215}
+\indexentry{癸}{216}
+\indexentry{東}{217}
+\indexentry{西}{218}
+\indexentry{南}{219}
+\indexentry{北}{220}
+\indexentry{靑}{221}
+\indexentry{赤}{222}
+\indexentry{黃}{223}
+\indexentry{白}{224}
+\indexentry{黑}{225}
+\indexentry{喜}{226}
+\indexentry{怒}{227}
+\indexentry{哀}{228}
+\indexentry{樂}{229}
+\indexentry{花}{230}
+\indexentry{鳥}{231}
+\indexentry{風}{232}
+\indexentry{月}{233}
+\indexentry{天}{234}
+\indexentry{馬}{235}
+\indexentry{行}{236}
+\indexentry{空}{237}
+\indexentry{品}{238}
+\indexentry{行}{239}
+\indexentry{方}{240}
+\indexentry{正}{241}
+\indexentry{海}{242}
+\indexentry{翁}{243}
+\indexentry{好}{244}
+\indexentry{鷗}{245}
+\indexentry{安}{246}
+\indexentry{心}{247}
+\indexentry{立}{248}
+\indexentry{命}{249}
+\indexentry{勸}{250}
+\indexentry{善}{251}
+\indexentry{懲}{252}
+\indexentry{惡}{253}
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_zhr.idx b/indexing/upmendex/doc/samples/alphabet/alpha_zhr.idx
new file mode 100644
index 0000000000..606df2c52e
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_zhr.idx
@@ -0,0 +1,214 @@
+\indexentry{一}{1}
+\indexentry{丨}{2}
+\indexentry{丶}{3}
+\indexentry{丿}{4}
+\indexentry{乙}{5}
+\indexentry{亅}{6}
+\indexentry{二}{7}
+\indexentry{亠}{8}
+\indexentry{人}{9}
+\indexentry{儿}{10}
+\indexentry{入}{11}
+\indexentry{八}{12}
+\indexentry{冂}{13}
+\indexentry{冖}{14}
+\indexentry{冫}{15}
+\indexentry{几}{16}
+\indexentry{凵}{17}
+\indexentry{刀}{18}
+\indexentry{力}{19}
+\indexentry{勹}{10}
+\indexentry{匕}{11}
+\indexentry{匚}{12}
+\indexentry{匸}{13}
+\indexentry{十}{14}
+\indexentry{卜}{15}
+\indexentry{卩}{16}
+\indexentry{厂}{17}
+\indexentry{厶}{18}
+\indexentry{又}{19}
+\indexentry{口}{10}
+\indexentry{囗}{11}
+\indexentry{土}{12}
+\indexentry{士}{13}
+\indexentry{夂}{14}
+\indexentry{夊}{15}
+\indexentry{夕}{16}
+\indexentry{大}{17}
+\indexentry{女}{18}
+\indexentry{子}{19}
+\indexentry{宀}{10}
+\indexentry{寸}{11}
+\indexentry{小}{12}
+\indexentry{尢}{13}
+\indexentry{尸}{14}
+\indexentry{屮}{15}
+\indexentry{山}{16}
+\indexentry{巛}{17}
+\indexentry{工}{18}
+\indexentry{己}{19}
+\indexentry{巾}{10}
+\indexentry{干}{11}
+\indexentry{幺}{12}
+\indexentry{广}{13}
+\indexentry{廴}{14}
+\indexentry{廾}{15}
+\indexentry{弋}{16}
+\indexentry{弓}{17}
+\indexentry{彐}{18}
+\indexentry{彡}{19}
+\indexentry{彳}{10}
+\indexentry{心}{11}
+\indexentry{戈}{12}
+\indexentry{戶}{13}
+\indexentry{手}{14}
+\indexentry{支}{15}
+\indexentry{攴}{16}
+\indexentry{文}{17}
+\indexentry{斗}{18}
+\indexentry{斤}{19}
+\indexentry{方}{10}
+\indexentry{无}{11}
+\indexentry{日}{12}
+\indexentry{曰}{13}
+\indexentry{月}{14}
+\indexentry{木}{15}
+\indexentry{欠}{16}
+\indexentry{止}{17}
+\indexentry{歹}{18}
+\indexentry{殳}{19}
+\indexentry{毋}{10}
+\indexentry{比}{11}
+\indexentry{毛}{12}
+\indexentry{氏}{13}
+\indexentry{气}{14}
+\indexentry{水}{15}
+\indexentry{火}{16}
+\indexentry{爪}{17}
+\indexentry{父}{18}
+\indexentry{爻}{19}
+\indexentry{爿}{10}
+\indexentry{片}{11}
+\indexentry{牙}{12}
+\indexentry{牛}{13}
+\indexentry{犬}{14}
+\indexentry{玄}{15}
+\indexentry{玉}{16}
+\indexentry{瓜}{17}
+\indexentry{瓦}{18}
+\indexentry{甘}{19}
+\indexentry{生}{10}
+\indexentry{用}{11}
+\indexentry{田}{12}
+\indexentry{疋}{13}
+\indexentry{疒}{14}
+\indexentry{癶}{15}
+\indexentry{白}{16}
+\indexentry{皮}{17}
+\indexentry{皿}{18}
+\indexentry{目}{19}
+\indexentry{矛}{10}
+\indexentry{矢}{11}
+\indexentry{石}{12}
+\indexentry{示}{13}
+\indexentry{禸}{14}
+\indexentry{禾}{15}
+\indexentry{穴}{16}
+\indexentry{立}{17}
+\indexentry{竹}{18}
+\indexentry{米}{19}
+\indexentry{糸}{10}
+\indexentry{缶}{11}
+\indexentry{网}{12}
+\indexentry{羊}{13}
+\indexentry{羽}{14}
+\indexentry{老}{15}
+\indexentry{而}{16}
+\indexentry{耒}{17}
+\indexentry{耳}{18}
+\indexentry{聿}{19}
+\indexentry{肉}{10}
+\indexentry{臣}{11}
+\indexentry{自}{12}
+\indexentry{至}{13}
+\indexentry{臼}{14}
+\indexentry{舌}{15}
+\indexentry{舛}{16}
+\indexentry{舟}{17}
+\indexentry{艮}{18}
+\indexentry{色}{19}
+\indexentry{艸}{10}
+\indexentry{虍}{11}
+\indexentry{虫}{12}
+\indexentry{血}{13}
+\indexentry{行}{14}
+\indexentry{衣}{15}
+\indexentry{襾}{16}
+\indexentry{見}{17}
+\indexentry{角}{18}
+\indexentry{言}{19}
+\indexentry{谷}{10}
+\indexentry{豆}{11}
+\indexentry{豕}{12}
+\indexentry{豸}{13}
+\indexentry{貝}{14}
+\indexentry{赤}{15}
+\indexentry{走}{16}
+\indexentry{足}{17}
+\indexentry{身}{18}
+\indexentry{車}{19}
+\indexentry{辛}{10}
+\indexentry{辰}{11}
+\indexentry{辵}{12}
+\indexentry{邑}{13}
+\indexentry{酉}{14}
+\indexentry{釆}{15}
+\indexentry{里}{16}
+\indexentry{金}{17}
+\indexentry{長}{18}
+\indexentry{門}{19}
+\indexentry{阜}{10}
+\indexentry{隶}{11}
+\indexentry{隹}{12}
+\indexentry{雨}{13}
+\indexentry{靑}{14}
+\indexentry{非}{15}
+\indexentry{面}{16}
+\indexentry{革}{17}
+\indexentry{韋}{18}
+\indexentry{韭}{19}
+\indexentry{音}{10}
+\indexentry{頁}{11}
+\indexentry{風}{12}
+\indexentry{飛}{13}
+\indexentry{食}{14}
+\indexentry{首}{15}
+\indexentry{香}{16}
+\indexentry{馬}{17}
+\indexentry{骨}{18}
+\indexentry{高}{19}
+\indexentry{髟}{10}
+\indexentry{鬥}{11}
+\indexentry{鬯}{12}
+\indexentry{鬲}{13}
+\indexentry{鬼}{14}
+\indexentry{魚}{15}
+\indexentry{鳥}{16}
+\indexentry{鹵}{17}
+\indexentry{鹿}{18}
+\indexentry{麥}{19}
+\indexentry{麻}{10}
+\indexentry{黃}{11}
+\indexentry{黍}{12}
+\indexentry{黑}{13}
+\indexentry{黹}{14}
+\indexentry{黽}{15}
+\indexentry{鼎}{16}
+\indexentry{鼓}{17}
+\indexentry{鼠}{18}
+\indexentry{鼻}{19}
+\indexentry{齊}{10}
+\indexentry{齒}{11}
+\indexentry{龍}{12}
+\indexentry{龜}{13}
+\indexentry{龠}{14}
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_zhs.idx b/indexing/upmendex/doc/samples/alphabet/alpha_zhs.idx
new file mode 100644
index 0000000000..990a30acd4
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_zhs.idx
@@ -0,0 +1,58 @@
+\indexentry{一}{1}
+\indexentry{乙}{1}
+\indexentry{二}{2}
+\indexentry{力}{2}
+\indexentry{三}{3}
+\indexentry{山}{3}
+\indexentry{中}{4}
+\indexentry{日}{4}
+\indexentry{目}{5}
+\indexentry{古}{5}
+\indexentry{名}{6}
+\indexentry{多}{6}
+\indexentry{努}{7}
+\indexentry{君}{7}
+\indexentry{京}{8}
+\indexentry{宝}{8}
+\indexentry{信}{9}
+\indexentry{品}{9}
+\indexentry{夏}{10}
+\indexentry{宮}{10}
+\indexentry{商}{11}
+\indexentry{彩}{11}
+\indexentry{最}{12}
+\indexentry{晶}{12}
+\indexentry{勢}{13}
+\indexentry{源}{13}
+\indexentry{態}{14}
+\indexentry{語}{14}
+\indexentry{影}{15}
+\indexentry{暴}{15}
+\indexentry{壁}{16}
+\indexentry{橋}{16}
+\indexentry{優}{17}
+\indexentry{懇}{17}
+\indexentry{職}{18}
+\indexentry{題}{18}
+\indexentry{願}{19}
+\indexentry{鏡}{19}
+\indexentry{競}{20}
+\indexentry{議}{20}
+\indexentry{露}{21}
+\indexentry{躍}{21}
+\indexentry{襲}{22}
+\indexentry{鑑}{23}
+\indexentry{鹼}{24}
+\indexentry{灣}{25}
+\indexentry{驢}{26}
+\indexentry{纜}{27}
+\indexentry{鑿}{28}
+\indexentry{鬱}{29}
+\indexentry{鸞}{30}
+\indexentry{灩}{31}
+\indexentry{龖}{32}
+\indexentry{龗}{33}
+\indexentry{齾}{35}
+\indexentry{齉}{36}
+\indexentry{靐}{39}
+\indexentry{龘}{48}
diff --git a/indexing/upmendex/doc/samples/alphabet/alpha_zhz.idx b/indexing/upmendex/doc/samples/alphabet/alpha_zhz.idx
new file mode 100644
index 0000000000..55ef3df56f
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/alpha_zhz.idx
@@ -0,0 +1,97 @@
+\indexentry{一}{101}
+\indexentry{二}{102}
+\indexentry{三}{103}
+\indexentry{四}{104}
+\indexentry{五}{105}
+\indexentry{六}{106}
+\indexentry{七}{160}
+\indexentry{八}{107}
+\indexentry{九}{108}
+\indexentry{十}{161}
+\indexentry{百}{202}
+\indexentry{千}{203}
+\indexentry{万}{204}
+\indexentry{億}{205}
+\indexentry{兆}{206}
+\indexentry{京}{260}
+\indexentry{春}{110}
+\indexentry{夏}{111}
+\indexentry{秋}{112}
+\indexentry{冬}{113}
+\indexentry{月}{114}
+\indexentry{火}{115}
+\indexentry{水}{116}
+\indexentry{木}{117}
+\indexentry{金}{118}
+\indexentry{土}{119}
+\indexentry{日}{120}
+\indexentry{子}{162}
+\indexentry{丑}{121}
+\indexentry{寅}{122}
+\indexentry{卯}{123}
+\indexentry{辰}{124}
+\indexentry{巳{125}
+\indexentry{午}{128}
+\indexentry{未}{129}
+\indexentry{申}{130}
+\indexentry{酉}{131}
+\indexentry{戌}{132}
+\indexentry{亥}{201}
+\indexentry{甲}{207}
+\indexentry{乙}{208}
+\indexentry{丙}{261}
+\indexentry{丁}{210}
+\indexentry{戊}{211}
+\indexentry{己}{212}
+\indexentry{庚}{213}
+\indexentry{辛}{214}
+\indexentry{壬}{215}
+\indexentry{癸}{216}
+\indexentry{東}{217}
+\indexentry{西}{218}
+\indexentry{南}{219}
+\indexentry{北}{220}
+\indexentry{靑}{221}
+\indexentry{赤}{222}
+\indexentry{黃}{223}
+\indexentry{白}{224}
+\indexentry{黑}{225}
+\indexentry{喜}{226}
+\indexentry{怒}{227}
+\indexentry{哀}{228}
+\indexentry{樂}{229}
+\indexentry{花}{230}
+\indexentry{鳥}{231}
+\indexentry{風}{232}
+\indexentry{月}{233}
+\indexentry{天}{234}
+\indexentry{馬}{235}
+\indexentry{行}{236}
+\indexentry{空}{237}
+\indexentry{品}{238}
+\indexentry{行}{239}
+\indexentry{方}{240}
+\indexentry{正}{241}
+\indexentry{海}{242}
+\indexentry{翁}{243}
+\indexentry{好}{244}
+\indexentry{鷗}{245}
+\indexentry{安}{246}
+\indexentry{心}{247}
+\indexentry{立}{248}
+\indexentry{命}{249}
+\indexentry{勸}{250}
+\indexentry{善}{251}
+\indexentry{懲}{252}
+\indexentry{惡}{253}
+\indexentry{恩}{1002}
+\indexentry{蒽}{1003}
+\indexentry{骯}{1004}
+\indexentry{卬}{1005}
+\indexentry{鞥}{1006}
+\indexentry{阿}{1007}
+\indexentry{嗄}{1008}
+\indexentry{哦}{1009}
+\indexentry{喔}{1010}
+\indexentry{次}{1014}
+\indexentry{促}{1015}
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es1.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es1.ist
new file mode 100644
index 0000000000..1c82c1edfa
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es1.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es11.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es11.ist
new file mode 100644
index 0000000000..bcf1b788f8
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es11.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=traditional"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es12.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es12.ist
new file mode 100644
index 0000000000..bef0b6f818
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es12.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag -1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=traditional"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es13.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es13.ist
new file mode 100644
index 0000000000..804b137c96
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es13.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 2
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=traditional"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es2.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es2.ist
new file mode 100644
index 0000000000..194545e04f
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es2.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag -1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es21.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es21.ist
new file mode 100644
index 0000000000..119652482c
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es21.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=search"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es22.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es22.ist
new file mode 100644
index 0000000000..b9c13151f7
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es22.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag -1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=search"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_es23.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_es23.ist
new file mode 100644
index 0000000000..8f9890b071
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_es23.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 2
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "es@collation=search"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh1.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh1.ist
new file mode 100644
index 0000000000..e52cb7910c
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh1.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh11.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh11.ist
new file mode 100644
index 0000000000..4f4661ec8e
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh11.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh@collation=unihan"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh12.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh12.ist
new file mode 100644
index 0000000000..f2e8c0aa87
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh12.ist
@@ -0,0 +1,13 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh@collation=unihan"
+hanzi_head "一部;丨部;丶部;丿部;乙部;亅部;二部;亠部;人部;儿部;入部;八部;冂部;冖部;冫部;几部;凵部;刀部;力部;勹部;匕部;匚部;匸部;十部;卜部;卩部;厂部;厶部;又部;口部;囗部;土部;士部;夂部;夊部;夕部;大部;女部;子部;宀部;寸部;小部;尢部;尸部;屮部;山部;巛部;工部;己部;巾部;干部;幺部;广部;廴部;廾部;弋部;弓部;彐部;彡部;彳部;心部;戈部;戶部;手部;支部;攴部;文部;斗部;斤部;方部;无部;日部;曰部;月部;木部;欠部;止部;歹部;殳部;毋部;比部;毛部;氏部;气部;水部;火部;爪部;父部;爻部;爿部;片部;牙部;牛部;犬部;玄部;玉部;瓜部;瓦部;甘部;生部;用部;田部;疋部;疒部;癶部;白部;皮部;皿部;目部;矛部;矢部;石部;示部;禸部;禾部;穴部;立部;竹部;米部;糸部;缶部;网部;羊部;羽部;老部;而部;耒部;耳部;聿部;肉部;臣部;自部;至部;臼部;舌部;舛部;舟部;艮部;色部;艸部;虍部;虫部;血部;行部;衣部;襾部;見部;角部;言部;谷部;豆部;豕部;豸部;貝部;赤部;走部;足部;身部;車部;辛部;辰部;辵部;邑部;酉部;釆部;里部;金部;長部;門部;阜部;隶部;隹部;雨部;靑部;非部;面部;革部;韋部;韭部;音部;頁部;風部;飛部;食部;首部;香部;馬部;骨部;高部;髟部;鬥部;鬯部;鬲部;鬼部;魚部;鳥部;鹵部;鹿部;麥部;麻部;黃部;黍部;黑部;黹部;黽部;鼎部;鼓部;鼠部;鼻部;齊部;齒部;龍部;龜部;龠部"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh13.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh13.ist
new file mode 100644
index 0000000000..6fce8ee43c
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh13.ist
@@ -0,0 +1,13 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "ja@collation=unihan"
+hanzi_head "一部;丨部;丶部;丿部;乙部;亅部;二部;亠部;人部;儿部;入部;八部;冂部;冖部;冫部;几部;凵部;刀部;力部;勹部;匕部;匚部;匸部;十部;卜部;卩部;厂部;厶部;又部;口部;囗部;土部;士部;夂部;夊部;夕部;大部;女部;子部;宀部;寸部;小部;尢部;尸部;屮部;山部;巛部;工部;己部;巾部;干部;幺部;广部;廴部;廾部;弋部;弓部;彐部;彡部;彳部;心部;戈部;戸部;手部;支部;攴部;文部;斗部;斤部;方部;无部;日部;曰部;月部;木部;欠部;止部;歹部;殳部;毋部;比部;毛部;氏部;气部;水部;火部;爪部;父部;爻部;爿部;片部;牙部;牛部;犬部;玄部;玉部;瓜部;瓦部;甘部;生部;用部;田部;疋部;疒部;癶部;白部;皮部;皿部;目部;矛部;矢部;石部;示部;禸部;禾部;穴部;立部;竹部;米部;糸部;缶部;网部;羊部;羽部;老部;而部;耒部;耳部;聿部;肉部;臣部;自部;至部;臼部;舌部;舛部;舟部;艮部;色部;艸部;虍部;虫部;血部;行部;衣部;襾部;見部;角部;言部;谷部;豆部;豕部;豸部;貝部;赤部;走部;足部;身部;車部;辛部;辰部;辵部;邑部;酉部;釆部;里部;金部;長部;門部;阜部;隶部;隹部;雨部;靑部;非部;面部;革部;韋部;韭部;音部;頁部;風部;飛部;食部;首部;香部;馬部;骨部;高部;髟部;鬥部;鬯部;鬲部;鬼部;魚部;鳥部;鹵部;鹿部;麥部;麻部;黃部;黍部;黑部;黹部;黽部;鼎部;鼓部;鼠部;鼻部;齊部;齒部;龍部;龜部;龠部"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh14.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh14.ist
new file mode 100644
index 0000000000..7e92ed574f
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh14.ist
@@ -0,0 +1,13 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "ko@collation=unihan"
+hanzi_head "一部;丨部;丶部;丿部;乙部;亅部;二部;亠部;人部;儿部;入部;八部;冂部;冖部;冫部;几部;凵部;刀部;力部;勹部;匕部;匚部;匸部;十部;卜部;卩部;厂部;厶部;又部;口部;囗部;土部;士部;夂部;夊部;夕部;大部;女部;子部;宀部;寸部;小部;尢部;尸部;屮部;山部;巛部;工部;己部;巾部;干部;幺部;广部;廴部;廾部;弋部;弓部;彐部;彡部;彳部;心部;戈部;戶部;手部;支部;攴部;文部;斗部;斤部;方部;无部;日部;曰部;月部;木部;欠部;止部;歹部;殳部;毋部;比部;毛部;氏部;气部;水部;火部;爪部;父部;爻部;爿部;片部;牙部;牛部;犬部;玄部;玉部;瓜部;瓦部;甘部;生部;用部;田部;疋部;疒部;癶部;白部;皮部;皿部;目部;矛部;矢部;石部;示部;禸部;禾部;穴部;立部;竹部;米部;糸部;缶部;网部;羊部;羽部;老部;而部;耒部;耳部;聿部;肉部;臣部;自部;至部;臼部;舌部;舛部;舟部;艮部;色部;艸部;虍部;虫部;血部;行部;衣部;襾部;見部;角部;言部;谷部;豆部;豕部;豸部;貝部;赤部;走部;足部;身部;車部;辛部;辰部;辵部;邑部;酉部;釆部;里部;金部;長部;門部;阜部;隶部;隹部;雨部;靑部;非部;面部;革部;韋部;韭部;音部;頁部;風部;飛部;食部;首部;香部;馬部;骨部;高部;髟部;鬥部;鬯部;鬲部;鬼部;魚部;鳥部;鹵部;鹿部;麥部;麻部;黃部;黍部;黑部;黹部;黽部;鼎部;鼓部;鼠部;鼻部;齊部;齒部;龍部;龜部;龠部"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh2.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh2.ist
new file mode 100644
index 0000000000..359f3b97bd
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh2.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag -1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh21.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh21.ist
new file mode 100644
index 0000000000..499dcf9eff
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh21.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh@collation=stroke"
+
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh22.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh22.ist
new file mode 100644
index 0000000000..6cc7d3252c
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh22.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh@collation=stroke"
+hanzi_head "1画;2画;3画;4画;5画;6画;7画;8画;9画;10画;11画;12画;13画;14画;15画;16画;17画;18画;19画;20画;21画;22画;23画;24画;25画;26画;27画;28画;29画;30画;31画;32画;33画;35画;36画;39画;48画"
diff --git a/indexing/upmendex/doc/samples/alphabet/mdxsty_zh31.ist b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh31.ist
new file mode 100644
index 0000000000..c3584031e7
--- /dev/null
+++ b/indexing/upmendex/doc/samples/alphabet/mdxsty_zh31.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+icu_locale "zh@collation=zhuyin"
+
diff --git a/indexing/upmendex/doc/samples/french.idx b/indexing/upmendex/doc/samples/french.idx
new file mode 100644
index 0000000000..1e1bcec28d
--- /dev/null
+++ b/indexing/upmendex/doc/samples/french.idx
@@ -0,0 +1,18 @@
+\indexentry{Rousseau}{1}
+\indexentry{Rouault}{2}
+\indexentry{Redon}{3}
+\indexentry{Toulouse-Lautrec}{4}
+\indexentry{Gogh}{5}
+\indexentry{Corot}{6}
+\indexentry{Monet}{7}
+\indexentry{Millet}{8}
+\indexentry{Manet}{9}
+\indexentry{Cézanne}{10}
+\indexentry{Seurat}{11}
+\indexentry{Degas}{12}
+\indexentry{Pissarro}{13}
+\indexentry{Renoir}{14}
+\indexentry{Léger}{15}
+\indexentry{Bernard}{16}
+\indexentry{Chagall}{17}
+\indexentry{Braque}{18}
diff --git a/indexing/upmendex/doc/samples/german.idx b/indexing/upmendex/doc/samples/german.idx
new file mode 100644
index 0000000000..453d9733bd
--- /dev/null
+++ b/indexing/upmendex/doc/samples/german.idx
@@ -0,0 +1,19 @@
+\indexentry{Mann}{1}
+\indexentry{Rilke}{2}
+\indexentry{Hofmannsthal}{3}
+\indexentry{Straßburg}{4}
+\indexentry{Grimm}{5}
+\indexentry{Kästner}{6}
+\indexentry{Kafka}{7}
+\indexentry{Brecht}{8}
+\indexentry{Jelinek}{9}
+\indexentry{Grass}{10}
+\indexentry{Hesse}{11}
+\indexentry{Goethe}{12}
+\indexentry{Heine}{13}
+\indexentry{Storm}{14}
+\indexentry{Hoffmann}{15}
+\indexentry{Schiller}{16}
+\indexentry{Hölderlin}{17}
+\indexentry{Büchner}{18}
+\indexentry{Rückert}{19}
diff --git a/indexing/upmendex/doc/samples/greek.idx b/indexing/upmendex/doc/samples/greek.idx
new file mode 100644
index 0000000000..56bbe423ca
--- /dev/null
+++ b/indexing/upmendex/doc/samples/greek.idx
@@ -0,0 +1,10 @@
+\indexentry{Θαλής}{1}
+\indexentry{Πυθαγόρας}{2}
+\indexentry{Ηράκλειτος}{3}
+\indexentry{Δημόκριτος}{4}
+\indexentry{Πρωταγόρας}{5}
+\indexentry{Σωκράτης}{6}
+\indexentry{Πλάτων}{7}
+\indexentry{Ἀριστοτέλης}{8}
+\indexentry{Ζήνων}{9}
+\indexentry{Αναξαγορας}{10}
diff --git a/indexing/upmendex/doc/samples/korean.idx b/indexing/upmendex/doc/samples/korean.idx
new file mode 100644
index 0000000000..63d4cea62f
--- /dev/null
+++ b/indexing/upmendex/doc/samples/korean.idx
@@ -0,0 +1,60 @@
+% -*- coding: utf-8 -*-
+\indexentry{과일}{1}
+\indexentry{사과}{1}
+\indexentry{바나나}{1}
+\indexentry{포도}{1}
+\indexentry{딸기}{1}
+\indexentry{수박}{1}
+\indexentry{귤}{1}
+\indexentry{배}{1}
+\indexentry{복숭아}{1}
+\indexentry{메론}{1}
+\indexentry{키우이}{1}
+\indexentry{레몬}{1}
+\indexentry{야채}{2}
+\indexentry{무}{2}
+\indexentry{오이}{2}
+\indexentry{가지}{2}
+\indexentry{당근}{2}
+\indexentry{배추}{2}
+\indexentry{파}{2}
+\indexentry{옥수수}{2}
+\indexentry{토마토}{2}
+\indexentry{고추}{2}
+\indexentry{재료}{3}
+\indexentry{꿀}{3}
+\indexentry{쌀}{3}
+\indexentry{밥}{3}
+\indexentry{빵}{3}
+\indexentry{음료}{4}
+\indexentry{케키}{4}
+\indexentry{차}{4}
+\indexentry{우유}{4}
+\indexentry{커피}{4}
+\indexentry{홍차}{4}
+\indexentry{녹차}{4}
+\indexentry{주스}{4}
+\indexentry{맥주}{4}
+\indexentry{소주}{4}
+\indexentry{막걸리}{4}
+\indexentry{요리}{5}
+\indexentry{김치}{5}
+\indexentry{나물}{5}
+\indexentry{찌개}{5}
+\indexentry{비빈바}{5}
+\indexentry{불고기}{5}
+\indexentry{국밥}{5}
+\indexentry{갈비}{5}
+\indexentry{떡볶이}{5}
+\indexentry{김밥}{5}
+\indexentry{삼겹살}{5}
+\indexentry{냉면}{5}
+\indexentry{만두}{5}
+\indexentry{도시}{6}
+\indexentry{서울}{6}
+\indexentry{부산@부산(釜山)}{6}
+\indexentry{인천@인천(仁川)}{6}
+\indexentry{대구@대구(大邱)}{6}
+\indexentry{대전@대전(大田)}{6}
+\indexentry{광주@광주(光州)}{6}
+\indexentry{울산@울산(蔚山)}{6}
diff --git a/indexing/upmendex/doc/samples/mdxsty00.ist b/indexing/upmendex/doc/samples/mdxsty00.ist
new file mode 100644
index 0000000000..06c3eea2d0
--- /dev/null
+++ b/indexing/upmendex/doc/samples/mdxsty00.ist
@@ -0,0 +1,10 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
diff --git a/indexing/upmendex/doc/samples/mdxsty01.ist b/indexing/upmendex/doc/samples/mdxsty01.ist
new file mode 100644
index 0000000000..9d9788275f
--- /dev/null
+++ b/indexing/upmendex/doc/samples/mdxsty01.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+character_order "NSKJHGCL"
+
diff --git a/indexing/upmendex/doc/samples/mdxsty02.ist b/indexing/upmendex/doc/samples/mdxsty02.ist
new file mode 100644
index 0000000000..f90af4f925
--- /dev/null
+++ b/indexing/upmendex/doc/samples/mdxsty02.ist
@@ -0,0 +1,17 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag -1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+character_order "JKHGCLSN"
+
+tumunja "가나다라마바사아카"
+%% tumunja "㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭"
+%% tumunja "㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻"
+%% tumunja "㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍"
+%% tumunja "㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛"
diff --git a/indexing/upmendex/doc/samples/multi.idx b/indexing/upmendex/doc/samples/multi.idx
new file mode 100644
index 0000000000..d1051b2cdb
--- /dev/null
+++ b/indexing/upmendex/doc/samples/multi.idx
@@ -0,0 +1,9 @@
+\indexentry{Σωκράτης}{1}
+\indexentry{Чайковский}{2}
+\indexentry{Cézanne}{3}
+\indexentry{Kästner}{4}
+\indexentry{もりおうがい@森鷗外}{5}
+\indexentry{세종대왕@세종대왕(世宗大王)}{6}
+\indexentry{王羲之}{7}
+\indexentry{0123456789}{8}
+\indexentry{¥¥¥¥¥}{9}
diff --git a/indexing/upmendex/doc/samples/option/Makefile b/indexing/upmendex/doc/samples/option/Makefile
new file mode 100644
index 0000000000..8e2746d17c
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/Makefile
@@ -0,0 +1,22 @@
+UPMENDEX = upmendex
+
+#
+# test for icu_rules
+#
+rules:
+ for sty in rule0; do \
+ $(UPMENDEX) -f attri1.idx -s mdxsty_$$sty.ist -o attri1_$$sty.ind ; \
+ done
+
+#
+# test for Japanese
+#
+jp_u:
+ for sty in 00 01 02; do \
+ $(UPMENDEX) japanese.idx -s mdxsty_j$$sty.ist -o japanese_$$sty-umdx.ind ; \
+ $(UPMENDEX) japanese.idx -l -s mdxsty_j$$sty.ist -o japanese_l_$$sty-umdx.ind ; \
+ $(UPMENDEX) japanese.idx -c -s mdxsty_j$$sty.ist -o japanese_c_$$sty-umdx.ind ; \
+ $(UPMENDEX) japanese.idx -l -c -s mdxsty_j$$sty.ist -o japanese_lc_$$sty-umdx.ind ; \
+ $(UPMENDEX) japanese.idx -r -s mdxsty_j$$sty.ist -o japanese_r_$$sty-umdx.ind ; \
+ $(UPMENDEX) japanese.idx -g -s mdxsty_j$$sty.ist -o japanese_g_$$sty-umdx.ind ; \
+ done
diff --git a/indexing/upmendex/doc/samples/option/attri1.idx b/indexing/upmendex/doc/samples/option/attri1.idx
new file mode 100644
index 0000000000..a470ffab42
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/attri1.idx
@@ -0,0 +1,42 @@
+% -*- coding: utf-8 -*-
+\indexentry{delug}{100}
+\indexentry{de-luge}{101}
+\indexentry{delu-ge}{102}
+\indexentry{deluge}{103}
+\indexentry{Deluge}{104}
+\indexentry{deluge-}{105}
+\indexentry{cote}{200}
+\indexentry{coté}{201}
+\indexentry{côte}{202}
+\indexentry{côté}{203}
+\indexentry{black bird}{300}
+\indexentry{black Bird}{301}
+\indexentry{black birds}{302}
+\indexentry{black-bird}{303}
+\indexentry{black-Bird}{304}
+\indexentry{black-birds}{305}
+\indexentry{blackbird}{306}
+\indexentry{blackBird}{307}
+\indexentry{blackbirds}{308}
+\indexentry{A}{400}
+\indexentry{a}{401}
+\indexentry{Ä}{402}
+\indexentry{ä}{403}
+\indexentry{Å}{404}
+\indexentry{å}{405}
+\indexentry{B}{406}
+\indexentry{b}{407}
+\indexentry{E}{408}
+\indexentry{e}{409}
+\indexentry{Ë}{410}
+\indexentry{ë}{411}
+\indexentry{あいうえお}{500}
+\indexentry{アイウエオ}{501}
+\indexentry{アイうえお}{502}
+\indexentry{あいウエオ}{503}
+\indexentry{あイうエお}{504}
+\indexentry{アいウえオ}{505}
+\indexentry{いいいいい}{506}
+\indexentry{イイイイイ}{507}
+\indexentry{い}{508}
+\indexentry{イ}{509}
diff --git a/indexing/upmendex/doc/samples/option/japanese.idx b/indexing/upmendex/doc/samples/option/japanese.idx
new file mode 100644
index 0000000000..f0f6f8ac14
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/japanese.idx
@@ -0,0 +1,34 @@
+% -*- coding: utf-8 -*-
+\indexentry{とうきょう}{1}
+\indexentry{ソウル}{1}
+\indexentry{ペキン}{1}
+\indexentry{ワルシャワ}{1}
+\indexentry{ヰーン}{1}
+\indexentry{ヱリントン}{1}
+\indexentry{ンジャメナ}{1}
+\indexentry{Xlib}{100}
+\indexentry{XView}{101}
+\indexentry{X Window}{102}
+\indexentry{X X}{102}
+\indexentry{X V}{102}
+\indexentry{X T }{102}
+\indexentry{X s}{102}
+\indexentry{X s}{103}
+\indexentry{index sort}{200}
+\indexentry{indファイル}{201}
+\indexentry{ind file}{202}
+\indexentry{か}{1}
+\indexentry{カ}{2}
+\indexentry{かかか}{3}
+\indexentry{かかか}{4}
+\indexentry{かかか}{5}
+\indexentry{かかか}{7}
+\indexentry{かかか}{8--10}
+\indexentry{カカカ}{20}
+\indexentry{カカカ}{21}
+\indexentry{A}{4001}
+\indexentry{B}{4002}
+\indexentry{C}{4003}
+\indexentry{A}{4004}
+\indexentry{B}{4005}
+\indexentry{C}{4006}
diff --git a/indexing/upmendex/doc/samples/option/mdxsty_j00.ist b/indexing/upmendex/doc/samples/option/mdxsty_j00.ist
new file mode 100644
index 0000000000..93ca3f5c15
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/mdxsty_j00.ist
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+priority 0
diff --git a/indexing/upmendex/doc/samples/option/mdxsty_j01.ist b/indexing/upmendex/doc/samples/option/mdxsty_j01.ist
new file mode 100644
index 0000000000..b3b0944301
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/mdxsty_j01.ist
@@ -0,0 +1,11 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+priority 1
diff --git a/indexing/upmendex/doc/samples/option/mdxsty_j02.ist b/indexing/upmendex/doc/samples/option/mdxsty_j02.ist
new file mode 100644
index 0000000000..3b084ba9d8
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/mdxsty_j02.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+priority 1
+letter_head 2
diff --git a/indexing/upmendex/doc/samples/option/mdxsty_rule0.ist b/indexing/upmendex/doc/samples/option/mdxsty_rule0.ist
new file mode 100644
index 0000000000..451656ba59
--- /dev/null
+++ b/indexing/upmendex/doc/samples/option/mdxsty_rule0.ist
@@ -0,0 +1,12 @@
+% -*- coding: utf-8 -*-
+
+delim_0 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_1 "\\leaders\\hbox{$\\cdot$}\\hfill "
+delim_2 "\\leaders\\hbox{$\\cdot$}\\hfill "
+
+lethead_flag 1
+lethead_prefix "\n\\centerline{\\bfseries --- "
+lethead_suffix " ---}\\par\\nobreak"
+
+priority 0
+icu_rules "&a<<<A<\u00EB<<<\xCB<Ä<<<\x{00E4}<b<<B &ア<<<あ"
diff --git a/indexing/upmendex/doc/samples/russian.idx b/indexing/upmendex/doc/samples/russian.idx
new file mode 100644
index 0000000000..3debb48420
--- /dev/null
+++ b/indexing/upmendex/doc/samples/russian.idx
@@ -0,0 +1,17 @@
+\indexentry{Балакирев}{1}
+\indexentry{Кюи}{2}
+\indexentry{Му́соргский}{3}
+\indexentry{Бороди́н}{4}
+\indexentry{Римский-Корсаков}{5}
+\indexentry{Глинка}{6}
+\indexentry{Глазуно́в}{7}
+\indexentry{Чайковский}{8}
+\indexentry{Скрябин}{9}
+\indexentry{Страви́нский}{10}
+\indexentry{Шостакович}{11}
+\indexentry{Прокофьев}{12}
+\indexentry{Хачатурян}{13}
+\indexentry{Кабалевский}{14}
+\indexentry{Шни́тке}{15}
+\indexentry{Рахма́нинов}{16}
+\indexentry{Кали́нников}{17}
diff --git a/indexing/upmendex/doc/upmendex.ja.txt b/indexing/upmendex/doc/upmendex.ja.txt
new file mode 100644
index 0000000000..14809d9bf5
--- /dev/null
+++ b/indexing/upmendex/doc/upmendex.ja.txt
@@ -0,0 +1,430 @@
+upmendex - 索引整形ツール
+
+使用法
+
+ upmendex [-ilqrcgf] [-s sty] [-d dic] [-o ind] [-t log] [-p no] [--] [idx0 idx1 idx2 ...]
+ upmendex --help
+
+
+解説
+
+ upmendex は文書の索引を作成するツールです。 LaTeX により抽出された索引リストファ
+イル(.idx)を並べ替え、実際の索引のソースファイルの形に整形します。makeindex と互
+換性があり、さらに「読み」の扱いの手間を減らすように特殊化されています。
+ 出力される索引の形式は、スタイルファイルに従って決定されます。また、辞書ファイ
+ルを与えることにより、索引中の熟語の読みが登録されます。
+ 索引の階層は3段階まで作成することができます。
+
+
+オプション
+
+ -i 索引リストファイルが指定されている場合でも、標準入力を索引リストとし
+ て使用します。
+
+ -l 索引のソートを文字順で行います。指定されなければ単語順のソートになり
+ ます(ソート方法については後述)。
+
+ -q 静粛モードです。エラーおよび警告以外は標準エラー出力に出力しません。
+
+ -r ページ範囲表現を無効にします。指定しないと、連続して出てくる索引につ
+ いては "1--5" のようにページ範囲で表現されます。
+
+ -c スペースやタブといったブランクを短縮して、すべて1個の半角スペースに
+ します。また、前後のブランクは削除されます。
+
+ -g 日本語の頭文字の区切りを "あかさた・・・わ" にします。指定しないと
+ "あいうえ・・・わをん" になります。
+
+ -f upmendexが未対応のスクリプト(言語)も強制的に出力するモードです。
+
+ -s sty sty ファイルをスタイルファイルと見なします。スタイルファイルを指定し
+ なければ、デフォルトの索引形式で作成します。
+
+ -d dic dic ファイルを辞書ファイルと見なします。辞書ファイルは日本語の
+ <熟語 読み> のリストで構成されます。
+
+ -o ind ind ファイルを出力ファイルと見なします。指定がない場合は最初の入力
+ ファイルの拡張子を.indとしたもの、入力ファイルが標準入力のみであれば
+ 標準出力に出力します。
+
+ -t log log ファイルをログファイルと見なします。指定がない場合は最初の入力
+ ファイルの拡張子を.ilgとしたもの、入力ファイルが標準入力のみであれば
+ 標準エラー出力のみに出力されます。
+
+ -p no no を索引ページの先頭ページとして指定します。また、TeXの.log ファイル
+ を参照することにより any (最終ページの次のページから)、odd (最終ペー
+ ジの次の奇数ページから)、even (最終ページの次の偶数ページから)といっ
+ た指定も可能です。
+
+ --help オプションの要約を表示します。
+
+ -- 以降はオプション文字列と解釈しません。
+
+
+スタイルファイル
+
+ スタイルファイルは makeindex のものと上位互換です。 形式は
+<スタイルパラメータ 引数> のリストで構成されます。パラメータの順序は自由です。
+ 以下にスタイルパラメータの一覧を示します。
+ `%'以降はコメントと見なされます。
+
+入力ファイルスタイルパラメータ
+ keyword <文字列>
+ "\\indexentry"
+ 索引エントリを引数として持つコマンド。
+
+ arg_open <文字>
+ '{'
+ 索引エントリ文字列開始を表す文字。
+
+ arg_close <文字>
+ '}'
+ 索引エントリ文字列終了を表す文字。
+
+ range_open <文字>
+ '('
+ ページ範囲の開始を示す文字。
+
+ range_close <文字>
+ ')'
+ ページ範囲の終了を示す文字。
+
+ level <文字>
+ '!'
+ 従属レベルであることを示す文字。
+
+ actual <文字>
+ '@'
+ このシンボルに続く文字列が実際の索引文字列として出力ファイルに書かれる。
+
+ encap <文字>
+ '|'
+ このシンボルに続く文字列が、ページ番号に付くコマンド名として使われる。
+
+ page_compositor <文字列>
+ "-"
+ 階層化されたページ番号における階層間の区切り文字。
+
+ page_precedence <文字列>
+ "rnaRA"
+ ページ番号の記法の優先順位。'R'および'r'はローマ数字、'n'はアラビア数字、
+ 'A'および'a'はアルファベットによる記法を表す。
+
+ quote <文字>
+ '"'
+ upmendex のパラメータ文字に対するエスケープキャラクタ。
+
+ escape <文字>
+ '\\'
+ 一般的な文字に対するエスケープキャラクタ。
+
+出力ファイルスタイルパラメータ
+
+ preamble <文字列>
+ "\\begin{theindex}\n"
+ 出力ファイルの文字列。
+
+ postamble <文字列>
+ "\n\n\\end{theindex}\n"
+ 出力ファイルの末尾の文字列。
+
+ setpage_prefix <文字列>
+ "\n \\setcounter{page}{"
+ 開始ページを設定するときの、ページ番号の前に付ける文字列。
+
+ setpage_suffix <文字列>
+ "}\n"
+ 開始ページを設定するときの、ページ番号の後に付ける文字列。
+
+ group_skip <文字列>
+ "\n\n \\indexsapce\n"
+ 新項目(頭文字)の前に挿入する縦スペースを表す文字列。
+
+ lethead_prefix <文字列>
+ ""
+ 頭文字の前に付けるコマンド文字列。
+
+ heading_prefix <文字列>
+ ""
+ lethead_prefixと同じ。
+
+ lethead_suffix <文字列>
+ ""
+ 頭文字の後に付けるコマンド文字列。
+
+ heading_suffix <文字列>
+ ""
+ lethead_suffixと同じ。
+
+ lethead_flag <数値>
+ 0
+ 頭文字の出力のフラグ。0のとき出力しない。1のときは英字を大文字で、
+ -1のときは小文字で、2のときはタイトルケースで出力する。
+
+ heading_flag <数値>
+ 0
+ lethead_flagと同じ。
+
+ tumunja <文字列>
+ "ㄱㄴㄷㄹㅁㅂㅅㅇㅈㅊㅋㅌㅍㅎ"
+ ハングル見出し文字。見出し文字を文字列で指定する。(upmendex専用)
+
+ hanzi_head <文字列>
+ ""
+ 漢字見出し文字列。見出し文字列を";"で区切って指定することにより
+ デフォルト設定の文字列を上書きする。(upmendex専用)
+
+ item_0 <文字列>
+ "\n \\item "
+ 主エントリ間に挿入するコマンド。
+
+ item_1 <文字列>
+ "\n \\subitem "
+ サブエントリ間に挿入するコマンド。
+
+ item_2 <文字列>
+ "\n \\subsubitem "
+ サブサブエントリ間に挿入するコマンド。
+
+ item_01 <文字列>
+ "\n \\subitem "
+ 主〜サブエントリ間に挿入するコマンド。
+
+ item_x1 <文字列>
+ "\n \\subitem "
+ 主〜サブエントリ間に挿入するコマンド。(主エントリにページ番号がないとき)
+
+ item_12 <文字列>
+ "\n \\subsubitem "
+ サブ〜サブサブエントリ間に挿入するコマンド。
+
+ item_x2 <文字列>
+ "\n \\subsubitem "
+ サブ〜サブサブエントリ間に挿入するコマンド。(サブエントリにページ番号が
+ ないとき)
+
+ delim_0 <文字列>
+ ", "
+ 主エントリと最初のページ番号の間の区切り文字列。
+
+ delim_1 <文字列>
+ ", "
+ サブエントリと最初のページ番号の間の区切り文字列。
+
+ delim_2 <文字列>
+ ", "
+ サブサブエントリと最初のページ番号の間の区切り文字列。
+
+ delim_n <文字列>
+ ", "
+ ページ番号間の区切り文字列。どのエントリレベルにも共通。
+
+ delim_r <文字列>
+ "--"
+ ページ範囲を示すときの、ページ番号間の区切り文字列。
+
+ delim_t <文字列>
+ ""
+ ページ番号のリストの終端に出力する文字列。
+
+ suffix_2p <文字列>
+ ""
+ ページ番号が2ページ連続する場合に、delim_n と2ページ目の番号の代わりに
+ 付加する文字列。
+ 文字列が定義されている場合にのみ有効。
+
+ suffix_3p <文字列>
+ ""
+ ページ番号が3ページ連続する場合に、delim_r と3ページ目の番号の代わりに
+ 付加する文字列。suffix_mp より優先される。
+ 文字列が定義されている場合にのみ有効。
+
+ suffix_mp <文字列>
+ ""
+ ページ番号が3ページまたはそれ以上連続する場合に、delim_r と末尾のページ
+ 番号の代わりに付加する文字列。
+ 文字列が定義されている場合にのみ有効。
+
+ encap_prefix <文字列>
+ "\\"
+ ページ番号にコマンドを付けるときの、コマンド名の前に付ける文字列。
+
+ encap_infix <文字列>
+ "{"
+ ページ番号にコマンドを付けるときの、ページ番号の前に付ける文字列。
+
+ encap_suffix <文字列>
+ "}"
+ ページ番号にコマンドを付けるときの、ページ番号の後に付ける文字列。
+
+ line_max <数値>
+ 72
+ 1行の最大文字数。それを超えると折り返す。
+
+ indent_space <文字列>
+ "\t\t"
+ 折り返した行の頭に挿入するスペース。
+
+ indent_length <数値>
+ 16
+ 折り返した行の頭に挿入されるスペースの長さ。
+
+ symhead_positive <文字列>
+ "Symbols"
+ lethead_flag または heading_flag が正数の場合に数字・記号の頭文字として
+ 出力する文字列。
+
+ symhead_negative <文字列>
+ "symbols"
+ lethead_flag または heading_flag が負数の場合に数字・記号の頭文字として
+ 出力する文字列。
+
+ symbol <文字列>
+ ""
+ symbol_flag が0でない場合に、数字・記号の頭文字として出力する文字列。
+ 文字列が定義されていれば、symhead_positive および symhead_negative より
+ 優先される。((up)mendex専用)
+
+ symbol_flag <数値>
+ 1
+ symbol の出力フラグ。0のとき出力しない。((up)mendex専用)
+
+ letter_head <数値>
+ 1
+ 日本語の頭文字の出力のフラグ。1のときカタカナ、2のときひらがなで出力する。
+ ((up)mendex専用)
+
+ priority <数値>
+ 0
+ 日本語以外の文字(ラテン文字など)と日本語との混在した索引語のソート方法についてのフラグ。
+ 0でなければ日本語以外の文字と日本語との間に半角スペースを入れた状態でソートする。
+ ((up)mendex専用)
+
+ character_order <文字列>
+ "SNLGCJKH"
+ 記号、英字、日本語の優先順位。'S'は記号、'N'は数字、'L'はラテン文字、
+ 'G'はギリシャ文字、'C'はキリル文字、'J'は日本語(かな)、'K'はハングル、
+ 'H'は漢字を表す。(upmendex専用)
+
+ icu_locale <文字列>
+ ""
+ ICU collatorにおいて従うlocale。
+ 空文字列(デフォルト)のときは、"root sort order"に従う。
+ (upmendex専用)
+
+ icu_rules <文字列>
+ ""
+ ICU collatorにおいてlocaleによらずに照合順序を指定する場合、
+ 照合順序のルールを示す文字列。
+ ( Ref. http://userguide.icu-project.org/collation/customization
+ http://www.unicode.org/reports/tr35/tr35-collation.html#Rules )
+ UTF-8のUnicode文字及び、以下のエスケープ文字列が使用可能である:
+ \Uhhhhhhhh (16進数[0-9A-Fa-f]を8桁), \uhhhh (16進数を4桁),
+ \xhh (16進数を2桁), \x{h...} (16進数を1〜8桁), \ooo (8進数[0-7]を3桁)。
+ 空文字列(デフォルト)のときは、localeによる照合順序のルールに従う。
+ (upmendex専用)
+
+ icu_attributes <文字列>
+ ""
+ ICU collatorのattribute指定。
+ ( Ref. http://userguide.icu-project.org/collation/customization
+ http://www.unicode.org/reports/tr35/tr35-collation.html#Setting_Options )
+ 以下の文字列を解釈する:
+ "alternate:shifted", "alternate:non-ignorable",
+ "strength:primary", "strength:secondary", "strength:tertiary",
+ "strength:quaternary", "strength:identical",
+ "french-collation:on", "french-collation:off",
+ "case-first:off", "case-first:upper-first", "case-first:lower-first",
+ "case-level:on", "case-level:off",
+ "normalization-mode:on", "normalization-mode:off"
+ (upmendex専用)
+
+
+日本語の扱いについて
+
+ upmendex は日本語の索引をできるだけ楽に扱えるようになっています。
+ makeindex では日本語の索引が正しく辞書順にソートするためにはひらがなまたはカタ
+カナに揃え、拗音、撥音、濁点を除いた読みを付けなければなりませんでした(自動的に
+揃えるバージョンもある)。
+ upmendex ではカナについてはInternational Components for Unicode (ICU)による
+ソートを行います。また漢字については辞書ファイルを設定することにより各索引語ごと
+に読みを付ける作業をかなり解消できます。
+
+ 辞書ファイルは <熟語 読み> のリストで構成されます。熟語と読みの区切りはタブま
+たはスペースです。
+
+ 以下に辞書の例を示します。
+
+ 漢字 かんじ
+ 読み よみ
+ 環境 かんきょう
+ α アルファ
+
+ 辞書に登録する熟語は、読み方が1通りになるよう送り仮名を付けてください。
+ 「表」、「性質」のように送り仮名によらず2通りの読み方ができる語についてはどち
+らか1つしか登録できません。他の読み方については各索引語へ読みを付けることで対応
+してください。
+ また、環境変数 INDEXDEFAULTDICTIONARY に辞書ファイルを登録することにより、
+自動的に辞書を参照します。環境変数に登録した辞書は -d で指定した辞書と併用できま
+す。
+
+
+ソート方法について
+
+ upmendex は通常は入力された索引語をそのままソートします。-l オプションが付けられ
+た場合、複数の単語で構成される索引語については、ソートするときに単語と単語の間の
+スペースを詰めてソートします。
+ ここでは前者を単語順ソート、後者を文字順ソートと呼ぶことにします。
+ 文字順ソートの場合、実際に出力される文字列はスペースを含んだ状態のものなので、
+索引語自体が変化することはありません。
+
+ 以下に例を示します。
+
+ 単語順ソート 文字順ソート
+ X Window Xlib
+ Xlib XView
+ XView X Window
+
+ また、日本語〜日本語以外の文字(ラテン文字など)間でも似たようなソート方法があります。
+スタイルファイルでpriority に0以外を指定した場合、隣接した日本語と日本語以外の文字
+(ラテン文字など)の間にスペースを入れてソートします。
+
+ 以下に例を示します。
+
+ priority=0 priority=1
+ index sort indファイル
+ indファイル index sort
+
+
+環境変数
+
+ upmendex では以下のような環境変数を使用しています。
+
+ INDEXSTYLE
+ 索引スタイルファイルがあるディレクトリ
+
+ INDEXDEFAULTSTYLE
+ デフォルトで参照する索引スタイルファイル
+
+ INDEXDICTIONARY
+ 辞書があるディレクトリ
+
+ INDEXDEFAULTDICTIONARY
+ 常に参照する辞書ファイル
+
+
+詳細について
+
+ その他、仕様の詳細については makeindex と同じです。
+
+
+問題点等
+
+ 複数のページ記法を使用する場合、ページ順に.idxファイルを与えないとページ番号を
+誤認することがあります。
+
+
+参考
+
+International Components for Unicode (ICU)
+http://site.icu-project.org/