天地有情

[TeX][ConTeXt] 初めての ConTeXt(Mark IV) で日本語してみた.

初めての ConTeXt(Mark IV) で日本語してみた.

ConTeXt(Mark IV) はエンジン部に luatex が使われます.
これは現在でも開発が進められています.エンコーディングは utf-8 です.

組版するコマンドには,次の3つのコマンドが用意されています.
いずれのコマンドを使っても構いません.

(1)context foo.tex
(2)contextjit foo.tex
(3)mtxrun --script context foo.tex

それでは,日本語を含む ConTeXt 文章を ConTeXt(MkIV) で組版できるか試してみましよう.

   ★ W32TeX ではConTeXtは標準的に配布されており,Windows上で実行してみます.

以下の内容を foo.tex で保存します.
   ★ ネットを徘徊して情報を収集した内容が網羅されています.

========================================================================
\usemodule[simplefonts] [size=8pt] % add
\setuppapersize[A5][A5]
\setscript[hanzi] \setscript[nihongo] %changed
\setmainfont[Meiryo] [size=8pt] % del
\setsansfont[ipagothic] [size=8pt] % del
\setmonofont[ipagothic] [size=8pt] % del
\setupbodyfont[8pt]
\mainlanguage[ja]
\language[ja]
\setupcolors[state=start]
%
\starttext
\starttitle
[title={吾輩は猫である}]
\stoptitle

はじめての \ConTeXt{}(mkiv) で日本語タイプセット.

練習用に『吾輩は猫である』を書いてみる.

\blank[big]

吾輩は猫である.{\red 名前は}まだ無い.

どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
この書生というのは時々我々を捕えて煮て食うという話である.
しかしその当時は何という考もなかったから別段恐しいとも思わなかった.
ただ彼の掌に載せられてスーと持ち上げられた時何だかフワフワした感じがあった
ばかりである.

\blank[big]

\midaligned{\externalfigure[cat][width=3cm,type=png]}

\blank[big]

掌の上で少し落ちついて書生の顔を見たのがいわゆる人間というものの見始であろう.
この時妙なものだと思った感じが今でも残っている.
第一毛をもって装飾されべきはずの顔がつるつるしてまるで薬缶だ.
その後猫にもだいぶ逢ったがこんな片輪には一度も出会わした事がない.
のみならず顔の真中があまりに突起している.
そうしてその穴の中から時々ぷうぷうと煙を吹く.
どうも咽せぽくて実に弱った.
これが人間の飲む煙草というものである事はようやくこの頃知った.

この書生の掌の裏でしばらくはよい心持に坐っておったが,
しばらくすると非常な速力で運転し始めた.
書生が動くのか自分だけが動くのか分らないが無暗に眼が廻る.
胸が悪くなる.到底助からないと思っていると,どさりと音がして眼から火が出た.
それまでは記憶しているがあとは何の事やらいくら考え出そうとしても分らない.

\stoptext
========================================================================

● simplefonts はConTeXt Mark IV でフォントを使うときの簡単なインターフェースを提供します.
● 用紙はA5サイズ,文字サイズは8pt に設定します.
● \setmainfont, \setsansfont, \setmonofont には、それぞれ serif, sans, mono 書体を通常指定します.
  メインフォントは「Meiryo」にしてあります.
  fc-list > fontName.txt などとすれば,利用できるフォント名がわかります.
● \setscript[hanzi]は日本語が行分割できるモジュールです.



context foo を実行することで、foo.pdf が得られます.

foo.png



まだまだ...ですね.【要努力】と言ったところです.



スポンサーサイト
  1. 2014/01/26(日) 11:32:24|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 超入門

ConTeXt は,TeX 組版システムに基づいた文書作成システムの一種です.

(1)あらまし

LaTeX と同様の汎用目的で設計されています.

ConTeXt はエンドユーザーの自由度が向上しています.
ConTeXt は設計が一貫していて LaTeX で起きやすいパッケージの組み合わせによる不具合は発生しません.

ConTeXt は教材・ユーザーガイド・技術マニュアルといった複雑で大きな文書の組版に用いられれます.

ConTeXt は TeX を使っていますが,利用にあたって TeX に関する知識は不要です.
組版や文書設計について基本的な知識があれば ConTeXt を充分に活用できます.

ConTeXt には MetaPost を拡張した MetaFun が組み込まれていて強力なグラフィックスシステムを備えています.

ConTeXt ではユーザインタフェースを変えずにエンジン部を入れ替えることができます.
エンジン部の詳細は後述します.

ConTeXt は1990年にオランダの企業 PRAGMA Advanced Document Engineering (PRAGMA ADE) の Hans Hagen が開発した。
フリーソフトウェアです.

(2)サポート状況
(W32TeX の context-w32.txt および test-eptex.tex を参考に記述しています)

ConTeXt はアクティブに開発されている最中で現在の状況は以下のようです.

■ MKII(マーク2)
オリジナルの ConTeXt でサポートされるエンジンは pdftex と xetex だけです.
W32TeX の ConTeXt では MKIIのエンジンとして eptex, euptex もサポートしています.

・pdftex の場合の実行法 texexec sourcename
・xetex の場合の実行法 texexec --xtx sourcename
・eptex の場合の実行法 texexec --eptex sourcename
・euptex の場合の実行法 texexec --euptex sourcename


● eptex における日本語 encoding は Shift JIS が使えますが、UTF-8 のほうが良いかもしれません。
UTF-8 を使う場合には、

texexec --eptex --passon="-kanji=utf8" foo

とするとオプションを eptex に渡すことができて、UTF-8 を使うことができます。BOM を付けておくと、

texexec --eptex foo

とするだけで UTF-8 であることを判別します。

● euptex の場合は、UTF-8 を使ってください。デフォルトが UTF-8 です。

texexec --euptex foo

■ MKIV(マーク4)
luatexを エンジンとするものを MKIV と言います.これは発展途上です.
エンコーディングは utf-8 です.

・MKIV の場合の実行法 context sourcename


(注意)以下では MKII(マーク2)を中心に説明します.


(3)初めての ConTeXt --- ファイル作成とコンパイル

● ファイル作成
使い慣れたテキストエディタで次のファイルを作成します.
eptex の場合のデフォルトエンコーディングは sjis であり,
euptex の場合のデフォルトエンコーディングは utf-8 です.

-----------------------------------------------------
% file name : sample.tex
%
\starttext
はじめての \ConTeXt です.

Hello, world!
\stoptext
-----------------------------------------------------
★ \starttext ~ \stoptext の間に本文を記述します.
★ \starttext より前は setupエリアと呼ばれ,必要に応じてsetupコマンドを記述します.
★ \stoptext より後ろは何を書いても無視されます.

● コンパイル

texexec --eptex sample
あるいは
texexec --euptex sample

とすると、sample.pdf が生成されます。

※ synctex を有効にするには、markii ではソースで
\synctex=1
としておきます

● sample.pdf 表示

begin01



(4)これから後は.....

入門レベルの事柄が次にあります.

http://konoyonohana.blog.fc2.com/

内容は
ConTeXt 雑記(1) --- Horizontal line
ConTeXt 雑記(2) --- Color
ConTeXt 雑記(3) --- Framed
ConTeXt 雑記(4) --- Paragraph Spaceing
ConTeXt 雑記(5) --- Formula
ConTeXt 雑記(6) --- Figure
ConTeXt 雑記(7) --- Table
ConTeXt 雑記(8) --- Itemize
ConTeXt 雑記(9) --- Index
ConTeXt 雑記(10) --- Contents
ConTeXt 雑記(11) --- Definition
ConTeXt 雑記(12) --- Footnote
ConTeXt 雑記(13) --- Reference

  1. 2013/03/28(木) 10:35:25|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(13) -- References


(1)参考文献のリストの簡単例
最後のページに本文で引用した参考文献のリストを出力させるためには,まずはじめに,
”文献データベースファイル”を作成します.そのファイルの拡張子は .bib とします.
例えばそれを myref.bib とします.

------------------------myref.bib---------------------------
@book{ITOK.01,
author ="伊藤和人",
title ="『{\tf\LaTeX} トータルガイド』",
publisher ="株式会社秀和システム",
year ="1992"}

@book{LAMP.01,
author ="Lamport,Leslie",
title ="{\tf\LaTeX :} A Document Preparation System",
publisher ="Adison-Wesly Publishing Company,Inc.",
year ="1986"}

@book{KNUT.01,
author ="Knuth,Donald E.",
title ="The {\tf\TeX} book",
publisher ="Adison-Wesly Publishing Company,Inc.",
year ="1984",
note ="(邦訳:『\TeX ブック (改訂新版)』斎藤信男 監訳, アスキー,1992)"}

------------------------------------------------------------

(2)次に,例えば foo.tex という文書ファイルを作成し,上記の myref.bib を取り込んで
コンパイルします.

------------------------foo.tex---------------------------
\setupbibtex[database=myref]
\setuppublications[numbering=yes,alternative=num]

\starttext
Lamport~\cite[LAMP.01]は\LaTeX の聖書と言うべき本を書いた.
\cite[extras= {,邦訳: p.184--186}][LAMP.01]におけるtabbing環境の解説は
初心者にはほとんど「般若心経」である.これの理解には伊藤の
書~\cite[extras= {,7-4節: p192--202}][ITOK.01]が助けとなろう.

\subject{参考文献}
\placepublications
\stoptext
------------------------------------------------------------

(3)結果は次の通りです.

ref01


(4)以上の事柄を纏めてみます.

● 文献データベースファイル myref.bib における @book{ の次にある ITOK.01, LAMP.01, KNUT.01 は
文献引用キーと呼ばれるもので文書ファイルでこのキーを \cite{} の引数として入力すると,そこに
文献ラベル[1],[2],...[3] が出力されます.
● 上の例から判るように参考文献リストの作成とは将来引用するであろう文献を集めた「文献データベースファイル」
を事前に作成しておき,そこから必要な参考文献を本文に引用し,かつ本文の最終ページに本文で引用された
参考文献のリストを自動的に出力させることを言います.
● 文献出力は \placepublications で行われます.このとき,タイトル(参考文献)の
出力はユーザが指定します.通常,\subject あるいは \title などで指定されます.
● もう一つの方法として\completepublications が使われます.
タイトルは \setupheadtext[pubs=References] で設定されます.
この方法では改ページの上,参考文献のリストが出力されます.

(5)文献データベースファイルのもう一つの方法
前例では文献データベースファイル myref.bib を別ファイルとし,このファイルを指定することにより,
参考文献リストを生成しています.

ConTeXt では次の命令を使って本文中に文献データベースを作成することができます.
\startpublication ~ \stoppublication

以下にサンプルを示します.結果は上記と同じです.

------------------------sample.tex---------------------------
\setuppublications[numbering=yes,alternative=num]
\starttext
Lamport~\cite[LAMP01]は\LaTeX の聖書と言うべき本を書いた.
\cite[extras= {,邦訳: p.184--186}][LAMP01]におけるtabbing環境の解説は
初心者にはほとんど「般若心経」である.これの理解には伊藤の
書~\cite[extras= {,7-4節: p192--202}][ITOK01]が助けとなろう.

\startpublication[k=ITOK01,
t=book,
a=伊藤,
n=1,
y=1992]
\title{『{\tf\LaTeX} トータルガイド』}
\author{伊藤}[]{和人}{}
\pubyear{1992}
\pubname{株式会社秀和システム}
\stoppublication

\startpublication[k=LAMP01,
t=book,
a=Lamport,
n=1,
y=1986]
\title{{\tf\LaTeX :} A Document Preparation System}
\author{Lamport}[]{Leslie}{}
\pubyear{1986}
\pubname{Adison-Wesly Publishing Company,Inc.}
\stoppublication

%\completepublications
\subject{参考文献}
\placepublications
\stoptext
-------------------------------------------------------------

(6)文献スタイル
文献スタイルの指定は
\setuppublications[numbering=yes,alternative=■]
を使います.

■部には次の末尾の3文字を指定します.
bibl-ams , bibl-apa, bibl-aps, bibl-num, bibl-ssa

どのような形式になるかは試してみてください.

  1. 2013/03/25(月) 17:30:45|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(12) -- Footnotes


”脚注”について調べてみました.例題で確認してみます.

(1)基本的な”脚注”
コマンドとして \footnote,\note が用意されています.

例1:\footnote[ref]{text},\note[ref] の使い方
-------------------------------------------------
吾輩は猫\footnote{三毛猫}である.名前はまだ無い.\par
どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた
事だけは記憶している.
吾輩はここで始めて人間\footnote[NATUME]{夏目漱石}
というものを見た.
しかもあとで聞くとそれは書生\note[NATUME]という人間中
で一番獰悪な種族であったそうだ.
-------------------------------------------------

foot01


※ 冒頭に \setupcolors[state=start]
\setupfootnotedefinition[color=green,headstyle=bold]を
宣言すると脚注部は次のようになります.

foot02


(2)脚注ラベルの種別指定
脚注ラベルの種別は\setupfootnotesのパラメータ conversion で指定されます.

conversion= *numbers(1,2,3..) デフォルト
characters(a,b,c..),Characters(A,B,C..)
romannumerals(i,ii,iii,..),Romannumerals(I,II,III,..)
set n(n=1,2) fnsymbol で表示


例2:\setupfootnotes[conversion=characters]を指定した例
(本文は LaTeX2e文典 生田誠三著より転写し,改変しております)
-------------------------------------------------
\setupfootnotes[conversion=characters]
山頭火\footnote{放浪俳人}は熊本生まれ\footnote{大正元年1月},
早稲田大学\footnote{文学部}を卒業した.
彼は,その放浪日記に数多くの優れた自由律俳句\footnote{
たとえば``分け入っても分け入っても青い空''}
を残し,いつしか彼は現代自由律俳句の巨頭となっていた.
-------------------------------------------------
※ 脚注ラベルが a,b,c,... に変更されていることに注目します.

foot03


※ 冒頭に \setupfootnotes[n=2]
を宣言すると脚注部は2段組になります.

foot04


(3)テキスト本文中に脚注を入れる
テキスト本文中への脚注の挿入は\setupfootnotesのパラメータが[location=text] と
\placefootnotesで行われます.

例3:\setupfootnotes[location=text]を指定した例
-------------------------------------------------
\setupfootnotes[location=text]

山頭火\footnote{放浪俳人}は熊本生まれ\footnote{大正元年1月},
早稲田大学\footnote{文学部}を卒業した.
\placefootnotes

彼は,その放浪日記に数多くの優れた自由律俳句\footnote{%
たとえば``分け入っても分け入っても青い空''}
を残し,いつしか彼は現代自由律俳句の巨頭となっていた.
\placefootnotes
-------------------------------------------------

foot05


(4)\footnotetext
例4:\footnotetext を指定した例
-------------------------------------------------
【山頭火】\footnotetext{【山頭火】本名は種田正一:放浪俳人}は熊本生まれ,早稲田大学を卒業した.
彼は,その放浪日記に数多くの優れた自由律俳句を残し,
いつしか彼は現代自由律俳句の巨頭となっていた.
-------------------------------------------------

※ 本文中には脚注ラベルは非表示であるが,脚注欄には text が表示されます.

foot06


  1. 2013/03/25(月) 12:18:37|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(11) -- Definitions

”定義”や ”定義もどき” について調べてみました.

(1)\def
これは,TeX で使われているお馴染みのものです.ConTeXt でもそのまま使えます.
説明は割愛します.

(2)\define[number]\command{spec} ※ LaTeX の \newcommand に相当するものです.
number: --- 引数の個数
command: -- コマンド名称
spec: ----- マクロ仕様

例1:画像を貼り付ける \placefigure コマンドの定義例を示します.

-----------------------------------------------
\define[3]\myputfigure{\placefigure
[here,force][fig:#1]
{#2}{\externalfigure[#3][width=3cm,type=png]}}

#1=参照番号,#2=キャプション,#3=画像名

使い方:
\myputfigure{001}{虎の絵}{tiger}
-----------------------------------------------

(3)\definestartstop[name][parameter]
汎用的に使える定義マクロです.目的,用途で使い分けてください.
サンプルを示します.

例1:
---------------------------------------------------------
\setupcolors[state=start]
\definestartstop[KOMEI][commands={\color[red]},
before=\blank,after=\blank]

星落秋風五丈原

\startKOMEI
祁山(キザン)悲秋の風更けて
陣雲暗し五丈原、
零露の文(アヤ)は繁くして
草枯れ馬は肥ゆれども
蜀軍の旗光無く
鼓角の音も今しづか。
丞相(ジョウショウ)病あつかりき.
\stopKOMEI

土井晩翠の詩集.1899年(明治32)刊.諸葛孔明の死を唱った
史詩「星落秋風五丈原」は有名.
---------------------------------------------------------

結果は次の通りです.

def01


(4)\definedescription[name][parameter]
概念や考え方などを示すのに使われるようです.

例2:
---------------------------------------------------------
\definedescription[TEXT][headstyle=\bfc,width=broad]

\startTEXT{方丈記とは}
ゆく河の流れは絶えずして,しかも,もとの水にあらず.
淀みに浮ぶうたかたは,かつ消えかつ結びて,久しく
とどまりたる例なし.
世中にある人と栖と,またかくのごとし.
\stopTEXT

あるいは,

\TEXT を使うこともできます.一つののパラグラフのときに有効です.

\TEXT{方丈記とは} ゆく河の流れは絶えずして,しかも,
もとの水にあらず.淀みに浮ぶうたかたは,かつ消え
かつ結びて,久しくとどまりたる例なし.世中にある
人と栖と,またかくのごとし.
---------------------------------------------------------

結果は次の通りです.

def02



(4)\defineenumeration[name][parameter]
意見や質問などの数えられるテキスト要素の場合などに使われるようです.

例3:
---------------------------------------------------------
\defineenumeration[REMARK]
[location=top,text=Remark,
inbetween=\blank,after=\blank]

\startREMARK
In the early medieval times Hasselt was a place of
pilgrimage. The {\em Heilige Stede} (Holy Place)
was torn down during the Reformation.
\stopREMARK

\startREMARK
After 300 years in 1930 the {\em Heilige Stede} was
reopened.
Nowadays the {\em Heilige Stede} is closed again but
once a year an open air service is held
on the same spot.
\stopREMARK

あるいは,

\REMARK を使うこともできます.一つののパラグラフのときに有効です.

\REMARK In the early medieval times Hasselt was a place of
pilgrimage. The {\em Heilige Stede} (Holy Place)
was torn down during the Reformation.

\REMARK IAfter 300 years in 1930 the {\em Heilige Stede} was
reopened.
Nowadays the {\em Heilige Stede} is closed again but
once a year an open air service is held
on the same spot.
---------------------------------------------------------

※ 番号不付きとする場合は \startREMARK[-],\REMARK[-] とします.

結果は次の通りです.

def03


以下はサンプルです.試してみてください.

例4:
---------------------------------------------------------
\defineenumeration[Example]
[location=left,text={\bfa 例題} ,
inbetween=\blank,after=\blank]

\Example 色は匂へど散りぬるを

\subExample 我が世誰ぞ常ならむ

\Example 有為の奥山今日越えて

\subExample 浅き夢見じ酔ひもせず
---------------------------------------------------------


例5:
---------------------------------------------------------
\defineenumeration[Define]
[location=left,text={\bfa 定理} ,
inbetween=\blank,after=\blank]

\Define 補元の一意性:$ x \vee y =1, x \wedge y = 0 \mbox{ならば} y=x' $

\subDefine $x''=z$ (記法:$(x')'$ を $x''$ と書く)

\Define べき等法則: $x \wedge x =x , x \vee x =x$

\Define 双対の原理:命題 {\bf A} が公理から導かれるならば,{\bf A} の双対も公理から導かれる.
---------------------------------------------------------

(5)\defineblock[NAME],\beginNAME~\endNAME
パラグラフを複数回利用するようなときに使われるようです.

例6:
---------------------------------------------------------
\defineblock[Natume,Shimazaki]
\hideblocks[Natume,Shimazaki]

\beginNatume[吾輩は猫]
吾輩は猫である.名前はまだ無い.
どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
\endNatume

\beginShimazaki[千曲川旅情]
小諸なる古城のほとり
雲白く遊子悲しむ
緑なす繁縷は萌えず
若草も藉くによしなし
しろがねの衾の岡辺
日に溶けて淡雪流る
\endShimazaki

\useblocks[Natume][吾輩は猫] (または \useblocks[Natume])
※ \selectblocks[Natume][吾輩は猫] でもよい.

あるいは
\useblocks[Shimazaki][千曲川旅情](または \useblocks[Shimazaki])
※ \selectblocks[Shimazaki][千曲川旅情] でもよい.
---------------------------------------------------------

\useblocks または \selectblocks を使って複数回の呼び出しができます.

\useblocks[Shimazaki][千曲川旅情]の結果を示します.

def04



  1. 2013/03/24(日) 12:42:21|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(10) -- Contents

ConTeXt では4種類の目次が作成できます.

● 本文目次 \section命令などによって部・章・節などを宣言したものの目次
● 付録目次 \startappendices命令などによって付録の章・節などを宣言したものの目次
● 図 目次 \caption命令などによって図の標題を宣言したものの目次
● 表 目次 \caption命令などによって表の標題を宣言したものの目次

さらに \placelistコマンドを利用すると数式リストなどの作成ができます.

基本的な目次の出力方法について説明します.

(1)\placecontent コマンドを使う
標準的に使用されます.『目次』などのタイトルは \title{目次} のようにしてユーザが定義します.
以下はサンプルです.(手持ちの書籍から目次の部分を転写しました)

例1:
---------------------------------------------
\title{目次}
\placecontent[width=1.5cm]
\chapter{数式処理システム Mathematica}
\section{Mathematica の概要}
\section{Mathematica における式と数}
\subsection{数式と数値の入力}
\subsection{リストとベクトル}
\subsection{論理計算}
\section{数式処理機能をつかてみる}
\subsection{多項式と有理式}
\subsection{方程式の解}
\subsection{ベクトルと行列}
\subsection{微積分}
\subsection{級数と数列}
\subsection{微分方程式の解法}
---------------------------------------------

結果を次に示します.

content

出力結果から次の事柄に注目します.

※ セクションの番号とタイトル間のスペースはオプション[width=1.5cm] のように調整ができる.
※ リーダー(タイトルとページを結ぶ点線)は標準では付かないがオプション[alternative=c]
のように指定してリーダーを付けることができる.
※ オプションの詳細は \setuplist を参照してください.

(2)\completecontent コマンドを使う
\placecontentと同様ですが,タイトルが予め用意されています.出力の際は改ページされます.
試してください.

例2:
---------------------------------------------
\setupheadtext[content=目次] %% 標準は ”Contents” で出力されます.
\completecontent[width=1.5cm]
\chapter{数式処理システム Mathematica}
\section{Mathematica の概要}
\section{Mathematica における式と数}
\subsection{数式と数値の入力}
\subsection{リストとベクトル}
\subsection{論理計算}
\section{数式処理機能をつかてみる}
\subsection{多項式と有理式}
\subsection{方程式の解}
\subsection{ベクトルと行列}
\subsection{微積分}
\subsection{級数と数列}
\subsection{微分方程式の解法}
---------------------------------------------

(3)\placelist コマンドを使う
\placecontentと同様の結果となります.

例3:
---------------------------------------------
\title{目次}
\placelist[chapter,section,subsection][alternative=c,width=2cm]
\chapter{数式処理システム Mathematica}
\section{Mathematica の概要}
\section{Mathematica における式と数}
\subsection{数式と数値の入力}
\subsection{リストとベクトル}
\subsection{論理計算}
\section{数式処理機能をつかてみる}
\subsection{多項式と有理式}
\subsection{方程式の解}
\subsection{ベクトルと行列}
\subsection{微積分}
\subsection{級数と数列}
\subsection{微分方程式の解法}
---------------------------------------------

(4)付録の目次
付録の目次は \startappendices ~ \stopappendices で\chapter や\section などを囲みます.
付録番号はA,B,...から始まり順次A.1, A.2, ... B.1, B.2, ...となります.

例4:
---------------------------------------------
\title{付録}
\placecontent
\startappendices
\chapter{付録A}
\section{その1}
\section{その2}
%
\chapter{付録B}
\section{その1}
\section{その2}
\stopappendices
---------------------------------------------

結果を次に示します.

append

(5)図の目次
使用した画像の一覧目次にはキャプション名が使われ \placelist[figure] で出力されます.

例5:
---------------------------------------------
\title{図目次}
\placelist[figure][alternative=c,width=1cm]
\placefigure[force][fig:001]{愛猫}
{\externalfigure[cat][width=3cm,type=png]}
\placefigure[force][fig:002]{愛犬}
{\externalfigure[dog][width=3cm,type=png]}
\placefigure[force][fig:003]{森と湖}
{\externalfigure[pic][width=3cm,type=png]}
---------------------------------------------

結果を次に示します.

figure

(6)表の目次
使用した表の一覧目次にはキャプション名が使われ \placelist[table] で出力されます.

例6:
---------------------------------------------
\title{表目次}
\placelist[table][alternative=c,width=1cm]
\placetable[force][tab:001]{定価表}
\starttable[|l|r|r|] ~省略~ \stoptable
\placetable[force][tab:002]{景気動向}
\starttable[|l|r|r|] ~省略~ \stoptable
\placetable[force][tab:003]{人口密度}
\starttable[|l|r|r|] ~省略~ \stoptable
---------------------------------------------

結果を次に示します.

table

(7)数式の目次
数式の目次は \placelist および \placenamedformula 命令で作成されます.

例6:
---------------------------------------------
\title{数式目次}
\placelist[formula][alternative=c]
\placenamedformula{根の公式}
\startformula
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
\stopformula

\placeformula $$ a = 2 $$

\placenamedformula{積分の式}
$$ f(x)=\int_0^\infty xdx +C $$
---------------------------------------------

結果を次に示します.

formula






  1. 2013/03/23(土) 09:51:08|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(9) --- Index

索引命令は \defineregister と \setupregister を使い実現されます.引数の名前として index が使われ
コマンドとして \index が特別に用意されています.名前は任意に決められますが,ここでは
煩雑さを避けるためデフォルトの \index を使用します.

pLaTeXの mendex のような日本語には対応してないため,少しばかり工夫する必要があります.

(1)コマンド形式:
● \index[読み]{登録語句1 + 登録語句2 + 登録語句3}
※ +記号を用いて,最大3レベルまで登録できます.

---------------------------------------
欧文の例:
\index{town}
\index{town + location}
\index[minus]{$-$}
\index[ConTeXt]{\ConTeXt}

和文の例:
\index[kumihann]{組版}
\index[sakuinn]{索引}
\index[innsatu]{印刷}
※ ”読み”は[ローマ字]あるいは[英語]で記述します.

特殊文字:
\index{@} , \index{\tex{}}
\index{\$} , \index{\%}
\index{\#} , \index{\&}
---------------------------------------

● \placeindex[parameter] または \completeindex[parameter]
parameter: \setupregister を参照.
※ 索引を出力します.

(1) \placeindex[parameter]
このコマンドが置かれた場所で索引は出力されます.
標題たとえば『索引』などはユーザが用意します.
(例) \subject{索引}

(2) \completeindex[parameter]
このコマンドを使うと改ページ(奇数ページ)されて索引は出力されます.
標題は決まっていて『1 index』のようになります.

● \seeindex[読み]{登録語句}{ページNOなど}
※ 単独では使用せず \index と組み合わせて利用されます.
例:\index[読み]{A+B}\seeindex[読み]{B}{see p-10}
(双方の[読み]は一致させておきます.)


● \startregister[index][レジスタ名]{登録項目} ~ \stopregister[index][レジスタ名]
※ ページ全体あるいは一部のパラグラフを登録項目としたい場合に利用されます.
[レジスタ名]は任意の名称を指定します.

(2)索引の分類文字について
索引の分類文字は英大文字(A~Z)または英小文字(a~z)に限られます.
和文用の(あ~ん)は用意されていません.

分類文字の英大文字(A~Z)または英小文字(a~z)の選択は\setupregister[alternative=]のオプションで設定されます.
デフォルトは英小文字となっています.

alternative=A/a,B/b のいずれかを指定します.
A : 英大文字(A~Z)
a : 英小文字(a~z)

B : 英大文字(A~Z) ただし,索引項目と同一並び
b : 英小文字(a~z) ただし,索引項目と同一並び

(3)索引の入出力例
例では\index,\seeindexの使い方が示されています.[読み]は一部,[computer]のような
英語表記もありますが,殆どはローマ字表記としています.

例1:以下は(LaTeX2e文典:生田誠三)から転写し,一部をConTeXt用に改造してあります.
---------------------------------------
\LaTeX{}\index[LaTeX]{\LaTeX}とはコンピュータ\index[computer]{コンピュータ(computer)}による
組版システム\index[kumihannshisutemu]{組版システム}.
広辞苑\index[kzjienn]{広辞苑}では,組版\index[kumihann]{組版}
\seeindex[kumihann]{組版}{$\Rightarrow$p.15}とは
『原稿にもとづいて活字ケースから
文選\index[bunnsenn]{文選}した活字を,原稿の指定に従って,順序\index[jyunnjyo]{順序}・
字詰\index[jizume]{字詰}・行数\index[gyousu]{行数}・字間\index[jikann]{字間}・行間・位置などを
正しく組み上げること』です.
印刷会社の組版工\index[kumihann]{組版+組版工}は,それまでに多くの組版工達によって培われてきた
数々の組版テクニック\index[kumihann]{組版+組版テクニック}を駆使して組版作業をします.
組版工の技量\index[kumihann]{組版+組版工の技量+$\Rightarrow$ 印刷の歴史}はその経験年数と共に向上していく...
\LaTeX{}\index[LaTeX]{\LaTeX}とはこのようなもの.

\startregister[index][mycat]{cat + 吾輩は猫である}
吾輩は猫である.名前はまだ無い.\par
どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
この書生というのは時々我々を捕えて煮て食うという話である.
しかしその当時は何という考もなかったから別段恐しいとも思わなかった.
ただ彼の掌に載せられてスーと持ち上げられた時何だかフワフワした感じがあった
ばかりである.
\stopregister[index][mycat]

\page

\subject{索引}
\placeindex
---------------------------------------

補足1:次を定義すれば見やすくなると思われます.試してください.

\def\MyIndexLine#1{#1\hfill}
\setupregister[index][n=2,balance=yes,pagestyle=normal,alternative=A,textcommand=\MyIndexLine]

補足2:パラグラフ全体の索引は \startregister ~ \stopregister を使います.

上記の出力例を示します.


索引例


  1. 2013/03/22(金) 08:02:13|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(8) --- Itemize

箇条書きについて
ConTeXt では (a)順番付き箇条書き (b)シンボル付き箇条書き (c)説明付き箇条書きの3種類の箇条書き
をサポートします.いずれも階層は最大4レベルまでです.
LaTeX における enumerate環境,itemize環境,description環境 に対応します.

(1)コマンド形式:
\startitemize[option][parameter] ~ \stopitemize
option:
a A KA n N m r R KR number continue standard
n*broad n*serried packed stopper joinedup
atmargin inmargin intro columns
parameter:
see \setupitemize
(詳細は\setupfloats, \setuptables, \setupcaptions など参照下さい)

(2)順番付き箇条書き
例1:(数字)オプション[n]を指定する
---------------------------------------
\startitemize[n]
\item 色は匂へど散りぬるを
\item 我が世誰ぞ常ならむ
\item 有為の奥山今日越えて
\item 浅き夢見じ酔ひもせず
\stopitemize
---------------------------------------

例2:(英大文字)オプション[A]を指定する
---------------------------------------
\startitemize[n]
\item 色は匂へど散りぬるを
\item 我が世誰ぞ常ならむ
\item 有為の奥山今日越えて
\item 浅き夢見じ酔ひもせず
\stopitemize
---------------------------------------

※同様にしてオプションをいろいろ変えてみて試してください.

(3)シンボル付き箇条書き
項目ラベルは標準ではデフォルト値で自動設定されます.
各項目には入れ子の内に向かい次の順に項目ラベルが付けられます.

例3:オプションなし
---------------------------------------
\startitemize
\item 色は匂へど散りぬるを
\startitemize
\item 我が世誰ぞ常ならむ
\startitemize
\item 有為の奥山今日越えて
\startitemize
\item 浅き夢見じ酔ひもせず
\stopitemize
\stopitemize
\stopitemize
\stopitemize
--------------------------------------

例4:項目ラベルの変更
--------------------------------------
\definesymbol[8][$\clubsuit$] %8番のシンボルをクラブに
\startitemize[8]
\item 色は匂へど散りぬるを
\item 我が世誰ぞ常ならむ
\item 有為の奥山今日越えて
\item 浅き夢見じ酔ひもせず
\stopitemize
--------------------------------------

(4)説明付き箇条書き
\item の代わりに \head を使います.行末は\parまたは空行を置きます.

例5:
--------------------------------------
\startitemize[1]
\head supported image formats in \PDFTEX \par
\startitemize[a]
\item png \item eps \item pdf
\stopitemize
\head non supported image formats in \PDFTEX \par
\startitemize[continue]
\item jpg \item gif \item tif
\stopitemize
\stopitemize
--------------------------------------

  1. 2013/03/21(木) 08:10:26|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(7) --- Table

テーブル(表)の作成について説明します.
ConTeXt には表を作成するために次の2つの環境が用意されています.


(A)標準表組み : \starttable ~ \stoptable
(B)タビング表 : \starttublate ~ \stoptabulate

(A)は(p)LaTeX の tabular & array環境,(B)はtabbing環境に対応するものです.

(1)標準的な表組みについて
コマンド形式:
\placetable[option][ref]{caption}{material}
option : here, force, top, bottom, left, right, page など
ref : 参照ラベル
caption : キャプション
material: 表本体

\starttable[カラムフォーマット]~\stoptable

詳細は\setupfloats, \setuptables, \setupcaptions など参照下さい.

(2)簡単な表を作成してみる
例1:横罫線を引く場合(\HL)
---------------------------------------
\placetable[here][tbl:001]{標準テーブル-I}{%
\starttable[|l|r|r|]
\HL
\NC 品名 \NC 単価(円) \NC 個数 \NC\AR
\HL
\NC りんご \NC 100 \NC 5 \NC\AR
\NC みかん \NC 50 \NC 10 \NC\AR
\NC マンゴ \NC 300 \NC 8 \NC\AR
\HL
\stoptable
}
---------------------------------------
説明
● 各行の要素間は \NC で結びます.改行は \AR (他にもありますが\ARで記述します)
● カラムフォーマットの基本には以下などがあります.
| ---------- column separator
c ---------- center column
l ---------- flush left column
r ---------- flush right column
p(dim) ---------- set each cell as a paragraph

● 横罫線を引く場合は \HL を使います.罫線の太さを指定するには \HL[2] などのように
オプションに[数値]を指定します.
● 縦罫線を引く場合は 上記の例には有りませんが,\VL を使います.
● 参照するには,\in を使います.

\in{表}[tab:001]は.......

例2:縦横の罫線を引く場合(\VL)
---------------------------------------
\placetable[here][tbl:002]{標準テーブル-II}{
\starttable[|l|r|r|]
\HL
\VL 品名 \VL 単価(円) \VL 個数 \VL\AR
\HL
\VL りんご \VL 100 \VL 5 \VL\AR
\VL みかん \VL 50 \VL 10 \VL\AR
\VL マンゴ \VL 300 \VL 8 \VL\AR
\HL
\stoptable
}
---------------------------------------

例3:カラム指定のいろいろ
---------------------------------------
[|*{n}{B}r|] ---------- n行分ボールド体にする.
[|*{n}{C{red}}] ---------- カラー(red)にする.
[|Ml|] ---------- Display math mode にする.
[|ml|] ---------- math mode にする.
[|w(2cm)r|] ---------- セル幅を2cmにする.
[|p(3cm)|] ---------- セル幅を3cm(パラグラフモード)
---------------------------------------

例4:カラム仕様にテンプレートを使う
\definetabletemplate でカラム仕様を一括で扱えるようにします.
---------------------------------------
\definetabletemplate[Z][|*{3}{C{red}}l|r|r|]
\placetable[here,force][tab:001]{none}
\starttable[Z] % <-- [Z]で代用
\HL
\VL 品 名 \VL 価格 \VL 個数 \VL\AR
\HL
\VL りんご \VL 100 \VL 5 \VL\AR
\HL
\VL みかん \VL 50 \VL 10 \VL\AR
\HL
\stoptable
---------------------------------------

(3)複数の表を並置する
コマンド形式:
\placetable[Option][ref]{全体caption}
\startcombination[C*R] % C=Column数, R=Row数
{\starttable[カラム仕様] ~ \stoptable}{個別caption}
{\starttable[カラム仕様] ~ \stoptable}{個別caption}
: (必要分繰り返す)
{\starttable[カラム仕様] ~ \stoptable}{個別caption}
\stopcombination

例5:2列1行に表を配置する
---------------------------------------
\placetable[here,force][tab:003]{複数表組みの並置}
\startcombination[2*1] %2列1段
{\starttable[|l|r|r|]
\HL
\VL 品名  \VL 価格 \VL 個数 \VL\AR
\HL
\VL りんご \VL 100 \VL 5 \VL\AR
\VL みかん \VL 50 \VL 10 \VL\AR
\VL マンゴ \VL 300 \VL 8 \VL\AR
\VL 梨   \VL 130 \VL 15 \VL\AR
\HL
\stoptable}{定価表}
%
{\starttable[|c|c|]
\HL
\VL \bf Year \VL \bf Citizens \VL\AR
\HL
\VL 1675 \VL 428 \VL\AR
\VL 1795 \VL 1124 \VL\AR
\VL 1880 \VL 2405 \VL\AR
\VL 1995 \VL 7408 \VL\AR
\HL
\stoptable}{Citizens}
\stopcombination
---------------------------------------

(4)表の周りにテキストを配置
コマンド形式:
\starttabletext[position][ref]{caption}{material} ~ \stoptabletext

例6:
---------------------------------------
\starttabletext[right][tab:016]{定価表}{
\starttable[|l|r|r|]
\HL
\VL 品名  \VL 価格 \VL 個数 \VL\AR
\HL
\VL りんご \VL 100 \VL 5 \VL\AR
\VL みかん \VL 50 \VL 10 \VL\AR
\VL マンゴ \VL 300 \VL 8 \VL\AR
\VL 梨   \VL 130 \VL 15 \VL\AR
\HL
\stoptable}
%
吾輩は猫である.名前はまだ無い.\par
どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは
記憶している.吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族で
あったそうだ.この書生というのは時々我々を捕えて煮て食うと
いう話である.しかしその当時は何という考もなかったから別段
恐しいとも思わなかった.ただ彼の掌に載せられてスーと持ち上
げられた時何だかフワフワした感じがあったばかりである.
\stoptabletext
---------------------------------------

(5)タビング表
ConTeXt には LaTeX と類似の機能をもつ,``Tabbing''があります.

コマンド形式:
\starttabulate[カラム仕様] ~ \stoptabulate

例7:
---------------------------------------
\starttabulate[|l|l|]
\NC A. \NC This Perfect Day \NC\AR
\NC B. \NC Opstaan op Zaterdag \NC\AR
\NC C. \NC Tot waar zal ik je brengen \NC\AR
\NC D. \NC The City And The Stars \NC\AR
\stoptabulate
---------------------------------------



  1. 2013/03/20(水) 08:06:08|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0

ConTeXt 雑記(6) --- Figure

画像を文書に貼り付けることに主眼を置いて記述します.
カラー画像の場合には \setupcolors[state=start] を予め宣言しておきます.

(1)文書に組み込み可能な画像フォーマットについて
ConTeXtがサポートする画像フォーマットはDVIウエアに依存しますが次の6種類です.

EPS(*)   Encapsulated PostScript
TIF(*)   Tagged Image File Format
JPG    Joint Photographic Experts Group
PDF    Portable Document Format
PNG    Portable Network Graphics
mps    MetaPost画像

注意: *印を付けた EPS と TIF は ConTeXt(MarkII Version) では扱えないようです.

(2)画像を貼り付ける
コマンド形式:
\placefigure[option][ref]{caption}{material}
option : here, force, top, bottom, left, right, page
ref : 参照ラベル
caption : キャプション
material: \externalfigure[画像名][parameter]
parameter: width, height, frame, type, scale など

詳細は\setupfloats, \setupexternalfigures, \setupcaptions など参照下さい.

例1:cat.pngを貼り付ける.
---------------------------------------
\placefigure[here,force][fig:001]{猫}%
{\externalfigure[cat][width=3cm,type=png]}
---------------------------------------
参照するには,\in を使います.

\in{図}[fig:001]は.......

例2:非フロートにするには \externalfigure を使います.
---------------------------------------
\midaligned{% 中央配置
\externalfigure[cat][width=3cm,type=png]}
---------------------------------------

例3:欄外に配置したい場合には
---------------------------------------
\inmargin{% 欄外配置
\externalfigure[cat][width=\marginwidth,type=png]}
---------------------------------------

(2)複数の画像を貼り付ける
コマンド形式:
● \useexternalfigure[識別名][画像][parameter]
parameter: width, height, scale, frame, type など

● \startcombination[C*R]{\externalfigure[識別名]}{caption} ~ \stopcombination
C*R : column数とrow数

例4:2列1行に画像を配置する
---------------------------------------
\useexternalfigure[DOG][dog][width=3cm,type=png]
\useexternalfigure[CAT][cat][width=3cm,type=png]
%
\placefigure[here,force][fig:002]{複数画像を並べる}
\startcombination[2*1]
{\externalfigure[DOG]}{愛犬タロ}
{\externalfigure[CAT]}{愛猫たま}
\stopcombination
---------------------------------------

(3)画像周りにテキストを配置
コマンド形式:
\startfiguretext[option][ref]{caption}{material} ~ \stopfiguretext

\startfiguretext[left][fig:003]{none}
{\externalfigure[cat][width=3cm,type=png]}
吾輩は猫である.名前はまだ無い.
どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
この書生というのは時々我々を捕えて煮て食うという話である.
\stopfiguretext




  1. 2013/03/15(金) 10:45:35|
  2. ConTeXt
  3. | トラックバック:0
  4. | コメント:0
次のページ