2014年05月27日 情報科学類 コンピュータリテラシ 筑波大学 システム情報系 情報工学域 新城 靖 <yas@cs.tsukuba.ac.jp>
このページは、次の URL にあります。
http://www.coins.tsukuba.ac.jp/~yas/coins/literacy-2014/2014-05-27
あるいは、次のページから手繰っていくこともできます。
http://www.coins.tsukuba.ac.jp/~yas/
http://www.cs.tsukuba.ac.jp/~yas/
図? PaperCutのウィンドウ(iMac MacOSX)
https://violet-nwm.coins.tsukuba.ac.jp:9192/user
HTML で記述できる文書の構造:
CSS で記述できる表示の方法:
今日の課題では、 練習問題(1001) ことえりのバックスラッシュ入力 を行い、キーボードの「¥(円記号)」でバックスラッシュが入力されるようにす ると楽である。
以下、このページでは、「\」は ASCII 5c で「\(バックスラッシュ)」で表示 されるべきである。ブラウザによっては、円記号で表示されることがある。
TeX (テフ、テック、タオ・イプシロン・カイ) は、D.E.Knuth による文書整形 システム。マークアップ言語によりテキストファイルにTeX の命令を埋め込ん だ文書を作成し、言語処理系(texコマンド)を使うと、印刷に適したものになる。
LaTeX (ラテフ、レイテック)は、TeX を拡張して、論文を簡単に書くために適 した命令を増やしたもの。L.Lamport による。
pTeX (pLaTeX) は、publisher ASCII出版で、TeX, LaTeX で日本語が使えるよ うにしたもの。coins iMac で利用可能な物はこれの漢字コードとして UTF-8 と EUC が使えるものである。 (厳密には、e-TeX。手引き 6章 参照。) その他に、NTT により日本語化されたものもある。
TeX は、マクロプロセッサの一種。マクロとは、文字列の置き換えのこと。一 般的には、短い文字列から長い文字列、簡単な文字列から複雑な文字列に変換 (展開)する。
様々なマクロ定義をまとめたものを「パッケージ」という。 \usepackage により取り込んで使うことができる。 自分でマクロ定義を行うこともできる。
.tex
)を作成/編集する。
dvi 形式をPostScipt 形式に変換し、GhostScript (gs コマンド, gv コマンド) で表示する方法がある。プレビュー.app(Preview.app)でも、PostScript 形式の ファイルを(一旦PDFに変換して)画面に表示できる。
MacOSX では、dvi のよいプレビューアがないので、PDF に変換してからそれを 画面に表示することが多い。
HTMLで使えない文字 (< > &)と同様に、 LaTeX でも特別扱いする文字がある。 次の文字は、LeTeX が特別扱いする。
#,$,%,&,_,{,},\,<,>,|,^,~
The Unix Super Text 50.9.4項 参照、
これらの特殊文字を LaTeX 処理系に解釈させる(LaTeX の命令とする) には、 半角 (ASCII) を使う。同じ形で画面に表示される全角文字(漢字)を使っても、 命令とは見なされなず、単に他の漢字と同じように表示される。
1: %
2: % struct.tex
3: %
4: \documentclass[a4j]{jarticle}
5: \usepackage{graphicx}
6:
7: \title{ \LaTeX 文書の構造}
8: \author{ 新城 靖 }
9: \date{\today}
10: \西暦
11:
12: \begin{document}
13:
14: \maketitle
15:
16: \begin{abstract}
17: この文書は、\LaTeX 文書の構造を示したものである。
18: \end{abstract}
19:
20: \section{はじめに}
21:
22: 章立てには、section, subsection, subsubsection を用いる。パラグラフとパ
23: ラグラフの区切りは、空行を開ける。(paragraph や subparagrap は、普通は
24: 使わない。)
25:
26: \ref{sec:list}章では、3種類の箇条書きについて説明している。
27:
28: \subsection{見出し}
29:
30: \subsection{見出し}
31:
32: \section{箇条書き}
33: \label{sec:list}
34:
35: itemizeの例を示す。
36:
37: \begin{itemize}
38: \item 日本料理
39: \item 中華料理
40: \item 韓国料理
41: \end{itemize}
42:
43: enumerateの例を示す。
44:
45: \begin{enumerate}
46: \item メールリーダを実行する
47: \item 新着メールを取り込む
48: \item 新しいメールを書く
49: \item 新しいメールを送る
50: \item メールリーダを終了する
51: \end{enumerate}
52:
53: descriptionの例を示す。
54:
55: \begin{description}
56: \item[mnews] ネットワーク・ニュースと電子メールを読み書きするプログラム。
57: \item[emacs] テキスト・エディタの1つ
58: \item[Firefox] WWWブラウザ
59: \item[irc] 文字による会議システム
60: \end{description}
61:
62: \subsection{図の挿入}
63:
64: 図\ref{fig:latex-struct}に、\LaTeX の文書の構造を示す。
65: \LaTeX の文書は、プリアンブルと本文から構成される。
66: プリアンブルには、表題、著者、概要を記述する。
67: 本文は、章、節、項などから構成され、最後に参考文献が付く。
68:
69: \begin{figure}[t]
70: \begin{center}
71: \includegraphics[width=80mm]{latex-struct.eps}
72: \end{center}
73: \caption{\LaTeX の文書の構造}
74: \label{fig:latex-struct}
75: \end{figure}
76:
77: \subsection{見出し6}
78:
79: 数式を記述することもできる。
80:
81: $ \displaystyle \sum^{10}_{x=1} \frac{1}{x^{2}} $
82:
83: \section*{見出し7}
84:
85: 番号がつかない見出しもある。
86:
87: \end{document}
その他に、\section より大きい単位として\part と \chapter, \subsection より小さい単位として \paragraph, \subparagraph が使われることがある。通 常のパラグラフは、空行で作り、\paragraph は使わない。
手引き 6.13 参照。
<PRE>
相当。
\verb
を利用すると、1つの文の中にそのままの形の表示が混ぜられる。
\begin{verbatim} $ ls -l file1.txt -rw-r--r-- 1 yas prof 2 5 24 15:24 file1.txt $ \end{verbatim} コマンド \verb|ls -l| で、ファイルの属性を表示している。
HTML | LaTeX |
---|---|
<TITLE> | \title |
<body> | \begin{document} |
<H1> | \section |
<H2> | \subsection |
<H3> | \subsubsection |
<P> | 空行 |
<タグ id=""> | \label |
<A href=""> | \ref |
<UL><LI> | \begin{itemize} \item |
<OL><LI> | \begin{enumerate} \item |
<DL> | \begin{description} |
<PRE> | \begin{verbatim} |
<IMG> | \includegraphics |
<TABLE> | \begin{tabular} |
<ADDRESS> | \author |
PostScriptプリンタは一種のコンピュータで、PostScript 言語のプログラムを実行することができる。 実行結果として、印刷が行われる。 PostScript プリンタに対してテキストやワード・プロセッサの文書、ソース・プ ログラムをそのままプリンタに送っても、印刷されない。
PostScript プリンタに印刷するためには、プリンタにファイルを送る前になん らかの手段でPostScript のプログラムに変換する。 coins のプリンタに印刷する時には、PostScript 言語のプログラムを 作成して、プリンタに送っている。
The Unix Super Text 52.2.1 参照。
The Unix Super Text 17.1.2 参照。
図17-1 のプログラムは、括弧{}
が消えている。
復活したものを、ここ に置く。
%%BoundingBox: 0 0 512 322この例では、画像は、左下の座標(0,0)から右上の座標(512,322)の間にあるこ とを意味する。
C-SPC
または C-@
でマークを設定する。マークは画面に
は表示されない。マークが設定されると、一番下の行に「Mark set」と表示さ
れる。
M-w
または Esc w
でコピーする。
C-y
でペーストする。
M-w
の代わりに C-w
を使うと、コピーでは
なくカットになる。カットされた内容も、消えたわけでなく、 C-y
で
ペーストできる。
C-y
でペーストで
きる。
C-x C-x
で、カーソルの位置とマークの位置を入れ替えることが
できる。
図? Emacsのウィンドウとバッファとファイルの関係
C-x C-f
。
C-x 2
、C-x 3
C-x 1
、C-x 0
C-x b
C-x C-b
$ cp ~yas/p![]()
$ cp ~yas/public_html/![]()
$ ls *.tex
$ ls *.dvi
$ ls struct.*
$ platex
This is e-pTeX, Version 3.1415926-p3.4-110825-2.6 (utf8.euc) (TeX Live 2013)
restricted \write18 enabled.
**
! End of file on the terminal... why?
$
mkdir
コマンドで
作成するディレクトリとしては、ASCIIの範囲のものを使うと扱いやすい。以下
の記述でディレクトリの名前 dirname
には、各自自
分にとって分かりやすい適切な名前を考えて置き換えなさい。
「dirname
」 と入れてはならない。
$ mkdir dirname
$ cd dirname
$ cp ~yas/public_html/htdocs/coins/literacy-2014/2014-05-27/ex/struct.tex .
$ cp ~yas/public_html/htdocs/coins/literacy-2014/2014-05-27/ex/latex-struct.eps .
$ ls
latex-struct.eps struct.tex
$ platex struct.tex
<表示省略>
$ platex struct.tex
<表示省略>
$ ls
latex-struct.eps struct.dvi struct.tex
struct.aux struct.log
$
platex コマンドを、2回実行する。
この結果、.dvi ファイル、.aux ファイルが作成されていることを確認しなさい。
上の例では、さらに .log ファイルも作成されている。
$ ls
latex-struct.eps struct.dvi struct.tex
struct.aux struct.log
$ dvipdfmx struct.dvi
struct.dvi -> struct.pdf
[1][2]
80233 bytes written
$ ls
latex-struct.eps struct.dvi struct.pdf
struct.aux struct.log struct.tex
$
このように、struct.dvi
というファイルから
struct.pdf
が生成させる。このことを確認しなさい。
$ ls -l struct.pdf
-rw-r--r-- 1 yas prof 80233 5 26 21:42 struct.pdf
$ open struct.pdf
$
これにより、標準の PDF を表示するアプリケーションが実行される。
この PDF ファイルを、プリンタに送れば印刷することができる。 印刷のためのウインドウを表示しなさい(実際に印刷しなくてもよい)。
$ cp struct.tex name.tex
file.png
とうファイルから
file.eps
が生成させる。
他の名前のファイルを使う時には、適宜ファイル名を変えること。
$ ls -l file.png
$ convert file.png file.eps
$ ls -l file.eps
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
file.eps
という名前のファイルを表示している。
他のファイルを表示する時には、適宜ファイル名を変えること。
$ ls -l file.eps
$ gs file.eps
$ gv file.eps
以下の例は、file.ps
という名前のファイルを印刷している。
他のファイルを印刷する時には、適宜ファイル名を変えること。
$ ls -l file.ps
$ lpq
(キューの内容の確認)
$ lpr file.ps
$ lpq
(キューの内容の確認)
$ lpq
(キューの内容の確認)
$
lpr, lpq コマンドの代わりに lp コマンド、lpstat を使ってみなさい。
キュー参照。 The Unix Super Text 17.3 プリンタの使い方 参照。
dvipdfmx では、EPS 形式以外の画像、たとえば、PDF 形式の図を読み込むこともできる。
\includegraphics{file.pdf}この場合、描画領域(bounding box)を示すファイルを、拡張子 .xbb で別途作成する。
$ ls file.*
file.bb file.pdf
$ cat file.xbb
%%Title: ./file.pdf
%%Creator: extractbb 20130405
%%BoundingBox: 0 0 80 80
%%HiResBoundingBox: 0.000000 0.000000 80.000000 80.000000
%%PDFVersion: 1.4
%%Pages: 1
%%CreationDate: Mon May 26 17:20:03 2014
$
まず、LaTeX のファイルの先頭に近い部分にある、\usepackage
に、次
のように [dvipdfmx]
というオプションを付ける。
\usepackage[dvipdfmx]{graphicx}
この機能を確認しなさい。
拡張子 ".xbb" を持つ描画領域を含むファイルは、テキストエディタで作成する
こともできるが、普通は PDF ファイルから extractbb コマンドで作成する。
以下の例では、square.pdf
から square.bb
を作成している。
$ ls square.*
square.pdf
$ extractbb square.pdf
$ ls square.*
square.pdf square.xbb
$ cat square.xbb
%%Title: ./square.pdf
%%Creator: extractbb 20130405
%%BoundingBox: 0 0 80 80
%%HiResBoundingBox: 0.000000 0.000000 80.000000 80.000000
%%PDFVersion: 1.4
%%Pages: 1
%%CreationDate: Mon May 26 17:38:28 2014
$
この機能を確認しなさい。
キー | 説明 |
---|---|
C-SPC または C-@ | コピーする領域の先頭を決める(マークを設定する) |
C-w | マークした部分とカーソルの間の領域をカットする |
Esc w または M-w | マークした部分とカーソルの間の領域をコピーする |
C-y | コピー、または、カットしたものをペーストする |
C-SPC
または C-@ で、マークを設定する。
もし、C-SPC
がうまく動かない時には、
MacOSX Spotlight のショートカット・キーの設定を解除する。
M-w
または Esc w
でコピーする。
C-y
でペーストする。
M-w
の代わりに C-w
を使うと、コピーでは
なくカットになる。
C-y
でペーストで
きる。
C-x C-x
で、カーソルの位置とマークの位置を入れ替えることが
できる。
C-x 2 | ウインドウを2つに分割(現在のバッファを複数ウインドウで表示) |
C-x 1 | ウインドウを1つにする(他のウインドウを閉じる) |
C-x 0 | 現在のウインドウを閉じる |
C-x o | 他の(other)ウインドウにカーソルを移動。 |
C-x C-b | バッファのリストを表示 |
C-x b | 別のバッファを表示する |
MacOSX で動作する Emacs のバージョンによっては、スペースキーでの補完が
標準ではできないことがある。この時には、タブキーを使うか、次のような設
定を ~/.emacs
等の起動時に実行されるファイルに含める方法がある。
こうすると、ファイル名に空白を使いにくくなる。
(if (boundp 'minibuffer-local-filename-completion-map) (define-key minibuffer-local-filename-completion-map " " 'minibuffer-complete-word)) (if (boundp 'minibuffer-local-must-match-filename-map) (define-key minibuffer-local-must-match-filename-map " " 'minibuffer-complete-word))
$ cd /usr/texbin
$ ls
$ ls *dvi
$ ls *dvi*
tgif を実行するには、コマンドラインから tgif と打つ。
tgif は、X Window System (X11) の機能を利用して動作する。
tgif で作成した図を、EPS 形式で出力し、TeX で利用しなさい。
The Unix Super Text 下巻 第53章 ドローツール 参照。
http://takeno.iee.niit.ac.jp/~foo/tgif-jman/tgif-jman.html
参照。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
それぞれ実行した後、一番上のメニューバーにある「ファイル」メニューから 「開く」を選び、PDFファイルを指定する。
一番上のメニューバーにある「ファイル」メニューから「プリント」を選ぶと、 印刷することができる。
file.dvi
という名前のファイルから
file.ps
という名前のファイルを生成している。他のファイル
を表示する時には、適宜ファイル名を変えること。
$ ls -l file.dvi
$ dvips file.dvi
dvips コマンドについては、The Unix Super Text 50.7 参照。
なお、coins の dvips は、標準で(-o オプションをつけなくても)、.ps とい う拡張子を持ったファイルを生成する。標準出力に PostScript ファイルを出 力しない。従って、生成した PostScript ファイルを印刷するには、それを 以下で説明するlpr コマンド でプリンタ送る。
$ a2ps --help
$ a2ps -o file.ps file.txt
詳しくは、man a2ps を見なさい。
注意: a2ps コマンドは、日本語を扱うことはできない。日本語は、a2ps-j を 使いなさい。PostScript ファイルを作る時には、必ず -o オプションを使うこ と。-o オプションを付けないと、そのままプリンタに送られてしまう。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
$ a2ps-j -help
$ a2ps-j file.txt > file.ps
注意: -o オプションは使えない。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
M-x set-buffer-file-coding-system
文字コード | モードラインの表示 | Emacsの設定 |
EUC | E | euc-jp-unix |
JIS | J | iso-2022-jp-unix, junet |
Shift_JIS | S | shift_jis-unix |
UTF-8 | U | utf-8-unix |
emacsでの表記とモードライン | 制御コード(16進数) | 説明 | Controlキー | C言語表記 |
-unix : | 0a | nl (new line) | Control+j | \n |
-mac (Mac) | 0d | cr (carriage return) | Control+m | \r |
-dos (DOS) | 0d 0a (2文字) | cr nl | Control+m Control+j | \r\n |
dos (Disk Operating System) は、MS-DOS (Microsoft DOS) の意味。 Microsoft 社が Windows を発売するより前に発売していた OS の名前。
file.dvi
という名前のファイルを表示している。
他のファイルを表示する時には、適宜ファイル名を変えること。
$ ls -l file.dvi
$ xdvi file.dvi
終了するには、Quit ボタンを押すか、q キーを押す。
EPS 形式で読み込んだ図について、PS View ボタンや v キーで表示、非表示を切り替えなさい。
次のキーの動作を確認しなさい。
キー | 働き |
---|---|
q | 終了 |
n | next ページへ移動 |
p | previous ページへ移動 |
j | 下へ移動 |
k | 上へ移動 |
h | 左へ移動 |
l | 右へ移動 |
数 g | 数 のページ移動 |
数 s | 数 で指定されたサイズ変更 |
v | EPS 形式で読み込んだ図の表示非表示の切替え |
xdvi を印刷の目的でも利用することができる。 ただし、印刷の品質は必ずしも良いとは言えない。 以下の dvips を使った時と印刷の品質を比較しなさい。
以下の問題の回答(または確認番号)をテキスト・ファイルに記述し、 レポート提出ページから提出しなさい。
(1) 課題9(1)で作成し たWWW ページと同じ内容を含む TeX 文書を作成し、dvi ファイルを作成しなさ い。そのdvi ファイルから、PDF ファイルを作成しなさい。その PDF ファイル を印刷しなさい。WWW ページと TeX 文書で以下の点については、異なっていて もよい。
(2) LaTeX では、dvi ファイルを得るために 2 回 platex コマンドを実行して コンパイルを行う。なぜ 2 回実行する必要があるのか、簡単に説明しなさい。
(3) 手引きの次の部分を読みなさい。
(4) [加点] 同じ内容の文書を、次に示す2つ以上のスタイルを用いて整形し、 PDF ファイルを作成しなさい。ただし、スタイルファイルを使うための細かな 修正を行なってもよい。
PDF ファイルと LaTeX ファイルを TAに見せ、確認番号を受け取りなさい。レ ポートには、確認番号、利用したスタイル・ファイルの種別、および、細かな 修正を行った場合には、修正点を記入しなさい。 実施するには、LaTeX スタイルファイル、サンプル等と自分で作成するファイ ルの文字コードを合わせる必要がある。それには、 練習問題 Emacs M-x set-buffer-file-coding-system を使う方法がある。(5) [加点] 次の LaTeX の機能を全て利用してし、PDF ファイルを作成しなさい。