summaryrefslogtreecommitdiff
path: root/language/japanese/japanese-otf-uptex/test
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-11-15 03:02:26 +0000
committerNorbert Preining <norbert@preining.info>2020-11-15 03:02:26 +0000
commitf23cf64aec54b58502f0f334eab0ea486a317586 (patch)
tree19330e378b10eb1c92022d5fd3bc8c4b1e5f729a /language/japanese/japanese-otf-uptex/test
parent22ba19a8c9224d6e229b882ff226c05967f13ffd (diff)
CTAN sync 202011150302
Diffstat (limited to 'language/japanese/japanese-otf-uptex/test')
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/Makefile33
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex9
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-cjk.tex344
-rw-r--r--language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-haranoaji.map175
4 files changed, 555 insertions, 6 deletions
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/Makefile b/language/japanese/japanese-otf-uptex/test/uplatex/Makefile
index 78974e127f..eaaaf9b1a6 100644
--- a/language/japanese/japanese-otf-uptex/test/uplatex/Makefile
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/Makefile
@@ -3,10 +3,10 @@ PTEX = ptex
UPLATEX = uplatex
PLATEX = platex -kanji=utf8
DVIPS = dvips
-DVIPDFMX = dvipdfmx
+DVIPDFMX = dvipdfmx -v
PDVITYPE = pdvitype
-all: otf sp art bsrg jis04 scale prop punct exclam
+all: otf sp art brsg jis04 scale prop punct exclam
otf: uplatex-otf platex-otf
sp: uplatex-sp platex-sp
@@ -16,6 +16,7 @@ jis04: uplatex-jis04 platex-jis04
scale: uplatex-scale platex-scale
prop: uplatex-prop platex-prop
exclam: uplatex-exclam platex-exclam
+utfmacro: uplatex-utfmacro platex-utfmacro
uplatex-otf:
for opt in default deluxe expert bold noreplace; do \
@@ -101,10 +102,10 @@ uplatex-jis04:
for jis in 00 04; do \
$(UPLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{ujarticle}\input" upjis2004.tex ; \
mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-h-uplatex.dvi ; \
- $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-h-uplatex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map upjis2004-$$opt-$$brsg-$$jis-h-uplatex.dvi ; \
$(UPLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{utarticle}\input" upjis2004.tex ; \
mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-v-uplatex.dvi ; \
- $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-v-uplatex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map upjis2004-$$opt-$$brsg-$$jis-v-uplatex.dvi ; \
done \
done \
done
@@ -115,10 +116,10 @@ platex-jis04:
for jis in 00 04; do \
$(PLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{jarticle}\input" upjis2004.tex ; \
mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-h-platex.dvi ; \
- $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-h-platex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map upjis2004-$$opt-$$brsg-$$jis-h-platex.dvi ; \
$(PLATEX) "\def\option{$$opt}\def\burasage{$$brsg}\def\jisvar{$$jis}\def\class{tarticle}\input" upjis2004.tex ; \
mv upjis2004.dvi upjis2004-$$opt-$$brsg-$$jis-v-platex.dvi ; \
- $(DVIPDFMX) upjis2004-$$opt-$$brsg-$$jis-v-platex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map upjis2004-$$opt-$$brsg-$$jis-v-platex.dvi ; \
done \
done \
done
@@ -188,5 +189,25 @@ platex-exclam:
$(DVIPDFMX) exclam-$$opt-platex.dvi ; \
done
+uplatex-utfmacro:
+ for opt in default deluxe bold; do \
+ $(UPLATEX) "\def\option{$$opt}\def\class{ujarticle}\input" utfmacro-cjk.tex ; \
+ mv utfmacro-cjk.dvi utfmacro-cjk-$$opt-h-uplatex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map utfmacro-cjk-$$opt-h-uplatex.dvi ; \
+ $(UPLATEX) "\def\option{$$opt}\def\class{utarticle}\input" utfmacro-cjk.tex ; \
+ mv utfmacro-cjk.dvi utfmacro-cjk-$$opt-v-uplatex.dvi ; \
+ $(DVIPDFMX) -l -f utfmacro-haranoaji.map utfmacro-cjk-$$opt-v-uplatex.dvi ; \
+ done
+
+platex-utfmacro:
+ for opt in default deluxe bold; do \
+ $(PLATEX) "\def\option{$$opt}\def\class{jarticle}\input" utfmacro-cjk.tex ; \
+ mv utfmacro-cjk.dvi utfmacro-cjk-$$opt-h-platex.dvi ; \
+ $(DVIPDFMX) -f utfmacro-haranoaji.map utfmacro-cjk-$$opt-h-platex.dvi ; \
+ $(PLATEX) "\def\option{$$opt}\def\class{tarticle}\input" utfmacro-cjk.tex ; \
+ mv utfmacro-cjk.dvi utfmacro-cjk-$$opt-v-platex.dvi ; \
+ $(DVIPDFMX) -l -f utfmacro-haranoaji.map utfmacro-cjk-$$opt-v-platex.dvi ; \
+ done
+
clean:
rm -f *.aux *.log *.dvi *.pdf
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex
index b7c8a5f5f5..45f57f8390 100644
--- a/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/uotftest-utf8.tex
@@ -103,6 +103,15 @@ mg/m & {\mgfamily ひらかな} & {\mgfamily 漢字} & {\mgfamily\UTF{9DD7}} & {
アイウエオ\raisebox\baseshift{\frame{ア}\frame{イ}\frame{ウ}\frame{エ}\frame{オ}}
+% \UTF{}はまだ半角片仮名に対応していない。
+UTF:\UTF{FF71}\UTF{FF72}\UTF{FF73}\UTF{FF74}\UTF{FF75}%
+\raisebox\baseshift{\frame{\UTF{FF71}}\frame{\UTF{FF72}}\frame{\UTF{FF73}}\frame{\UTF{FF74}}\frame{\UTF{FF75}}}
+
+UTF:%
+\UTF{FF61}\UTF{FF62}\UTF{FF63}\UTF{FF64}\UTF{FF65}\UTF{FF66}\UTF{FF67}\UTF{FF68}\UTF{FF69}\UTF{FF6A}\UTF{FF6B}\UTF{FF6C}\UTF{FF6D}\UTF{FF6E}\UTF{FF6F},%
+\UTF{FF70}\UTF{FF71}\UTF{FF72}\UTF{FF73}\UTF{FF74}\UTF{FF75}\UTF{FF76}\UTF{FF77}\UTF{FF78}\UTF{FF79}\UTF{FF7A}\UTF{FF7B}\UTF{FF7C}\UTF{FF7D}\UTF{FF7E}\UTF{FF7F},%
+\UTF{FF80}\UTF{FF81}\UTF{FF82}\UTF{FF83}\UTF{FF84}\UTF{FF85}\UTF{FF86}\UTF{FF87}\UTF{FF88}\UTF{FF89}\UTF{FF8A}\UTF{FF8B}\UTF{FF8C}\UTF{FF8D}\UTF{FF8E}\UTF{FF8F},%
+\UTF{FF90}\UTF{FF91}\UTF{FF92}\UTF{FF93}\UTF{FF94}\UTF{FF95}\UTF{FF96}\UTF{FF97}\UTF{FF98}\UTF{FF99}\UTF{FF9A}\UTF{FF9B}\UTF{FF9C}\UTF{FF9D}\UTF{FF9E}\UTF{FF9F}
\clearpage
[mc/m]
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-cjk.tex b/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-cjk.tex
new file mode 100644
index 0000000000..0a48aec4a8
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-cjk.tex
@@ -0,0 +1,344 @@
+% -*- coding: utf-8 -*-
+\newif\ifuptexmode\uptexmodefalse
+\ifnum\jis"2121="3000 \uptexmodetrue\fi
+
+\makeatletter
+
+\def\@opt@{multi}
+\def\@default{default}
+\def\@jarticle{jarticle}
+\def\@tarticle{tarticle}
+\def\@utarticle{utarticle}
+\def\@landscape@{}
+
+\ifx\option\@undefined
+ \def\option{default}
+\fi
+\ifx\option\@default
+\else
+ \edef\@opt@{\option,\@opt@}
+\fi
+
+\ifx\class\@undefined
+ \ifuptexmode
+ \def\class{ujarticle}
+ \else
+ \def\class{jarticle}
+ \fi
+\fi
+
+\def\baseshift{-.12zh}
+\ifx\class\@tarticle\def\baseshift{-.5zh}\def\@landscape@{,landscape}\fi
+\ifx\class\@utarticle\def\baseshift{-.5zh}\def\@landscape@{,landscape}\fi
+
+\ifuptexmode
+ \edef\@opt@{uplatex,\@opt@}
+\fi
+%\documentclass[a4paper,titlepage,draft]{\class}
+%\documentclass[a4paper,titlepage,draft,landscape]{\class}
+\documentclass[a4paper,titlepage,draft\@landscape@]{\class}
+
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage[\@opt@]{otf}
+
+\newif\ifdeluxemode\deluxemodefalse
+\if@deluxe\deluxemodetrue\fi
+
+\makeatother
+
+
+\textheight250mm
+\topmargin-15mm
+\begin{document}
+\parindent0mm
+クラス:\texttt{\class}\\
+オプション:\texttt{\option}
+
+\section{\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} こんにちは Einenschönen Tag}
+
+\begin{tabular}{cccc}
+日本 & 簡体字 & 繁體字 & 朝鮮\\\hline
+\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0} &
+\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0} &
+\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0} &
+\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}
+\end{tabular}
+
+% Adobe-Japan, Adobe-GB, Adobe-CNS, Adobe-KoreaでU+007F..00FFかつfullwidthとなっているもの。
+\begin{tabular}{rl}
+J &
+\UTF{00a7}\UTF{00a8}\UTF{00b0}\UTF{00b1}\UTF{00b4}\UTF{00b6}\UTF{00d7}\UTF{00f7}\\
+C &
+\UTFC{00a4}\UTFC{00a7}\UTFC{00a8}\UTFC{00b0}\UTFC{00b1}\UTFC{00b7}\UTFC{00d7}\UTFC{00e0}\UTFC{00e1}\UTFC{00e8}\UTFC{00e9}\UTFC{00ea}\UTFC{00ec}\UTFC{00ed}\UTFC{00f2}\UTFC{00f3}\UTFC{00f7}\UTFC{00f9}\UTFC{00fa}\UTFC{00fc}\\
+T &
+\UTFT{00a5}\UTFT{00a7}\UTFT{00a8}\UTFT{00ac}\UTFT{00af}\UTFT{00b0}\UTFT{00b1}\UTFT{00b7}\UTFT{00c0}\UTFT{00c1}\UTFT{00c8}\UTFT{00c9}\UTFT{00ca}\UTFT{00d2}\UTFT{00d3}\UTFT{00d7}\UTFT{00e0}\UTFT{00e1}\UTFT{00e8}\UTFT{00e9}\UTFT{00ea}\UTFT{00ec}\UTFT{00ed}\UTFT{00f2}\UTFT{00f3}\UTFT{00f7}\UTFT{00f8}\UTFT{00f9}\UTFT{00fa}\UTFT{00fc}\\
+K &
+\UTFK{00a1}\UTFK{00a4}\UTFK{00a7}\UTFK{00a8}\UTFK{00aa}\UTFK{00ab}\UTFK{00b0}\UTFK{00b1}\UTFK{00b4}\UTFK{00b6}\UTFK{00b7}\UTFK{00b8}\UTFK{00b9}\UTFK{00ba}\UTFK{00bb}\UTFK{00bc}\UTFK{00bd}\UTFK{00be}\UTFK{00bf}\UTFK{00c6}\UTFK{00d0}\UTFK{00d7}\UTFK{00d8}\UTFK{00de}\UTFK{00df}\UTFK{00e6}\UTFK{00f0}\UTFK{00f7}\UTFK{00f8}\UTFK{00fe}
+\end{tabular}
+
+\subsection{\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} こんにちは Einenschönen Tag}
+
+\ifdeluxemode
+{\mcfamily\ltseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\fi% \ifdeluxemode
+{\mcfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\mcfamily\bfseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\gtfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\gtfamily\bfseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\ifdeluxemode
+{\gtfamily\ebseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\mgfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\fi% \ifdeluxemode
+
+\subsubsection{\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} こんにちは Einenschönen Tag}
+
+{\footnotesize
+\ifdeluxemode
+{\mcfamily\ltseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\fi% \ifdeluxemode
+{\mcfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\mcfamily\bfseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\gtfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\gtfamily\bfseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\ifdeluxemode
+{\gtfamily\ebseries
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+{\mgfamily
+\UTFC{4F60}\UTFC{597D} \UTFT{60A8}\UTFT{597D} \UTFK{C548}\UTFK{B155} %你好 您好 안녕
+こんにちは Einenschönen Tag\\
+}%
+\fi% \ifdeluxemode
+}
+
+\section{penalty}
+\edef\bs{$\backslash$\kern0em}
+
+\fbox{\parbox{4.7zw}{君の名は。}}~UTF8
+
+\fbox{\parbox{4.7zw}{君の名は\char\kuten"0103}}~\bs char\bs kuten
+
+\fbox{\parbox{4.7zw}{君の名は\UTF{3002}}}~\bs UTF\{\}
+
+\ifuptexmode
+\fbox{\parbox{4.7zw}{君の名は\kchar"3002}}~\bs kchar
+\fi
+
+
+\fbox{\parbox{4.7zw}{君の名は.}}~UTF8
+
+\fbox{\parbox{4.7zw}{君の名は\char\kuten"0105}}~\bs char\bs kuten
+
+\fbox{\parbox{4.7zw}{君の名は\UTF{FF0E}}}~\bs UTF\{\}
+
+\ifuptexmode
+\fbox{\parbox{4.7zw}{君の名は\kchar"FF0E}}~\bs kchar
+\fi
+
+
+\clearpage
+[mc/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+
+{\bfseries%
+[mc/bx]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+
+
+\ifdeluxemode
+{\ltseries%
+[mc/l]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+\fi% \ifdeluxemode
+
+{\gtfamily
+[gt/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+
+{\gtfamily\bfseries%
+[gt/bx]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+
+\ifdeluxemode
+{\gtfamily\ebseries%
+[gt/eb]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+
+{\mgfamily
+[mg/m]
+
+ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのは
+ばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんヽヾゝゞー
+\ifuptexmode
+ゔゕゖ
+\fi
+
+ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハ
+バパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ
+\ifuptexmode
+ヷヸヹヺㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ
+\fi
+
+“回”、‘回’。“回”,‘回’.
+
+日本:\UTF{9aa8}\UTF{6d77}\UTF{76f4}\UTF{8ff0}~~簡体字:\UTFC{9aa8}\UTFC{6d77}\UTFC{76f4}\UTFC{8ff0}~~繁體字:\UTFT{9aa8}\UTFT{6d77}\UTFT{76f4}\UTFT{8ff0}~~朝鮮:\UTFK{9aa8}\UTFK{6d77}\UTFK{76f4}\UTFK{8ff0}\\
+\UTFC{4F60}\UTFC{597D}~~%你好
+\UTFT{4F60}\UTFT{597D}~~%你好
+\UTFK{C548}\UTFK{B155}%안녕
+}
+\fi% \ifdeluxemode
+
+
+\end{document}
+
diff --git a/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-haranoaji.map b/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-haranoaji.map
new file mode 100644
index 0000000000..cdf3886424
--- /dev/null
+++ b/language/japanese/japanese-otf-uptex/test/uplatex/utfmacro-haranoaji.map
@@ -0,0 +1,175 @@
+hminr-h H HaranoAjiMincho-Regular.otf
+hminb-h H HaranoAjiMincho-Bold.otf
+hminl-h H HaranoAjiMincho-Light.otf
+hgothr-h H HaranoAjiGothic-Regular.otf
+hgothb-h H HaranoAjiGothic-Medium.otf
+hgotheb-h H HaranoAjiGothic-Bold.otf
+hmgothr-h H HaranoAjiGothic-Heavy.otf
+hminr-v V HaranoAjiMincho-Regular.otf
+hminb-v V HaranoAjiMincho-Bold.otf
+hminl-v V HaranoAjiMincho-Light.otf
+hgothr-v V HaranoAjiGothic-Regular.otf
+hgothb-v V HaranoAjiGothic-Medium.otf
+hgotheb-v V HaranoAjiGothic-Bold.otf
+hmgothr-v V HaranoAjiGothic-Heavy.otf
+
+hminrn-h H HaranoAjiMincho-Regular.otf
+hminbn-h H HaranoAjiMincho-Bold.otf
+hminln-h H HaranoAjiMincho-Light.otf
+hgothrn-h H HaranoAjiGothic-Regular.otf
+hgothbn-h H HaranoAjiGothic-Medium.otf
+hgothebn-h H HaranoAjiGothic-Bold.otf
+hmgothrn-h H HaranoAjiGothic-Heavy.otf
+hminrn-v V HaranoAjiMincho-Regular.otf
+hminbn-v V HaranoAjiMincho-Bold.otf
+hminln-v V HaranoAjiMincho-Light.otf
+hgothrn-v V HaranoAjiGothic-Regular.otf
+hgothbn-v V HaranoAjiGothic-Medium.otf
+hgothebn-v V HaranoAjiGothic-Bold.otf
+hmgothrn-v V HaranoAjiGothic-Heavy.otf
+
+uphminr-h UniJISup-UTF16-H HaranoAjiMincho-Regular.otf
+uphminb-h UniJISup-UTF16-H HaranoAjiMincho-Bold.otf
+uphminl-h UniJISup-UTF16-H HaranoAjiMincho-Light.otf
+uphgothr-h UniJISup-UTF16-H HaranoAjiGothic-Regular.otf
+uphgothb-h UniJISup-UTF16-H HaranoAjiGothic-Medium.otf
+uphgotheb-h UniJISup-UTF16-H HaranoAjiGothic-Bold.otf
+uphmgothr-h UniJISup-UTF16-H HaranoAjiGothic-Heavy.otf
+uphminr-v UniJISup-UTF16-V HaranoAjiMincho-Regular.otf
+uphminb-v UniJISup-UTF16-V HaranoAjiMincho-Bold.otf
+uphminl-v UniJISup-UTF16-V HaranoAjiMincho-Light.otf
+uphgothr-v UniJISup-UTF16-V HaranoAjiGothic-Regular.otf
+uphgothb-v UniJISup-UTF16-V HaranoAjiGothic-Medium.otf
+uphgotheb-v UniJISup-UTF16-V HaranoAjiGothic-Bold.otf
+uphmgothr-v UniJISup-UTF16-V HaranoAjiGothic-Heavy.otf
+
+uphminrn-h UniJIS2004up-UTF16-H HaranoAjiMincho-Regular.otf
+uphminbn-h UniJIS2004up-UTF16-H HaranoAjiMincho-Bold.otf
+uphminln-h UniJIS2004up-UTF16-H HaranoAjiMincho-Light.otf
+uphgothrn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Regular.otf
+uphgothbn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Medium.otf
+uphgothebn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Bold.otf
+uphmgothrn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Heavy.otf
+uphminrn-v UniJIS2004up-UTF16-V HaranoAjiMincho-Regular.otf
+uphminbn-v UniJIS2004up-UTF16-V HaranoAjiMincho-Bold.otf
+uphminln-v UniJIS2004up-UTF16-V HaranoAjiMincho-Light.otf
+uphgothrn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Regular.otf
+uphgothbn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Medium.otf
+uphgothebn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Bold.otf
+uphmgothrn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Heavy.otf
+
+otf-ujmr-h UniJISup-UTF16-H HaranoAjiMincho-Regular.otf
+otf-ujmb-h UniJISup-UTF16-H HaranoAjiMincho-Bold.otf
+otf-ujml-h UniJISup-UTF16-H HaranoAjiMincho-Light.otf
+otf-ujgr-h UniJISup-UTF16-H HaranoAjiGothic-Regular.otf
+otf-ujgb-h UniJISup-UTF16-H HaranoAjiGothic-Medium.otf
+otf-ujge-h UniJISup-UTF16-H HaranoAjiGothic-Bold.otf
+otf-ujmgr-h UniJISup-UTF16-H HaranoAjiGothic-Heavy.otf
+
+otf-ujmrn-h UniJIS2004up-UTF16-H HaranoAjiMincho-Regular.otf
+otf-ujmbn-h UniJIS2004up-UTF16-H HaranoAjiMincho-Bold.otf
+otf-ujmln-h UniJIS2004up-UTF16-H HaranoAjiMincho-Light.otf
+otf-ujgrn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Regular.otf
+otf-ujgbn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Medium.otf
+otf-ujgen-h UniJIS2004up-UTF16-H HaranoAjiGothic-Bold.otf
+otf-ujmgrn-h UniJIS2004up-UTF16-H HaranoAjiGothic-Heavy.otf
+
+otf-ucmr-h UniGB-UTF16-H HaranoAjiMinchoCN-Regular.otf
+otf-ucmb-h UniGB-UTF16-H HaranoAjiMinchoCN-Bold.otf
+otf-ucml-h UniGB-UTF16-H HaranoAjiMinchoCN-Light.otf
+otf-ucgr-h UniGB-UTF16-H HaranoAjiGothicCN-Regular.otf
+otf-ucgb-h UniGB-UTF16-H HaranoAjiGothicCN-Medium.otf
+otf-ucge-h UniGB-UTF16-H HaranoAjiGothicCN-Bold.otf
+otf-ucmgr-h UniGB-UTF16-H HaranoAjiGothicCN-Heavy.otf
+
+otf-utmr-h UniCNS-UTF16-H HaranoAjiMinchoTW-Regular.otf
+otf-utmb-h UniCNS-UTF16-H HaranoAjiMinchoTW-Bold.otf
+otf-utml-h UniCNS-UTF16-H HaranoAjiMinchoTW-Light.otf
+otf-utgr-h UniCNS-UTF16-H HaranoAjiGothicTW-Regular.otf
+otf-utgb-h UniCNS-UTF16-H HaranoAjiGothicTW-Medium.otf
+otf-utge-h UniCNS-UTF16-H HaranoAjiGothicTW-Bold.otf
+otf-utmgr-h UniCNS-UTF16-H HaranoAjiGothicTW-Heavy.otf
+
+otf-ukmr-h UniKS-UTF16-H HaranoAjiMinchoK1-Regular.otf
+otf-ukmb-h UniKS-UTF16-H HaranoAjiMinchoK1-Bold.otf
+otf-ukml-h UniKS-UTF16-H HaranoAjiMinchoK1-Light.otf
+otf-ukgr-h UniKS-UTF16-H HaranoAjiGothicK1-Regular.otf
+otf-ukgb-h UniKS-UTF16-H HaranoAjiGothicK1-Medium.otf
+otf-ukge-h UniKS-UTF16-H HaranoAjiGothicK1-Bold.otf
+otf-ukmgr-h UniKS-UTF16-H HaranoAjiGothicK1-Heavy.otf
+
+otf-ujmr-v UniJISup-UTF16-V HaranoAjiMincho-Regular.otf
+otf-ujmb-v UniJISup-UTF16-V HaranoAjiMincho-Bold.otf
+otf-ujml-v UniJISup-UTF16-V HaranoAjiMincho-Light.otf
+otf-ujgr-v UniJISup-UTF16-V HaranoAjiGothic-Regular.otf
+otf-ujgb-v UniJISup-UTF16-V HaranoAjiGothic-Medium.otf
+otf-ujge-v UniJISup-UTF16-V HaranoAjiGothic-Bold.otf
+otf-ujmgr-v UniJISup-UTF16-V HaranoAjiGothic-Heavy.otf
+
+otf-ujmrn-v UniJIS2004up-UTF16-V HaranoAjiMincho-Regular.otf
+otf-ujmbn-v UniJIS2004up-UTF16-V HaranoAjiMincho-Bold.otf
+otf-ujmln-v UniJIS2004up-UTF16-V HaranoAjiMincho-Light.otf
+otf-ujgrn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Regular.otf
+otf-ujgbn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Medium.otf
+otf-ujgen-v UniJIS2004up-UTF16-V HaranoAjiGothic-Bold.otf
+otf-ujmgrn-v UniJIS2004up-UTF16-V HaranoAjiGothic-Heavy.otf
+
+otf-ucmr-v UniGB-UTF16-V HaranoAjiMinchoCN-Regular.otf
+otf-ucmb-v UniGB-UTF16-V HaranoAjiMinchoCN-Bold.otf
+otf-ucml-v UniGB-UTF16-V HaranoAjiMinchoCN-Light.otf
+otf-ucgr-v UniGB-UTF16-V HaranoAjiGothicCN-Regular.otf
+otf-ucgb-v UniGB-UTF16-V HaranoAjiGothicCN-Medium.otf
+otf-ucge-v UniGB-UTF16-V HaranoAjiGothicCN-Bold.otf
+otf-ucmgr-v UniGB-UTF16-V HaranoAjiGothicCN-Heavy.otf
+
+otf-utmr-v UniCNS-UTF16-V HaranoAjiMinchoTW-Regular.otf
+otf-utmb-v UniCNS-UTF16-V HaranoAjiMinchoTW-Bold.otf
+otf-utml-v UniCNS-UTF16-V HaranoAjiMinchoTW-Light.otf
+otf-utgr-v UniCNS-UTF16-V HaranoAjiGothicTW-Regular.otf
+otf-utgb-v UniCNS-UTF16-V HaranoAjiGothicTW-Medium.otf
+otf-utge-v UniCNS-UTF16-V HaranoAjiGothicTW-Bold.otf
+otf-utmgr-v UniCNS-UTF16-V HaranoAjiGothicTW-Heavy.otf
+
+otf-ukmr-v UniKS-UTF16-V HaranoAjiMinchoK1-Regular.otf
+otf-ukmb-v UniKS-UTF16-V HaranoAjiMinchoK1-Bold.otf
+otf-ukml-v UniKS-UTF16-V HaranoAjiMinchoK1-Light.otf
+otf-ukgr-v UniKS-UTF16-V HaranoAjiGothicK1-Regular.otf
+otf-ukgb-v UniKS-UTF16-V HaranoAjiGothicK1-Medium.otf
+otf-ukge-v UniKS-UTF16-V HaranoAjiGothicK1-Bold.otf
+otf-ukmgr-v UniKS-UTF16-V HaranoAjiGothicK1-Heavy.otf
+
+otf-cjmr-h Identity-H HaranoAjiMincho-Regular.otf
+otf-cjmb-h Identity-H HaranoAjiMincho-Bold.otf
+otf-cjml-h Identity-H HaranoAjiMincho-Light.otf
+otf-cjgr-h Identity-H HaranoAjiGothic-Regular.otf
+otf-cjgb-h Identity-H HaranoAjiGothic-Medium.otf
+otf-cjge-h Identity-H HaranoAjiGothic-Bold.otf
+otf-cjmgr-h Identity-H HaranoAjiGothic-Heavy.otf
+
+otf-ccmr-h Identity-H HaranoAjiMinchoCN-Regular.otf
+otf-ccgr-h Identity-H HaranoAjiGothicCN-Regular.otf
+
+otf-ctmr-h Identity-H HaranoAjiMinchoTW-Regular.otf
+otf-ctgr-h Identity-H HaranoAjiGothicTW-Regular.otf
+
+otf-ckmr-h Identity-H HaranoAjiMinchoK1-Regular.otf
+otf-ckgr-h Identity-H HaranoAjiGothicK1-Regular.otf
+
+otf-cjmr-v Identity-V HaranoAjiMincho-Regular.otf
+otf-cjmb-v Identity-V HaranoAjiMincho-Bold.otf
+otf-cjml-v Identity-V HaranoAjiMincho-Light.otf
+otf-cjgr-v Identity-V HaranoAjiGothic-Regular.otf
+otf-cjgb-v Identity-V HaranoAjiGothic-Medium.otf
+otf-cjge-v Identity-V HaranoAjiGothic-Bold.otf
+otf-cjmgr-v Identity-V HaranoAjiGothic-Heavy.otf
+
+otf-ccmr-v Identity-V HaranoAjiMinchoCN-Regular.otf
+otf-ccgr-v Identity-V HaranoAjiGothicCN-Regular.otf
+
+otf-ctmr-v Identity-V HaranoAjiMinchoTW-Regular.otf
+otf-ctgr-v Identity-V HaranoAjiGothicTW-Regular.otf
+
+otf-ckmr-v Identity-V HaranoAjiMinchoK1-Regular.otf
+otf-ckgr-v Identity-V HaranoAjiGothicK1-Regular.otf
+
+