Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0000399Vine Linux1 バグ公開2006-11-26 16:422006-12-06 22:39
anonymous 
 
不明 
完了不明 
4.0 
 
apt-0.5.15lorg3.2-0vl8.1
0000399: apt-cache search で日本語/英語の不便
具体的な実装まで示せず「こうだったら便利だろう」と以前から思っていた夢ですが、公開するメリットもあるかと思い投稿します。(他力本願モード)

apt-cache search の際、日本語環境の場合は単純検索で網羅できない場合があります。
日本語に訳されているパッケージとそうでないものの違いだと思いますが、例として FTP クライアントを探したい場合を下の (1) 〜 (4) に示します。
(3) がお手軽に網羅する方法ですが、日本語化の成果を享受できません。
(4) は面倒です。(^^);
(1) の検索で (4) の結果が得られれば便利と思います。
それで、locale に固執せず英語の Summary や Descriprion まで検索してくれると良いのではないかと思いました。(思っただけですみません。)
英語は必ずあると思うので、英語で検索すれば網羅できて、日本語化されたものは説明が日本語で表示されるとありがたいと思います。


(1) client を英語で検索した場合
$ apt-cache search ftp client
kdebase - K Desktop Environment - core files
ncftp - An improved FTP client.

(2) client を日本語 (クライアント) で検索した場合
$ apt-cache search ftp クライアント
ftp - 標準的な UNIX FTP (ファイル転送プロトコル) クライアント
gftp - Xウィンドウ用マルチスレッドFTPクライアント
lftp - lftp - コマンドライン ftp/http クライアント
gambas2-gb-net-curl - 高度なネットワーク制御用のコンポーネント
squid - Squid ウェブプロキシキャッシュ
tftp - TFTP (Trivial File Transfer Protocol) クライアント

(3) LANG=C で (1) をやった場合 (結果が (1) と (2) の和になっているが、説明が英語)
$ LANG=C apt-cache search ftp client
ftp - The standard UNIX FTP (File Transfer Protocol) client.
gftp - A multi-threaded FTP client for the X Window System.
lftp - The lftp command line ftp/http client
gambas2-gb-net-curl - The advanced networking component
kdebase - K Desktop Environment - core files
ncftp - An improved FTP client.
squid - The Squid proxy caching server.
tftp - The client for the Trivial File Transfer Protocol (TFTP).

(4) 日本語環境で (3) と同じ結果が出るように試した例
$ apt-cache search "ftp.*(client|クライアント)"
ftp - 標準的な UNIX FTP (ファイル転送プロトコル) クライアント
gftp - Xウィンドウ用マルチスレッドFTPクライアント
lftp - lftp - コマンドライン ftp/http クライアント
gambas2-gb-net-curl - 高度なネットワーク制御用のコンポーネント
kdebase - K Desktop Environment - core files
ncftp - An improved FTP client.
squid - Squid ウェブプロキシキャッシュ
tftp - TFTP (Trivial File Transfer Protocol) クライアント
設定されていません。
? apt-ej-cache-search-1.2-rb2.nodic.src.rpm (6,796) 2006-12-05 01:24
http://mantis.vinelinux.org/file_download.php?file_id=124&type=bug
課題の履歴
2006-11-26 16:42anonymous新規課題
2006-12-05 01:24anonymous添付ファイル追加: apt-ej-cache-search-1.2-rb2.nodic.src.rpm
2006-12-05 01:24anonymousコメント追加: 0002132
2006-12-06 22:39kazutaka状態新規 => 完了
2006-12-06 22:39kazutakaコメント追加: 0002133

コメント
(0002132)
anonymous   
2006-12-05 01:24   
apt-ej-cache-search っていう shell script 作ってみました。
src.rpm を添付します。

> (1) の検索で (4) の結果が得られれば便利と思います。

$ apt-ej-cache-search ftp client
とすると
二番目の client って単語をテキスト辞書から検索して
片仮名読み とか 日本語訳を探して、見付かった単語を使って
$ apt-cache search ftp.*(client|クライアント)
とするといった感じです。

テキスト辞書として
カナ引き英語辞書というものがあるのでそれ使えるようにしてみました。
作者と連絡とれてないので src.rpm には入れてません。

kakasi のパッケージをインストールして
spec ファイルに書いてある SOURCE1 を ~/rpm/SOURCES において
rpmbuild -ba --define "withdic:1" apt-ej-cache-search.spec
とか
rpmbuild --rebuild --define "withdic:1" apt-ej-cache-search*.src.rpm
とすると辞書入りでパッケージを作れます。

SOURCE1 のファイル無しでも
edict のパッケージにある辞書ファイルを利用できます。

日本語とかを入れる部分は grep で検索してるだけなので
日本語<スペースかタブ>英語 英語
片仮名読み<スペースかタブ>英語 英語
みたいなテキストファイル作って利用出来ます。
(0002133)
kazutaka   
2006-12-06 22:39   
<BTS:wishes:25>に転記したので完了にします。