-%#!luatex
+%#!luajittex
\directlua{luatexja_debug = 1}
\input luatexja.sty
%\input lua-visual-debug.sty
+
\catcode`\@=11
\newdimen\@tempdima
\newbox\@tempboxa
\kern-.15em%
\TeX}
-\tentgt
+\tentgt\hfuzz10000pt\relax\vfuzz10000pt
+
+\def\H{\vrule width 2pt height 10pt depth 0pt%
+\vrule width 4pt height 0pt depth 4pt}
+\message{^^JTATE, DTOU, UTOD IN YOKO (HMODE))^^J}
+\yoko
+\hbox{\yoko
+ 横水平\H\vrule\hbox{\yoko 横水平\H }\vrule かき◆
+ \vrule\hbox{\tate 縦水平\H }\message{HOGE}◆おおおお\vrule
+ \vbox{\yoko\hsize=30mm 横垂直\H ああああああああああ\hfill\H}かき◆%
+ \vrule
+ \vbox{\tate\hsize=30mm 縦垂直\H ああああああああああ\hfill\H}%
+ \vrule ◆ああああ
+}
+\hbox{\yoko\vrule
+ 横水平\H\vrule\hbox{\dtou 下水平\H }\vrule ◆おおおお
+ \H\vrule
+ \vbox{\dtou\hsize=30mm 下垂直\H ああああああああああ\hfill\H}%
+ \vrule かき◆
+}
+\hbox{\yoko\vrule
+ 横水平\H\vrule\hbox{\utod 上水平\H }\vrule ◆おおおお
+ \H\vrule
+ \vbox{\utod\hsize=30mm 上垂直\H ああああああああああ\hfill\H}%
+ \vrule かき◆
+}
\hbox{\yoko
-横水平Hxy\hbox{\yoko 横水平Hxy}かき◆
-\hbox{\tate 縦水平Hxy}◆おおおお
-\vbox{\yoko\hsize=30mm 横垂直Hxyああああああああああ}かき◆
-\vbox{\tate\hsize=30mm 縦垂直Hxy\hfill ああ\break ああああああああ}◆ああああ
+ ああ\setbox0=\vtop{\yoko\hsize=30mm \ifhmode\message{H}\else\message{V}\fi 横垂直\H ああああああああああ\hfill\H}%
+% {\tracingonline1\showboxdepth2\showboxbreadth100\showbox0}%
+ かき◆\copy0 ◆
}
+
\vfill\eject
+
+\message{^^JYOKO, DTOU, UTOD IN TATE (HMODE)^^J}
+\leavevmode
\hbox{\tate
-縦水平Hxy\hbox{\yoko 横水平Hxy}かき◆
-\hbox{\tate 縦水平Hxy}◆おおおお
-\vbox{\yoko\hsize=30mm 横垂直Hxyああああああああああ}かき◆
-\vbox{\tate\hsize=30mm 縦垂直Hxy\hfill ああ\break ああああああああ}◆ああああ}
+縦水平\H\vrule \hbox{\yoko 横水平\H }\vrule かき◆\vrule
+\hbox{\tate 縦水平\H }\vrule◆おおおお\H\vrule
+\vbox{\yoko\hsize=30mm 横垂直\H ああああああああああ\hfill\H}\vrule
+かき◆\H\vrule
+\vbox{\tate\hsize=30mm 縦垂直\H ああああああああああ\hfill\H}\vrule
+◆ああああ}
+\hbox{\tate
+縦水平\H\vrule\hbox{\dtou 下水平\H }\vrule ◆おおおお\H\vrule
+\vbox{\dtou\hsize=30mm 下垂直\H ああああああああああ\hfill\H}%
+\vrule\H ◆ああああ}
+\hbox{\tate
+縦水平\H\vrule\hbox{\utod 上水平\H }\vrule ◆おおおお\H\vrule
+\vbox{\utod\hsize=30mm 上垂直\H ああああああああああ\hfill\H}%
+\vrule\H ◆ああああ}
+\vfill\eject
+\message{^^JYOKO, TATE, DTOU,IN UTOD (HMODE)^^J}
+\leavevmode
+\hbox{\utod
+上水平\H\vrule \hbox{\yoko 横水平\H }\vrule かき◆\vrule
+\hbox{\tate 縦水平\H }\vrule◆おおおお\H\vrule
+\vbox{\yoko\hsize=30mm 横垂直\H ああああああああああ\hfill\H}\vrule
+かき◆\H\vrule
+\vbox{\tate\hsize=30mm 縦垂直\H ああああああああああ\hfill\H}\vrule
+◆ああああ}
+\hbox{\utod
+上水平\H\vrule\hbox{\dtou 下水平\H }\vrule ◆おおおお\H\vrule
+\vbox{\dtou\hsize=30mm 下垂直\H ああああああああああ\hfill\H}%
+\vrule\H ◆ああああ}
+\hbox{\utod
+上水平\H\vrule\hbox{\utod 上水平\H }\vrule ◆おおおお\H\vrule
+\vbox{\utod\hsize=30mm 上垂直\H ああああああああああ\hfill\H}%
+\vrule\H ◆ああああ}
\vfill\eject
+\message{^^JYOKO, TATE, UTOD IN DTOU (HMODE)^^J}
+\leavevmode
+\hbox{\dtou
+下水平\H\vrule\hbox{\yoko 横水平\H }\vrule かき◆\H\vrule
+\hbox{\tate 縦水平\H }\vrule ◆おおおお\H\vrule
+\vbox{\yoko\hsize=30mm 横垂直\H ああああああああああ\hfill\H}%
+\vrule かき◆あおう\H\vrule
+\vbox{\tate\hsize=30mm 縦垂直\H ああああああああああ\hfill\H}%
+\vrule ◆ああああ
+}
+\hbox{\dtou
+下水平\H\vrule\hbox{\dtou 下水平\H }\vrule◆おおおお\vrule
+\vbox{\dtou\hsize=30mm 下垂直\H ああああああああああ\hfill\H}%
+\vrule ◆ああああ}
+\hbox{\dtou
+下水平\H\vrule\hbox{\utod 上水平\H }\vrule◆おおおお\vrule
+\vbox{\utod\hsize=30mm 上垂直\H ああああああああああ\hfill\H}%
+\vrule ◆ああああ}
+
+
+\vfill\eject
+
+
+\message{^^JTATE, DTOU IN YOKO (VMODE)^^J}
\setbox0=\vbox{\yoko\hsize=100mm
-横垂直Hxy\hbox{\yoko 横水平Hxy}かき◆
-これは,意味のないサンプルテキストです.
-\hbox{\tate 縦水平Hxy}◆おおおお
+横垂直\H\vrule \hbox{\yoko 横水平\H }\vrule\H かき◆
これは,意味のないサンプルテキストです.
-\vbox{\yoko\hsize=50mm 横垂直Hxyあああああああああああああああああああ}かき◆
+\vrule\hbox{\tate 縦水平\H }\vrule\H おおおお
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\yoko\hsize=50mm 横垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H かき◆
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\tate\hsize=50mm 縦垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H ◆ああああ
+これは,意味のないサンプルテキストです.\vrule
+\hbox{\dtou 下水平\H }\vrule\H おおおお
これは,意味のないサンプルテキストです.
-\vbox{\tate\hsize=50mm 縦垂直Hxyあああああああああああああああああああ}◆ああああ
-これは,意味のないサンプルテキスト\hbox{\tate 縦水平Hxy}◆おおおおです.
+\vrule\vbox{\dtou\hsize=50mm 下垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H これは,意味のないサンプルテキストです.
}
\copy0
-%{\showboxbreadth10000\showboxdepth10000
-%\showbox0}
-
\vfill\eject
+
+\message{^^JYOKO, DTOU IN TATE (VMODE)^^J}
\vbox{\tate\hsize=100mm
-◆◆◆Hxy\hbox{\yoko 横水平Hxy}かき◆
+縦垂直\H\vrule\hbox{\yoko 横水平\H }\vrule\H かき◆
これは,意味のないサンプルテキストです.
-\hbox{\tate 縦水平Hxy}◆おおおお
+\vrule\hbox{\tate 縦水平\H }\vrule\H おおおお
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\yoko\hsize=50mm 横垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H かき◆
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\tate\hsize=50mm 縦垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H ◆ああああ
+これは,意味のないサンプルテキストです.\vrule
+\hbox{\dtou 下水平\H }\vrule\H おおおお
+これは,意味のないサンプルテキストです.
+\vrule\vbox{\dtou\hsize=50mm 下垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H これは,意味のないサンプルテキストです.
+}
+\vfill\eject
+
+\message{^^JYOKO, TATE IN DTOU (VMODE)^^J}
+\vbox{\dtou\hsize=100mm
+下垂直\H\vrule\hbox{\yoko 横水平\H }\vrule\H かき◆
これは,意味のないサンプルテキストです.
-\vbox{\yoko\hsize=50mm 横垂直Hxyあああああああああああああああああああ}かき◆
+\vrule\hbox{\tate 縦水平\H }\vrule\H おおおお
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\yoko\hsize=50mm 横垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H かき◆
+これは,意味のないサンプルテキストです.\vrule
+\vbox{\tate\hsize=50mm 縦垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H ◆ああああ
+これは,意味のないサンプルテキストです.\vrule
+\hbox{\dtou 下水平\H }\vrule\H おおおお
これは,意味のないサンプルテキストです.
-\vbox{\tate\hsize=50mm 縦垂直Hxyあああああああああああああああああああ}◆ああああ
-これは,意味のないサンプルテキスト\hbox{\tate 縦水平Hxy}◆おおおお
-です.
+\vrule\vbox{\dtou\hsize=50mm 下垂直\H ああああああああああ%
+ あああああああああ\hfill\H}%
+\vrule\H これは,意味のないサンプルテキストです.
}
+\vfill\eject
\vbox{\tate\hsize100mm
-\tfont\f=KozMinPr6N-Regular.otf:+vert;jfm=ujisv \f
+\tfont\f=KozMinPr6N-Regular.otf:-vert;jfm=ujisv \f
-\ltjsetparameter{yalbaselineshift=.25em}\baselineskip15pt
+\ltjsetparameter{yalbaselineshift=.25em}\baselineskip15pt\parindent\zw
\LaTeX の特徴として、テキストファイルであるソースコードを入力として処理することでDVIや
PDFなどの表示形式を出力として得ることが挙げられる。
変えることができるなど、文書内容データの再利用性が高い。一度スタイル設定を決めてしまえば、
あとは文書内容の記述に専念することができるという利点もある。論文などの投稿では、学術雑
誌のスタイルを記述したファイル(パッケージファイル)を Web からダウンロードして利用するこ
-とで、統一されたスタイルで論文xを投稿することができ、論文の投稿者と雑誌の編集者とのやり取り
+とで、統一されたスタイルで論文を投稿することができ、論文の投稿者と雑誌の編集者とのやり取り
を簡略化できる。Kile、TeXShop、TeXworks、EasyTeX、WinShell などの \TeX 用エ
ディタや、野鳥(やてふ、YaTeX)、TeXlipse、KaTeX(花鳥、かてふ)、祝鳥
(のりてふ)、M's TeX Helper 2など の\TeX 用テキストエディタマクロを兼用することに
よって、より効率的な文章作成が可能ともなる。またMapleやMathematicaなどでドキュメントを
作成し、\TeX 形式で出力することも可能である。
+\null\hfill
+(Wikipediaの「\LaTeX」の記事より.8/13現在)
}
\message{^^Jget/set box dimension^^J}
\vfill\eject
\message{^^Jdir node^^J}
+\font\seventt=cmtt10 at 7pt
+\font\fivett=cmtt10 at 5pt
+
+\setbox0=\hbox{\yoko pF}
+\setbox1=\hbox{\tate\copy0}
+\fbox{\copy1}
+\setbox1=\copy0
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'lastbox> ', tex.print)}\par}
+\setbox0=\hbox{\yoko \ltjsetwd1=50pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'dir node1> ', tex.print)}\par}
+\setbox0=\hbox{\dtou \ltjsetwd1=2pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'dir node2> ', tex.print)}\par}
+
+\setbox0=\hbox{\yoko \ltjsetht1=30pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'alter Yht> ', tex.print)}\par}
+
+\setbox0=\hbox{\tate \ltjsetwd1=50pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'alter Twd> ', tex.print)}\par}
+
+\setbox0=\hbox{\utod \ltjsetht1=50pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'alter Uht> ', tex.print)}\par}
+
+\setbox0=\hbox{\yoko \ltjsetht1=70pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'alter Yht> ', tex.print)}\par}
+
+%% unwrap
+\setbox2=\hbox{\yoko \copy1}
+\setbox2=\hbox{\yoko \unhbox2\global\setbox1=\lastbox}
+{\obeylines\seventt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'unwrapped> ', tex.print)}}
+
+\setbox0=\hbox{\utod \ltjsetht1=50pt}
+{\obeylines\seventt\baselineskip=10pt
+\directlua{luatexja.ext_show_node_list(tex.box[1], 'alter Uht> ', tex.print)}\par}
+
+
+
+\setbox0\hbox{\yoko a あ }\setbox1=\hbox{\tate\ltjsetht0=2pt}
+
+\fbox{\copy0}
+\vbox{\yoko\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\tate\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\dtou\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\utod\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+%
+\ltjsetwd0=40pt
+\setbox9\hbox{\utod \ltjsetdp0=10pt}
+\vbox{\yoko\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\tate\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\dtou\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+\vbox{\utod\hsize=60pt\noindent\the\ltjgetwd0,\\\the\ltjgetht0,\\\the\ltjgetdp0}
+
+\vfill\eject
+\message{^^Jothers^^J}
-\setbox0=\hbox{\tate ABCD}
-\setbox1=\hbox{\yoko\box0}
-\unhcopy1
-\setbox1=\lastbox %% box1: dir_node
-\dp1=100pt
-\setbox2=\hbox{\tate \copy1}%% unwrap
-{\obeylines\tentt
-\directlua{luatexja.ext_show_node_list(tex.box[2], 'A> ', tex.print)}}
+p\kern-.15em\TeX\ bug (2011-02-24)
+\setbox0=\hbox{\tate a}\fbox{\copy0}%
+\hbox{\yoko\ltjsetht0=30pt
+\hbox{\dtou\dimen0=\ltjgetht0}
+\the\ltjgetht0}% OK. 30pt
-\setbox2=\hbox{\tate \unhbox2\global\setbox1=\lastbox}%% unwrap
-{\obeylines\tentt
-\directlua{luatexja.ext_show_node_list(tex.box[1], 'B> ', tex.print)}}
+\def\R{012345678901234567890123456789}
+\vbox{\tate\hsize=4\zw\R\R\R\R}
-\the\ltjgetdp{1}
-\end
+%\tracingall
+\def\showdir{\ifcase\ltjgetparameter{direction} %
+?\or D\or ?\or T\or Y\or ?\or ?\or?\or?\or?\or?\or U\fi}
+\showdir
+\hbox{\tate {\dtou 感じ\showdir}\showdir}
+\showdir
+
+\vbox{\tate\hsize=100mm
+日本語中に数式を打ってみる%
+$\ltjgetparameter{talbaselineshift}abc\hbox{にほんごABC\hbox{\tate たて\showdir}}\showdir$
+$$
+ \ltjgetparameter{talbaselineshift}abc\hbox{にほんごABC\hbox{\tate たて\showdir}}\showdir
+$$
+あいうえお}
+
+\vsize250mm
+\def\F#1{%
+\medskip
+\setbox0=\hbox{\csname #1\endcsname
+ \hbox{\yoko Y}\hbox{\tate T}\hbox{\dtou D}\hbox{\utod U}}
+{\obeylines\fivett\baselineskip=7pt
+\directlua{luatexja.ext_show_node_list(tex.box[0], 'hbox #1> ', tex.print)}\par}}
+
+\F{yoko}
+\F{tate}
+\F{dtou}
+\F{utod}
+
+\hbox{\inhibitglue\tate}
+\hbox{\ltjsetparameter{kanjiskip=0pt}\tate}
+
+\leavevmode\hbox{A}%
+\setbox0\hbox{}%
+\setbox1=\lastbox\the\wd1
+\end