OSDN Git Service

Fixed that luatexja.append_italic() created orphaned attribute lists.
[luatex-ja/luatexja.git] / test / test13-listings.tex
index 37d099b..c6b3c34 100644 (file)
@@ -3,8 +3,7 @@
 
 \usepackage{luatexja-fontspec}
 \usepackage{listings,color,showexpl,comment}
-\usepackage{luatexja-otf}
-\directlua{luatexja.otf.enable_ivs()}
+\usepackage{luatexja-otf}\directlua{luatexja.otf.enable_ivs()}
 \usepackage
 [
        papersize={100mm,100mm},
@@ -18,7 +17,8 @@
        language=sh, extendedchars=false,
        backgroundcolor=\color[gray]{.75},
        breaklines=true,
-    basewidth={0.55\zw, 0.45em},
+        explpreset={columns=fixed},
+    basewidth={0.5\zw, 0.45em},
        numbers=left,numberstyle=\tiny, numbersep=2pt,
 }
 
@@ -95,15 +95,20 @@ the first line of the listing is not rendered.
 \textbf{Ticket \#29311}
 
 \begin{env}{\relax}
-長い長い長い長い長い長い長い長い長い長い長い長い#い長い
-長い長い長い長い長い長い長い長い長い長い長い長aaaa#::い長い
-長い長い長い長い長い長い長い長い長い長い長い長い,長い長い
-長い長い長い長い長い長い長い長い長い長い長い長aa,::い長い
-長い長い長い長い長い長い長い長い長い長い長い長,,::い長い
+長い長い長い長い長い長い長い長い長い長い長い長aaa長い::い長い
+長い長い長い長い長い長い長い長い長い長い長い長aaaa長い::い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長い,長い長い
+あ長い長い長い長い長い長い長い長い長い長い長い長い長い,長い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長a,::い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長aa,::い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長aaa,::い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長aaaa,::い長い
+長い長い長い長い長い長い長い長い長い長い長い長い長い,,::い長い
 長い長い長い長い長い長い長い長い長い長い長い長(い長い
 長い長い長い長い長い長い長い長い長い長い長いaa(い長い
 長い長い長い長い長い長い長い長い長い長い長い長(aa長い
 長い長い長い長い長い長い長い長い長い長い長い長い)(長い
+あ長い長い長い長い長い長い長い長い長い長い長い長い)(長い
 \end{env}
 
 \newpage
@@ -131,10 +136,52 @@ the first line of the listing is not rendered.
 \end{lstlisting}
 
 \newpage
-IVS対応
+IVS対応1: \texttt{vsraw=false} (default)
 
-\begin{lstlisting}[escapechar=\%,basicstyle=\tt]
+\begin{LTXexample}[escapechar=\%, basicstyle=\tt]
 1234567890
 1葛󠄀城,葛󠄁飾
+󠄀a
+\end{LTXexample}
+
+IVS対応2: \texttt{vsraw=true}
+
+\begin{LTXexample}[escapechar=\%,vsraw, basicstyle=\tt]
+1234567890
+1葛󠄀城,葛󠄁飾アイウ
+\end{LTXexample}
+
+\newpage
+
+下の行において,最初の「1」の場所がずれてしまうのは半ば仕方がないとも言える.
+1行目では,「1234567890」が前後・文字間に計11箇所の等量の空白を入れて10全角の領域に
+出力されているのに対し,2,~3行目では「1」が全角幅に左右中央で出力されているからである.
+\begin{lstlisting}[escapechar=\%,vsraw, basewidth=1\zw, basicstyle=\tt]
+1234567890
+1あ,23
+1あ2,3
+1234567890
 \end{lstlisting}
+
+\texttt{doubleletterspace}オプションを指定すると,出力単位中の文字と文字の間隔を2倍にするため,
+下の例の「1」のように,各文字の垂直位置が揃いやすくなる.
+\begin{lstlisting}[escapechar=\%,doubleletterspace, basewidth=1\zw, basicstyle=\tt]
+1234567890
+1あ,23
+1あ2,3
+1234567890
+\end{lstlisting}
+
+
+\newpage
+\textbf{Ticket \#34786}
+\ltjsetparameter{autoxspacing=false}
+
+foo \lstinline[basicstyle=\tt]!bar! baz あ
+あ\lstinline[basicstyle=\tt]{bar}hoge
+
+foo \lstinline[basicstyle=\tt]!あbar! baz あ
+あ\lstinline[basicstyle=\tt]{いbar}hoge
+
+
 \end{document}