[目次] [前回] [次回] [重要語索引]

第7週: 文書処理(1)

7. 1 文字について
7. 2 文字コードの変換
7. 3 練習問題
7. 4 文書処理とは
7. 5 LaTeXの処理の流れ
7. 6 ソースファイルの書き方
7. 7 空白とコメント
7. 8 大きさと書体の変更
7. 9 記号とアクセント
7.10 行揃え
7.11 箇条書き
7.12 脚注
7.13 章,節の見出し
7.14 タイトル
7.15 エラーが起こったら
7.16 練習問題
7.17 宿題
7.18 おまけ

7.1 文字について

365ページ

文書処理をするためには,まず文字がコンピュータの中でどのように取り扱われているかを知らなければなりません.

注意: 一般によく使われる設定でのバイト数とフォントの大きさから,ASCII と JIS X0201 は「1バイト文字」や「半角文字」,JIS X0208 は「2バイト文字」や「全角文字」と呼ばれることがあります. ただし,常にそのような設定になっているとは限りません.

注意: アルファベットと記号類は ASCII と JIS X0201 と JIS X0208 に同じものがだぶって含まれています.違う文字集合の中の同じ文字は,次のように扱われるのが普通です.

7.2 文字コードの変換

文字の符号化方式,あるいは符号化された結果のことを簡単に文字コード(character code)と言うことがあります.一種類の文字コードを使っていれば問題はないのですが,ソフトによって対応する文字コードが違っていたりするので,文字コードを変換しなければならないことがあります.特に,UNIX とパソコンの間でファイル転送をすると,普通は文字コードの変換が必要になります.

emacs の場合

emacs は多国語対応のエディタですが,CNS では特に指定しない限り日本語の文字集合と符号化を使うように設定してあります.

文字コードを自分で指定する場合は次のようにします.

文字コードを指定する時には補完機能(4.2 補完)が使えます.たくさんの文字コードがありますが,日本語で普通使うのは iso-2022-jp,euc-jp,sjis の3種類です.さらに文字コードの後に -unix,-dos,-mac を付けることもできて,その場合には改行文字が UNIX 方式,マイクロソフト方式,アップル方式のどれであるかを示します.

バッファの文字コードはモードラインに次のように表示されます.

端末モードで emacs を使う場合(5.5 端末モードでの emacs の使用)は,表示と入力のための文字コードも指定します.

nkf コマンドの場合

端末ウィンドウでは,nkf コマンドを使って文字コードを変換することができます.

% nkf -s test >test.sjis
%

7.3 練習問題

  1. [Mule]→[Show Script Examples] C-h h とすると,各国語のサンプルが表示されますから,やってみましょう.まず必要なフォントを読み込むので少し時間がかかります.この中で自然言語ではないものが一つありますが,どれでしょう?
  2. emacs のウィンドウの中で,シフトキーを押しながらマウスの左ボタンを押すと,フォント変更メニューが出ます.適当なフォントに変更してみなさい.Courier のように日本語文字集合に対応していないフォントを選択すると,日本語はどのように表示されるでしょうか?元に戻す時は [Fontset]→[14: 14-dot medium] を選択しなさい.
  3. emacs で適当な日本語のファイルを作り,その文字コードを EUC-JP に変換しなさい.次に,それを nkf で Shift_JIS に変換したファイルを作りなさい.そのファイルを emacs で読み込み,モードラインの表示がどうなっているか確認しなさい.

7.4 文書処理とは

これまで,テキストエディタを使って電子メールなどを書いてきましたが,テキストエディタでは文字の大きさを変更したり,箇条書きを行ったりすることがうまくできません.そのため,レポートなどの文章を書く場合には,文書処理システム(document processing system)を用います.文書処理システムには,大きく分けて2種類あります.

  1. WYSIWYG型: ワープロのように,画面上で文字の大きさ等を変更することができ, 画面で見えるものをそのまま印刷することができます.
  2. マークアップ言語型: マークアップ(原稿をどのように整形するか伝えるための付記)を含んだテキストを作成し, それを処理することにより清書した文章を印刷します.
ここでは,マークアップ言語型の LaTeX と呼ばれる文書処理システムを勉強します. LaTeX には以下のような特徴があります.

第10週以後では,同じマークアップ言語型で,インターネットを使った文書配信用に作られた HTML を勉強します.

7.5 LaTeXの処理の流れ

298ページ

  1. emacs で,LaTeX のマークアップを含んだテキストファイルを作ります.LaTeX 用のファイルであることが分かるように,ファイル名の最後に .tex を付けておきます.このファイルのことをソースファイル (source file)と呼びます.
    \documentclass{jarticle}
    \begin{document}
    Hello, world.
    \end{document}
    
  2. ソースファイルを印刷できるファイルに変換するには,platex コマンドを使います.端末ウインドウにおいて次 のように実行します.
    % platex test.tex
    This is pTeX, Version p2.1.5, based on TeX, Version 3.14159 (JIS) (Web2c 7.0)
    (test.tex
    pLaTeX2e <1997/07/02>+1 (based on LaTeX2e <1996/12/01> patch level 0)
    (/usr/local/share/texmf/tex/platex/base/jarticle.cls
    Document Class: jarticle 1998/10/13 v1.1n Standard pLaTeX class
    (/usr/local/share/texmf/tex/platex/base/jsize10.clo))
    No file test.aux.
    [1] (test.aux) )
    Output written on test.dvi (1 page, 232 bytes).
    Transcript written on test.log.
    % 
    
    test.tex というソースファイルを処理すると,test.dviというファイルができるか,またはエラーで 停止します.
  3. エラーの場合は,C-c で処理を中止します. それから,ファイルを修正してエラーの原因を取り除き,再び platex の処理をやり直します.
  4. test.dvi というファイルが出来たら, 印刷する前に,ディスプレイで確認します. これをプレビュー(preview)といいます.xdvi コマンドを実行すると,新しいウィンドウに整形結果が表示されます.
    % xdvi test.dvi &
  5. プレビューの結果が良ければ,印刷します. test.dvi はテキストファイルではないので,a2ps コマンドは使えません.代わりに dvi2ps コマンドを使います.
    % dvi2ps test.dvi | lpr -Pnps15
    @(#)dvi2ps (j-version) 2.0j
    [/usr/local/lib/dvi2ps/dvi2.ps] [/usr/local/lib/dvi2ps/fonts/ascfix-m.ps] 
    Prescanning .
    Reading font info .
    [1] 
    %
    

7.6 ソースファイルの書き方

302ページ

LaTeX でのマークアップは主として制御語 (control word)によって表します.これは「\」の後に単語をつけたものです.制御後によっては,その後にオプションや引数を書くものがあります.オプションは [ ] の中に,引数は { } の中に書きます.

注意: 制御語の後にオプションも引数もない場合は,次の単語とくっついてしまわないように,空白を入れます.次の単語が日本語の場合は忘れやすいので特に注意してください.

ソースファイルの構成は次のようになっています.

\documentclass[クラスオプション]{文書クラス}
  プリアンブル
\begin{document}

  本文

\end{document}
文書クラス
文書全体の体裁を指定します.主なクラスには次のようなものがあります.
クラスオプション
文書クラスの補足や機能の追加を指定できます.必要がなければ省略できます.複数指定する時はコンマで区切ります.例えば jarticle クラスに対して指定できるオプションには次のようなものがあります.
プリアンブル
使用するパッケージや,パラメータの値を定義します.必要がなければ何も書かなくてかまいません.
本文
印刷すべき文章はすべてここに記述します. ここ以外の場所で記述した文章は LaTeX 処理では受け付けられません. たとえば \end{document} の後に何か文章があっても, それは本文として処理されません.

7.7 空白とコメント

ソースファイルの中の空白と改行は,単語を区切る役目しかしません.どんな書き方をしても,LaTeX は指定された幅に単語が均等に詰まるように自動的に配置し ます.

文字と文字の間に余分に空白をあけたいときは, 「\ 」(バックスラッシュの後に空白)と書きます. 行と行の間に余分に空白をあけたいときは,次の制御語を使います.

空行(改行だけの行)は,段落の切れ目を表します.

%」があると,そこから行末までは無視されます.書いた文章の一部を一時的に消したい場合や,コメントとして何かを書いておきたい場合などに使えます.

7.8 大きさと書体の変更

310ページ

文字の大きさを変更するには次の制御語を使います.大きさは基本の文字の大きさに対して相対的になっています.クラスオプションで文字の大きさを変更していなければ,基本の大きさは10ポイントです.

本文の中に上の制御語があると,その直後の文字から後が指定された大きさになります.一部分だけ変更したいときは,次のように「{ }」で囲んで,有効範囲を制限します.
普通の文字 {\Huge 大きな文字} 普通の文字

書体は,次の3種類の指定の組み合わせで決まります.

ここでは,引数のテキストを指定されたファミリーで表示する制御語だけを紹介します.他の指定については CNS ガイドを参照して下さい.

7.9 記号とアクセント

LaTeX のマークアップに使っている,「\」,「{」,「}」,「%」,「$」などの記号は, そのまま出力することができません. そのため,

$\backslash$
\{
\}
\%
\$
などと書きます.

LaTeX は独自のフォントを持っているので,ASCII や JIS の文字集合に含まれていない記号やアクセント付きの文字を出力できます.これはキーボードや端末エミュレータでは取り扱えないので,制御語を使って表現します.詳しくは CNS ガイドを参照して下さい.

7.10 行揃え

315ページ

通常の文章は,両端揃えになるように適切なところで改行が行われます. 違った揃え方をするには,次のような制御語を使います.このように \begin\end で 囲まれた部分を環境(environment)と呼びます.

上の環境の中では,指定しない限り改行は行われず,1行で表示されます. 改行の指定には 「\\」 を書きます.
\begin{flushright}
環境情報学部1年 藤沢太郎 \\
2000年5月10日
\end{flushright}

7.11 箇条書き

箇条書きをするためには,箇条書きの環境の中に項目をいくつか並べます.箇条書きの種類によって次のような環境がありますが,各項目はどれも \item で指定します.

7.12 脚注

327ページ

脚注をつける場合は,本文の脚注をつけたいところに,\footnote{テキスト} と書きます.すると,その位置には脚注番号が出力され,引数のテキストはページの下に小さなフォントで出力されます.

私は SFC\footnote{湘南藤沢キャンパスの略}の学生です.

7.13 章,節の見出し

323ページ

章,節などの見出しには次の制御語を使います.自動的に章番号や節番号がつ きます.

\part は,かなり厚い文書の場合に使うのが普通 です.jarticle で短い文書を書くときは,\section と \subsection だけで十分です.

7.14 タイトル

324ページ

文書にタイトルを付けるには,\maketitleを使い ます.

\documentclass[a4j,12pt]{jarticle}

\title{情報処理Ia \LaTeX 練習}
\author{学部名 1年 学籍番号  氏名}
\date{\today}

\begin{document}
\maketitle

\section{はじめに}
  ---  一言,何か書く ---

\end{document}

7.15 エラーが起こったら

307ページ

platex コマンドで文章を処理していると, エラーを発見して入力を待つ状態になることがあります.

7.16 練習問題

LaTeXのエラーを取り除く練習をしてみましょう. /pub/sfc/ipl/1a/exercise/err.tex は,間違いを3箇所含んだソースファイルです.これを自分のホームディレクトリにコピーし(3.10 ファイルとディレクトリを扱うコマンド),エラーを修正して次のような結果が出るようにしなさい.

7.17 宿題

  1. 自分はなぜ SFC に来たのか,4年間でどんなことがしたいか,卒業後はどうしたいか,ということについて,タイトルと章見出しの付いた文章にして LaTeX で清書しなさい.文書クラスは jarticle,クラスオプションは a4j がよいでしょう.
  2. 上の文章の文書クラスを次のように変えて,整形結果がどう変わるか調べなさい.
    • jreport
    • jbook
    また,クラスオプションを次のように変えて,整形結果がどう変わるか調べなさい.
    • a4j,11pt
    • a4j,12pt
    • a4j,twocolumn

7.18 おまけ

文字コードについてさらに詳しく知りたい人は,インターネットメールの注意点 (文字化けメール根絶の野望)などを参照して下さい.


[目次] [前回] [次回] [重要語索引]

慶應義塾大学の授業以外での無断利用、複製はご遠慮下さい。
Copyright (c) 2000 慶應義塾大学