XeLaTeX で異体字セレクタあそび


##### １ 異体字セレクタなし
道は遠い（**\x{9053}\x{306F}\x{9060}\x{3044}**）

##### ２ 異体字セレクタ(U+E0101)をふつうの見えない文字で入力
道󠄁は遠󠄁い（**\x{9053}\x{E0101}\x{306F}\x{9060}\x{E0101}\x{3044}**）

##### ３ 異体字セレクタをコードで指定
道󠄁は遠󠄁い（**道\symbol{"E0101}は遠\symbol{"E0101}い**）

 ２より３のほうがよさそう。不可視文字入りのファイルをひとに送るのは躊躇われるし、だいたい入力した自分自身、ちょっと⻑い文章になったら、どこで何をつかったかなんて憶えていられるもんじゃない。

で、安岡孝一氏の記事[「Unicode の IVS がもたらすメリットとデメリット」](http://itpro.nikkeibp.co.jp/article/COLUMN/20110124/356398/)に挙げられている例を試してみた。異体字というといつだってワタナベさんの話でもちきりなんだから好適な例であるのだろうな、たぶん。

U+E0108 以降はセレクタがつかないときと同じ字体。Adobe フォントだから Adobe-Japan1 にあるものだけをサポート？　そもそもグリフがない？　Unicode には（まだ）ない？　うーむ、知らんわな……

あれこれ遊んでみたけれど、ぼく自身は印刷標準字体の PDF さえできればそれで満足で、日本語の文字集合についても JIS X 0208 にほんの数文字の追加で間にあうというヒトなので、こういう機能が実際に必要になることはたぶんない。もう二度とつかわないかも。

**追記**　十年以上前のことだが、pLaTeX をつかいはじめた頃は、青空文庫なんかにある古いテクストを otf パッケージをつかってそれっぽくタイプセットすることに熱中していたけれど、本当にきちんとやるなら刊本を参照しなければならない。で、刊本を入手したら、その時点で TeX する意味はなくなっている。ここに物理的に存在する本を読めばよろしい。

あれは逃避の時期だったんだろうな。そんなことして遊んでる暇があったら、たとえ一人でも、とにかく他人に読んでもらえる文を書け、といまは自分に言いきかせている

````
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
%上の２行は TeXShop（Mac のアプリ）用
\documentclass[a4paper, 11pt]{article}
\usepackage{xltxtra}
\usepackage{fontspec}
\setmainfont[Scale=MatchLowercase]{Junicode}
\setsansfont[Scale=MatchLowercase]{Noto Sans}
\setmonofont[Scale=MatchLowercase]{Noto Mono}

\usepackage{zxjatype}
\setjafontscale{0.9}
%\setjamainfont{YuMincho Medium}
%\setjasansfont{YuGothic Bold}
%\setjamonofont{YuGothic Medium}
\setjamainfont{SourceHanSerif-Light}
\setjasansfont{SourceHanSans-Medium}
\setjamonofont{SourceHanSans-Normal}

\usepackage[rm, medium]{titlesec}
\usepackage{multicol}
\usepackage{hyperref}
\usepackage{pxrubrica}%ver. 1.1 必須

\newcommand{\verbivs}[2]{{\LARGE #1\symbol{"#2}}（\texttt{#1\symbol{"5C}symbol\{"#2\}}）\par}
\def\baselinestretch{1.25}

\pagestyle{empty}
\title{\XeLaTeX{}で\ruby[g]{異体字セレクタ}{\textsc{Ideographic Variation Selector}}あそび}
\date{}
\parindent=0pt

\newcommand{\●}{\textsf{●}}
\newcommand{\○}{\textsf{○}}

\begin{document}

\zxjapanesestyle
\maketitle
\thispagestyle{empty}


\textsf{１\ 異体字セレクタなし}\par
{\large 道は遠い}（\verb|\x{9053}\x{306F}\x{9060}\x{3044}|）\par
\vspace{.25\baselineskip}
\textsf{２\ 異体字セレクタ（{\texttt{U+E0101}}）をふつうの\ruby[m]{見えない}{{\○}|{\○}|{\○}|{\○}}文字で入力}\par
{\large 道󠄁は遠󠄁い}（\verb|\x{9053}\x{E0101}\x{306F}\x{9060}\x{E0101}\x{3044}|）\par
\vspace{.25\baselineskip}
\textsf{３\ 異体字セレクタをコードで指定}\par
{\large 道\symbol{"E0101}は遠\symbol{"E0101}い}（\verb|道\symbol{"E0101}は遠\symbol{"E0101}い|）\par
\vspace{.5\baselineskip}

　２より３のほうがよさそう。不可視文字入りのファイルをひとに送るのは\ruby[g]{躊躇}{ためら}われるし、だいたい入力した自分自身、ちょっと長い文章になったら、どこで何をつかったかなんて憶えていられるもんじゃない。\par
　で、安岡孝一氏の記事「UnicodeのIVSがもたらすメリットとデメリット」（{\url{http://itpro.nikkeibp.co.jp/article/COLUMN/20110124/356398/}}）に挙げられている例を試してみた。異体字というといつだってワタナベさんの話で\ruby[m]{もちきり}{{\●}|{\●}|{\●}|{\●}}なんだから好適な例であるのだろうな、たぶん。\par
　\texttt{U+E0108}以降はセレクタがつかないときと同じ字体。Adobe フォントだから Adobe-Japan1 にあるものだけをサポート？　そもそもグリフがない？　Unicode には（まだ）ない？　うーむ、知らんわな。\par


\begin{multicols}{2}

{\Large 邊}（\texttt{邊}）\par
\verbivs{邊}{E0100}
\verbivs{邊}{E0101}
\verbivs{邊}{E0102}
\verbivs{邊}{E0103}
\verbivs{邊}{E0104}
\verbivs{邊}{E0105}
\verbivs{邊}{E0106}
\verbivs{邊}{E0107}
\verbivs{邊}{E0108}
\verbivs{邊}{E0109}
\verbivs{邊}{E010A}
\verbivs{邊}{E010B}
\verbivs{邊}{E010C}
\verbivs{邊}{E010D}
\verbivs{邊}{E010E}
\verbivs{邊}{E010F}
\verbivs{邊}{E0110}

\end{multicols}

\end{document}

````

![ivs_test.png](https://qiita-image-store.s3.amazonaws.com/0/170849/725acc37-4325-5dab-4bd5-fd3c50f8468a.png "ivs_test.png")