X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=test%2Ftest13-listings.tex;h=29ea8063c38bb09e3fe2e86681743cb00348e3e2;hb=f078ac2f7998a102c7ec765e725f2269eed9f872;hp=e9cad71a8329e35a90e17c35ea7d96e85095fe7a;hpb=b4be0582e793d75329dd11d177d3aed9991d86b2;p=luatex-ja%2Fluatexja.git diff --git a/test/test13-listings.tex b/test/test13-listings.tex index e9cad71..29ea806 100644 --- a/test/test13-listings.tex +++ b/test/test13-listings.tex @@ -1,7 +1,7 @@ %#!lualatex \documentclass{article} -\usepackage{luatexja-fontspec} +\usepackage{luatexja-fontspec,amsmath} \usepackage{listings,color,showexpl,comment} \usepackage{luatexja-otf}\directlua{luatexja.otf.enable_ivs()} \usepackage @@ -33,13 +33,14 @@ \fi }{} \DeclareKanjiFamily{JY3}{koz}{} -\DeclareFontShape{JY3}{koz}{m}{n}{<-> s * [0.92489] KozMinPr6N-Regular:jfm=ujis}{} -\DeclareFontShape{JY3}{koz}{m}{sl}{<-> s * [0.92489] psft:Ryumin-Light:jfm=ujis;slant=0.167}{} +\DeclareFontShape{JY3}{koz}{m}{n}{<-> s * [1.2] KozMinPr6N-Regular:jfm=ujis}{} +\DeclareFontShape{JY3}{koz}{m}{sl}{<-> s * [1.2] psft:Ryumin-Light:jfm=ujis;slant=0.167}{} \DeclareFontShape{JY3}{koz}{m}{it}{<-> ssub* koz/m/sl}{} \def\mcdefault{koz} \setmainfont{TeX Gyre Pagella} \setmonofont{TeX Gyre Cursor} +\def\cs#1{\hbox{\texttt{\textbackslash #1}}} \begin{document} This test file is based on a.tex\footnote{This can be downloaded from {\tt https://gist.github.com/1574793}.} by x19290. @@ -55,8 +56,13 @@ In this document, we define them by \end{lstlisting} \newpage -We also avoid white band problem, by setting both the height and the depth of each -letter/word to 0\,pt. +We also avoid white band problem, by setting the value of \cs{lineskiplimit} to +\begin{multline} + -\min(\cs{cht}-\cs{ht}\cs{strutbox}, 0)\\ + -\min(\cs{cdp}-\cs{dp}\cs{strutbox}, 0). +\end{multline} + +Note: we still have a white band if the first line is line-broken. \begin{env}{\relax} #!/bin/sh @@ -95,15 +101,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 @@ -134,7 +145,7 @@ the first line of the listing is not rendered. IVS対応1: \texttt{vsraw=false} (default) \begin{LTXexample}[escapechar=\%, basicstyle=\tt] -1234567890 +123456789012345678 1葛󠄀城,葛󠄁飾 󠄀a \end{LTXexample} @@ -142,10 +153,12 @@ IVS対応1: \texttt{vsraw=false} (default) IVS対応2: \texttt{vsraw=true} \begin{LTXexample}[escapechar=\%,vsraw, basicstyle=\tt] -1234567890 +123456789012345678 1葛󠄀城,葛󠄁飾アイウ \end{LTXexample} +\newpage + 下の行において,最初の「1」の場所がずれてしまうのは半ば仕方がないとも言える. 1行目では,「1234567890」が前後・文字間に計11箇所の等量の空白を入れて10全角の領域に 出力されているのに対し,2,~3行目では「1」が全角幅に左右中央で出力されているからである. @@ -153,17 +166,55 @@ IVS対応2: \texttt{vsraw=true} 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 +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]!ba{}#shr! baz あ + +あ\lstinline[basicstyle=\tt]{bar s}hoge + +あ\lstinline[basicstyle=\tt]{bar..{a}hoge + +foo \lstinline[basicstyle=\tt\gtfamily]!あexit 0; #shbar! baz あ + +あ\lstinline[basicstyle=\tt]{いbexit #sh$ar}hoge + +\bigskip +\textbf{Ticket \#35484} -foo \lstinline[basicstyle=\tt]!あbar! baz あ -あ\lstinline[basicstyle=\tt]{いbar}hoge +\colorbox{red}{\lstinline!aiu#sheoxyz!} +\colorbox{red}{\lstinline!あいexit 0;#shうえお!} +\colorbox{red}{\lstinline{aiu#sheoxyz}} +\colorbox{red}{\lstinline{あいexit 0;#shうえお}} + +あおいうえお +\begin{lstlisting}[frame=single] +aiu +\end{lstlisting} +あいうえお + +\bigskip +\textbf{Escape character} +\begin{lstlisting}[escapechar=\#,basicstyle=\ttfamily] +1234567890123457890 +aiu# \textcolor{red}{e} #o#\textcolor{red}{ka}#ki +\end{lstlisting} + \end{document}