`skktools`パッケージを追加
このマージリクエストではskktoolsをパッケージとして追加します。
この元のソースには多数のファイルが含まれているため、以下に作業時のメモを記述します。
元のskktoolsのファイル一覧は以下の通りです(参照:skktools-1_3_4
時点でのリポジトリ)。
ファイル一覧
$ ls -1 * **/*
acinclude.m4
ChangeLog
compile
config.guess
config.h.in
config.sub
configure
configure.ac
convert2skk/adddummy
convert2skk/alpha-kana.pl
convert2skk/aozora2skk.rb
convert2skk/atok2skk.pl
convert2skk/canna2skk.rb
convert2skk/chasen2skk.rb
convert2skk/ctdicconv.rb
convert2skk/dic-it2skk.rb
convert2skk/doc2skk.sh
convert2skk/edict2skk.awk
convert2skk/ipadic2skk.rb
convert2skk/list2skk
convert2skk/prime2skk.rb
convert2skk/pubdic2list
convert2skk/read.me
convert2skk/README.md
convert2skk/removedummy
convert2skk/skk2list
convert2skk/skk-wordpicker.rb
convert2skk/wnn2skk.awk
convert2skk/wnn2skk.sed
convert2skk/wnn2skk.sh
convert2skk/wx2skk.pl
COPYING
dbm/makedbmdic4
dbm/makedbmdic5
depcomp
filters/abbrev-convert.rb
filters/abbrev-simplify-keys.rb
filters/annotation-filter.rb
filters/asayaKe.rb
filters/complete-numerative.rb
filters/conjugation.rb
filters/make-tankan-dic.rb
filters/README.md
filters/skkdictools.rb
install-sh
ltmain.sh
Makefile.am
Makefile.in
missing
mkinstalldirs
README.md
READMEs/FAQ.txt
READMEs/README.C
READMEs/README.skkdic-diff
READMEs/README.skkdic-expr2
saihenkan.rb
skk2cdb.py
skkdic-count.c
skkdic-diff.scm
skkdic-expr2.c
skkdic-expr.c
skkdic-sort.c
skk.ex
skk-xml.el
test/SKK-JISYO.S
test/SKK-JISYO.S.shuffle
test/SKK-JISYO.S.split1
test/SKK-JISYO.S.split2
test/SKK-JISYO.S.split3
unannotation.awk
VERSION
これらについて、ファイルは主に以下の4つに分けられます。
- ドキュメント
- プログラムのコンパイル用(Autotoolsを含む)
- スクリプトとライブラリ
- テスト用
このうちドキュメントとプログラムのコンパイル用(及びテスト用)のファイルについては特に注意点はありません。
プログラムについては通常のgnu-build-system
によりコンパイルできます。
一方でスクリプトについては古びたものがいくつかあります。 例えば以下はjperlやjgawkという処理系が実行に必要になります。 jperlはもとより、awk拡張子のスクリプトも通常のgawkでは動作しない恐れがあるため省きました。
convert2skk/alpha-kana.pl
convert2skk/atok2skk.pl
convert2skk/edict2skk.awk
convert2skk/obsolete/*
-
convert2skk/wnn2skk.awk
(及びconvert2skk/wnn2skk.sed
をconvert2skk/wnn2skk.sh
) convert2skk/wx2skk.pl
dbm/*
実行に多数のプログラムを呼び出すシェルスクリプトconvert2skk/doc2skk.sh
、構文エラーが含まれるconvert2skk/pubdic2list
といったスクリプトについてはインストールしないことにしました。
前者はそのために依存関係を増やしたくないと考えたからです。
似た理由でEmacs Lispの関数を定義したファイルskk-xml.el
がありますが、Emacsを依存関係に加えることはないと判断しました。
人によってemacs-next
などをインストールしていることも考えられるからです。
その他、スクリプトについて確認した点は以下です。 完全なテストは省いているため、どうしても動作しない恐れがあることをパッケージの説明に記載しました。
- 実行権限が付いていること。
- 他のファイルに依存しているかどうか。
ライブラリとして依存しているファイルがある場合、そのファイルも配置されるようにします。
その際そのファイルを読み込む部分 (e.g.
require_relative
) の修正も行います。 - 他のプログラムに依存しているかどうか。 特にシェルスクリプトの場合に可能性があります。
- 簡単なコマンドの実行が行えること。
また、プログラムとスクリプトについて、全てGPLバージョン2以降の利用許諾です。
このパッチの作成にあたってDebian、Arch Linux、Nixのパッケージの定義を参考にしました。
プログラムのコンパイルに際しては、必要なライブラリの手掛かりになりました。
当初スクリプトをbin
以下に置くことを考えていましたが、結局share/skktools
以下に置いたのはこれらに倣ったためです。