Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
2005-08-08
[go: Go Back, main page]

ZEditorの関連付け

龍さんがやっていたので早速試してみた。個人的には関連付けを意図的に出来た方が便利だと思ったので、龍さんの手順をそのままパッケージ化してみた。これならばソフトウェアの追加/削除でインストールするだけで関連付けも更新され、再起動も必要ない。(インストール後に表示される「情報を更新中」で再起動するのと同様の処理が行われる)

Zeditorとtxtファイルを関連づける
http://d.hatena.ne.jp/shachicoco/10050801
Zeditorとtxtファイルを関連づける2
http://d.hatena.ne.jp/shachicoco/10050807

以下の内容をターミナルから順番に入力すれば、ZEditor テキストファイル関連付けパッケージ zeditor-relation_0.0.1_arm.ipk が作成される。# で始まる行はコメントなので入力しなくてもいい。

#!/bin/sh
# パッケージインストール時に実行されるスクリプト preinst を作成する
# これは龍さんの古い方の zed_lnk_txt.sh そのままです
# preinst は root 権限で実行されるので sudo は不要です
echo '#!/bin/sh' > preinst
echo 'cd /home/QtPalmtop/apps/Applications' >> preinst
echo 'echo "" >> zeditor.desktop' >> preinst
echo 'echo "MimeType=text/*" >> zeditor.desktop' >> preinst
echo 'echo "MimeTypeIcons=TextEditor" >> zeditor.desktop' >> preinst
chmod +x preinst
# パッケージにするために必要な control ファイルを作成する
# Package がパッケージ名、Architecture がCPU種別、Version
# がバージョン、Depends が前提となるパッケージの名前
echo 'Package: zeditor-relation' > control
echo 'Priority: optional' >> control
echo 'Section: none' >> control
echo 'Architecture: arm' >> control
echo 'Version: 0.0.1' >> control
echo 'Depends: zeditor' >> control
echo 'Description: ZEditor relation package.' >> control
# 作成した control と preinst を control.tar.gz の名前で
# tar & gzip 圧縮する
tar cvf control.tar ./control ./preinst
gzip control.tar
# インストールするものは何もないので空のディレクトリ /opt
# を作って、これを data.tar.gz の名前で tar & gzip 圧縮する
mkdir opt
tar cvf data.tar ./opt
gzip data.tar
# control.tar.gz と data.tar.gz を tar & gzip 圧縮して、
# パッケージ名_バージョン_CPU種別.ipk の名前で保存する
tar cvf ipkg.tar ./control.tar.gz ./data.tar.gz
gzip ipkg.tar
mv ipkg.tar.gz zeditor-relation_0.0.1_arm.ipk
# パッケージ作成のために作ったファイルはパッケージが出来て
# しまえばいらないので削除する
rm control
rm preinst
rmdir opt
rm data.tar.gz
rm control.tar.gz

1行ずつ入力するのが面倒なら、上記内容を mkipk.sh などの名前で保存して、ターミナルから ./mkipk.sh のように実行してもいい。その場合、mkipk.sh は ZEditor などで eucJP で保存すること。
もう少しちゃんとやるなら、zeditor-relationをアンインストールした場合にはpostrmスクリプトでzeditor.desktopを元に戻すようにした方がいいかも。あと、アイコン(MimeTypeIcons)はメモ帳のを使ってるけど、ZEditorのアイコンにした方が関連付けが変わってることを意図的に感じられていいかも知れない。それと、本当はメモ帳の関連付けを外してからZEditorを関連付けた方がいいと思う。アルファベット順の都合上、たまたまzeditor.desktopがtextedit.desktopよりも優先になってるだけだと思うので。
当然ながらZEditorのバージョンアップ時は、zeditor-relation、zeditorのアンインストール後にzeditor、zeditor-relationの順にインストールしなきゃなんないです。
一応、上記手順で作成したパッケージを下記に置いておきます。
http://www.areanine.gr.jp/~nyano/archives/slzaurus/zeditor-relation_0.0.1_arm.ipk

続・ZEditorの関連付け

龍さん(id:shachicoco)や、会長さん(id:kaichosan)から反応があったので、アイコンをZEditorに変えるついでに、メモ帳から関連付けを外したり、アンインストール時に元に戻す手順を追加してみる。
インストール直前に実行されるスクリプト preinstはこんな感じ。

echo >> zeditor.desktop
grep ^MimeType textedit.desktop | sed -e s/TextEditor/zeditor/ >> zeditor.desktop
grep -v ^MimeType textedit.desktop > /tmp/textedit.desktop
cp /tmp/textedit.desktop textedit.desktop
  • 最初にZEditorのdesktopファイル末尾に改行が入ってないので追加。
  • メモ帳のdesktopファイルからMimeTypeで始まる行を抽出(検索文字列の先頭の「^」は行頭の意味を持つ文字)して、アイコン名のTextEditorをzeditorに変更してZEditorのdesktopファイルに追加。
  • メモ帳のdesktopファイルからMimeTypeで始まる行以外を抽出(-vオプションで検索文字列を含まない出力となる)して、/tmpに保存。
  • /tmpに保存したものをメモ帳のdesktopファイルとして上書き。

アンインストール直後に実行されるスクリプト postrmはこんな感じ。

grep ^MimeType zeditor.desktop | sed -e s/zeditor/TextEditor/ >> textedit.desktop
grep -v ^MimeType zeditor.desktop > /tmp/zeditor.desktop
cp /tmp/zeditor.desktop zeditor.desktop
  • ZEditorのdesktopファイルからMimeTypeで始まる行を抽出して、アイコン名のzeditorをTextEditorに変更してメモ帳のdesktopファイルに追加。
  • ZEditorのdesktopファイルからMimeTypeで始まる行以外を抽出して、/tmpに保存。
  • /tmpに保存したものをZEditorのdesktopファイルとして上書き。

こんな具合でいいかな?と。メモ帳およびZEditorのアイコンがアプリケーションのタブに無い場合(他のタブに動かしてたり、削除した場合)は正常に動作しないので注意。
どっちのスクリプトも先頭にBourneシェル(/bin/sh)で動作するシェルスクリプトである旨を示す「#!/bin/sh」と、作業ディレクトリの移動のための「cd /opt/QtPalmtop/apps/Applications」を入れておく必要がある。
一応、上記手順で作成したパッケージを下記に置いておきます。
http://www.areanine.gr.jp/~nyano/archives/slzaurus/zeditor-relation_0.0.2_arm.ipk
個人的にはちゃんと/opt/QtPalmtop/appsディレクトリ下にある全てのdesktopファイルからMimeType=textを含むファイルを抽出して、該当箇所を削除した後、全てのdesktopファイルからExec=zeditorを含むファイルを抽出して、いずれかにMimeType=textなどの行を追記してやれば、どんな状況にも対応できて綺麗なんだけどねー。

フィットの燃料タンク

定時後、ガス欠だったので最近定番の須磨のENEOSに寄って給油。うーむ、しかしリッター120円か・・・おまけにそんなにカラカラだったのか46.4リッターも入ってるし!えっと・・・フィットのタンクって42リッターなんですが(汗)給油パイプギリギリまで入れてるからか??
その後、いつもの下道に戻ってから帰宅。晩御飯はしじみの味噌汁と鳥と厚揚げと残り物のカレー。明日に備えて深夜0時半くらいにさっさと就寝。