Select Japanese EUC if the characters are not shown properly.
Date: 2005-09-20
このディレクトリには、perl や ruby, bash などの script を置いて います。
bak 1.2 updated on 2005/09/16
creates a backup file which has a time string as its extension part
$ bak foo.txt
will creates foo.txt.XXXX, where XXXX is the current date.
cutcom updated on 2005-09-11
$Lastupdate: 2005-09-15 19:40:53 $
● 機能
cutcom は、script の説明文を切り出して、標準出力に書き出します。 現在のところ、ruby, perl, sh, bash, csh, elisp に対応しています。
script がどの言語のものかは、ファイルの拡張子とファイルの第1行を 読取って判断しています。
● ruby
ruby script では、行頭から書いた =begin, =end の間が説明文として 抽出されます。
● perl
perl script では、行頭から書いた =英字列、=cut の間が説明文とし て抽出されます。
● sh, bash, csh
shell script では、行頭から書いた #begin, #end の間が説明文とし て抽出されます。
#begin
#
# ここに説明を書く
#
#end
#begin がある行と #end がある行の間の註釈行は、行頭に # を置き、 その # の後に半角空白を1個置いて、説明文を書くものとします。 cutcom は、整形するときに、その行頭の '# ' をとり除きます。
● elisp
elisp program では、行頭から書いた ;begin, ;end の間が説明文とし て抽出されます。
;begin
;
ここに説明を書く
;
;end
;begin がある行と ;end がある行の間の註釈行は、行頭に ; を置き、 その ; の後に半角空白を1個置いて、説明文を書くものとします。 cutcom は、整形するときに、その行頭の '; ' をとり除きます。
● 使用方法
$ cutcom [options] fileName [FileName ...]
出力を整形するためのいくつかのオプションが用意されています。
;;; @(#) sample scipt
という行を最初に出力します。
--except '\.rb$'
とすると、拡張子 rb を持つスクリプトを処理対象から除外します。
---------------------------------------------------
* sample
ここにコメント
のような形式で出力します。
(注意) 何も指定しないと、環境変数 OS を調べて、出力の漢字コード と行末コードを windows では sjis, crlf に、unix では euc, lf に します。-s を指定すると、、sjis, crlf に、-e を指定すると、euc, lf にします。
● 例
$ cutcom -t "Script files" -o * | o2hf > index.html
とすると、カレントディレクトリにあるスクリプトファイルを一覧する html ファイル index.html が生成されます。
$ cutcom -t "script files " -o * > 00readme.txt
とすると、カレントディレクトリにあるスクリプトファイルを一覧する 文書を 00readme.txt に保存します。
説明文中にある japanese タグがある行は、default では取り除かれま す。-j オプションを指定すると、japanese タグを残します。
latex2gif.sh updated on 2005-09-16
標準入力から、latex ソースの断片を得て、プリアンブルと begin{document} 文を前に置き end{document} を後に置いて、latex 文書にしてコンパイルして得られる dvi ファイルを gif ファイルに変 換します。
生成する gif ファイルのファイル名は、ユーザが引数で指定します。 gif ファイルのファイル名を指定しなくても構いません。gif ファイル のファイル名を指定しない場合は、latex2gif-$$.gif の形のファイル 名を持つgifファイルが生成されます。
生成される gif ファイルは透明化 gif です。元図の白い部分が透明化 されます。
使用例
$ echo "$ y = ax + b$" | latex2gif.sh foo.gif
o2h の中で、latex2gif.sh を利用しています。
lstcmnt.rb 1.2 updated on 2005/09/10
カレントディレクトリにあるファイルからテキストファイルだけを選ん でファイル名とコメントを標準出力に書き出します。ファイルにコメン ト行(注)があれば,最初に見付かったコメント行を書き出します。
出力の例を示します。
~/script> lstcmnt.rb 00readme.txt script files ChangeLog * NaturalDisaster/ addhydrosys hydrosys-ML に登録します addmail add mails to ~/PastMail/2001 addspace 行頭に一定の数の空白文字を入れます。
(注) ^[ #;\/*%]*\@\(#\)[ ]*(.*)$ にマッチする行をコメント行と見 なします。言葉でいうと,行頭から半角空白または #;/ のいずれかの 文字の繰り返しの後に,@(#) がある行をコメント行と見なします。
処理スピードをあげるために,最初の $searchlines 行までに,コメン ト行がなければ,そのファイルにはコメント行が無いものとして処理し ます。
さらに処理スピードをあげるために、一度実行した結果をカレントディ レクトリの lstcmnt.ltf という名前のファイルに収録しておいて、こ のファイルよりも新しいファイルがなければ、収録しておいた lstcmnt.ltf を表示するようにしました。
このプログラムが呼ばれたときに、カレントディレクトリに lstcmnt.ltf という名前のファイルが無いか、あっても
当該ディレクトリに書込み権限がないとエラーになります。
標準出力に出力するとき、及びファイルに書き込むときの漢字コードは、 default では、euc ですが、環境変数 OS が定義されていて、その値の 文字列が windows を含んでいれば、生成されるファイルの漢字コード は、shift_jis になります。
標準出力に出力するとき、及びファイルに書き込むときの漢字コードを オプションで指定することもできます。
lastupdate updated on 2005-09-09
$Lastupdate: 2005-09-15 19:40:53 $
● 機能
引数を一つとります。引数にファイル名を指定します。引数に指定され たファイルの中に
$Lastupdate: 2005-06-28 15:37:01 $
のような記述があるとして、日付欄 (この例だと 2005-06-28) を読取っ て、標準出力に書き出します。ただし、上記の例では、ドル記号を全角 文字で書きましたが、実際には半角のドル記号 $ を使用してあるとし ます。
● 使用例
$ lastupdate cutcom
rmenglish unpdated on 2005-08-29
rmenglish - remove english comments
使用方法: rmenglish fileName
引数に指定したファイルの英語のコメント (ただし、後述する形式のも の) を削除して、標準出力に書き出します。
$ rmenglish foo-j.cc > foo-e.cc
現在の版は、c++ プログラム (拡張子が .h, .cc, .cpp のプログラム)、 java プログラム、perl プログラム、ruby プログラム、shell プログ ラム、emacs lisp プログラム、LaTex ソースに対応しています。
目的は、doxygen などのドキュメント生成プログラムで拾われる部分の 英語コメントを取り除くことにあります。すべての英語のコメントを除 くわけではありません。
● つぎのような英語のコメントを削除します。
/* <english> english comments ... ... </englih> */
この形のコメントで、/* <english> がある行を読み込んだ後は、*/ がある行までを削除します。コメント全体が削除されます。
このような形のコメント文があると想定するのは、C, C++, Java のプログラムだけです。
// This part is not removed. // // <english> // English comments included here will be removed. // ... // </english>
/* This part is not removed. <english> English comments included here will be removed. ... </english> */
# <english> # English comments included here will be removed. # .... # </english>
このような english comments は削除されます。
/* <japanese> ここに日本語のコメント ... </japanese> */
これは、つぎのようになります。
/* ここに日本語のコメント ... */
// This part is not removed. // // <japanese> // ここの日本語コメントは削除されます。 // ... // </japanese>
/* This part is not removed. <japanese> ここの日本語コメントは削除されます。 ... </japanese> */
# <japanese> # ここの日本語コメントは削除されます。 # .... # </japanese>
このような日本語コメントは、つぎのようになります。
// This part is not removed. // // ここの日本語コメントは削除されます。 // ...
/* This part is not removed. ここの日本語コメントは削除されます。 ... */
# ここの日本語コメントは削除されます。 # ....
rmjapanese unpdated on 2005-09-12
rmjapanese - remove japanese comments
使用方法: rmjapanese fileName
引数に指定したファイルの日本語コメントを削除して、標準出力に書き 出します。
$ rmjapanese foo-j.cc > foo-e.cc
現在の版は、c++ プログラム (拡張子が .h, .cc, .cpp のプログラム)、 java プログラム、perl プログラム、ruby プログラム、shell プログ ラム、emacs lisp プログラム、LaTex ソースに対応しています。
● つぎのような日本語のコメントを削除します。
/* <japanese> ここに日本語のコメント ... </japanese> */
この形のコメントで、/* <japanese> がある行を読み込んだ後は、*/ がある行までを削除します。コメント全体が削除されます。
このような形のコメント文があると想定するのは、C, C++, Java のプログラムだけです。
// This part is not removed. // // <japanese> // ここの日本語コメントは削除されます。 // ... // </japanese>
/* This part is not removed. <japanese> ここの日本語コメントは削除されます。 ... </japanese> */
# <japanese> # ここの日本語コメントは削除されます。 # .... # </japanese>
このような日本語コメントは削除されます。
a = 5; //; このコメントは削除されます。 print line #; このコメントは削除されます。 \Section{title} %; このコメントは削除されます。
/* <english> Here are english comments. ... </english> */
この形のコメントを
/* Here are english comments. ... */
に変更します。ただタグが削除されるだけです。
// This part is not removed. // // <english> // Here are english comments. // ... // </english>
/* This part is not removed. <englih> Here are english comments. ... </english> */
# <english> # ここの日本語コメントは削除されます。 # .... # </english>
o2h updated on 2005-09-19
一定の約束にしたがって記述された outline 文書を html 文書に変換 する ruby script です。unix だけでなく、cygwin や X on Windows 2 をインストールした windows 環境でも動作します。
$ o2h foo.txt > foo.html
のようにして、outline 文書 foo.txt を html 文書 foo.html に変換 します。
元のテキスト文書に
@begin{latexbox} -----------------------------------------------
\begin{equation*}
F(x) = \int_{-\infty}^x f(t)\;dt
\end{equation*}
@end{latexbox} -------------------------------------------------
のように書いておくと、o2h によって、つぎのように整形されます。
このように数式を表示することもできます。この機能を実現するために、 latex2gif.sh を o2h の内部で呼んでいます。
元になる outline 文書の漢字コードは、euc でなくても構いませんが、 生成される html ファイルの漢字コードは euc です。
このディレクトリに、outline 文書 foddp.txt と、それを o2h によって変換した html 文書 foddp.html を置いていま す。foddp.txt は outline 文書を記述するときの約束を 記述しています。
foddp で使用する emacs 関数 File, xv, Net, fiber を定義する kh-foddpfunc.el、foddp に従うアウトライン文書を編集するときに使 用すると便利な関数を定義している kh-foddp.el を http://hywr.kuciv.kyoto-u.ac.jp/~shiiba/programs/windows/elisp/ に置いています。
o2l updated on 2005-09-17
一定の約束にしたがって記述された outline文書を latex 文書に変換 する ruby script です。unix だけでなく、cygwin や X on Windows 2 をインストールした windows 環境でも動作します。
$ o2l foo.txt > foo.tex
のようにして、outline 文書 foo.txt を latex 文書 foo.tex に変換 します。
このディレクトリに、outline 文書 foddp.txt と、 それを o2l によって変換した latex 文書 foddp.tex, これをコンパイルして得た pdf 文書 foddp.pdf を置いています。 foddp.txt はoutline 文書を記述するときの約束を記 述しています。
o2t updated on 2005-09-14
一定の約束にしたがって記述された outline文書を outline 文書に変 換する ruby script です。unix だけでなく、cygwin や X on Windows 2 をインストールした windows 環境でも動作します。
$ o2t foo.txt > fooa.txt
のようにして、outline 文書 foo.txt を outline 文書 fooa.txt に変 換します。
元々 outline 文書である元の文書を別の outline 文書に変換する意義 は、変換するときに、* で始まる項目見出しから目次を生成して、それ を付加できることにあります。
このディレクトリに、outline 文書 foddp.txtと、 それを o2t によって変換した latex 文書 foddpa.txt を置いています。 foddp.txt はoutline 文書を記述するときの約束を記 述しています。
項目見だしで、見出しが出現するページを記載するものと、行数を記載 するもののいずれかを選択することができます。
# -i n 本文の行頭を n 文字字下げ
# -p n 1ページ n 行とする。
# -w n 本文の横幅を n カラムとして整形する
# -l ページを表示せずに行数を表示する
# -s 見出しは元のまま。* を採用。
# -b 目次はなし
生成するファイルの漢字コードは、default では、euc ですが、環境変 数 OS が定義されていて、その値の文字列が windows を含んでいれば、 生成されるファイルの漢字コードは、shift_jis になります。
内部で、w3m を呼んでいるので、w3m をインストールする必要がありま す。
等幅フォントを使用する方法を解説します。