-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathREADME.ja
144 lines (100 loc) · 11.5 KB
/
README.ja
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
このプログラムについて
昔なつかし2画面のコンソールファイラ(CUIファイラ)、mfiler4のプロジェクト。(コンソールファイラは国産アーキテクチャがあったころのMS-DOS時代に盛んに作られていた)。インタラクティブシェルxyzshを組み込み、柔軟にファイルの管理やスクリプトの実行ができる。 Linux, OSX, cygwin, FreeBSDに対応しています。インストールにはxyzshのインストールが必要となります。先にxyzshをインストールしてください。
うりは多彩な表示モード、ソートオプション、findやgrepによる仮想ディレクトリの作成、xyzshシェルとのシームレスな連携です。このソフトからbashやFinderやnatuilusも開けます。
使用上の注意
このプログラムの実行は自己責任で行ってください。ファイル操作やプログラムの実行という重要な操作を行うプログラムであるという認識は作者にもあり、しっかりとデバッグを行っていますが、もし見過ごしている不具合があって、実行結果によって使用者が被害を被っても作者は責任は持てません。このことが承知できる方だけ使用してください。
コンパイルの仕方
コンパイルするためにはまずmfiler4が使っている(依存している)ライブラリをインストールする必要があります。
mfiler4が依存しているプログラム、ライブラリは
gcc (コンパイラ)。
Cライブラリ。
ncurses(w) (端末制御ライブラリ。画面に文字列を任意の場所に表示するためのライブラリ。このライブラリがないとmfiler4やvimのようなソフトは作れません)
oniguruma (正規表現ライブラリ。正規表現という文字列を楽に操作するため文字列処理用のライブラリです)
libm (数学ライブラリ。三角関数や指数計算などを行えるライブラリ)
xyzsh (シェルスクリプト言語ライブラリ。mfiler4から使えるアプリケーション組み込み用のシェルスクリプト言語です)
C/migemo (日本語が変換無しのローマ字入力で検索できるライブラリ。このライブラリは無くてもコンパイルできます)
の7つです。
gccはFedora, Debian, Ubuntuのいずれもgccという名前のパッケージになってます。インストールしてください。Ubuntuはgccはデフォルトで入ってます。
Cライブラリは大抵のディストリビューションではデフォルトで入っています。Ubuntuでは2010年2月現在ではlibc6-devという名前になっています。インストールしてください。
ncursese(w)は大抵のディストリビューションで最初からインストールされていますが、インストールされているのはユーザー用のパッケージである場合が多いです。コンパイルするためには開発用のパッケージをインストールする必要があります。Fedoraでは開発用のパッケージ名は-develと名づけられていることが多いです。ncurses(w)の場合はncurses(w)-develとなっています。Debian, Ubuntuでは-devというのが開発用のパッケージで、ncurses(w)の場合はlibncurses(w)-devとなっています。UTF8文字を端末上に表示させるにはncursesではなくncurseswが必要となります。
onigurumaも大抵のディストリビューションでパッケージになっていてFedoraではoniguruma-devel, Debian, Ubuntuではlibonig-devをインストールすれば良いです。
libmは開発用のパッケージも大抵のディストリビューションでデフォルトでインストールされているはずです。
xyzshは僕が作ったものでパッケージになってないのでコンパイルする必要があります。以下のページで配布してあるのでコンパイルしてインストールしてください。
シェルスクリプト言語xyzsh http://sourceforge.jp/projects/xyzsh/
C/Migemoはパッケージになっているディストリビューションやなっていないディストリビューションがまちまちです。Fedoraではパッケージ名がcmigemo-develとなっています。Debian, Ubuntuではパッケージになっていないようなので以下のページでインストールしてください。
Kaoriya.net http://www.kaoriya.net/#CMIGEMO
ダウンロードするファイルはソースコード 1.3開発版 (MITラインセンス)がいいでしょう。コンパイル方法はダウンロードしたファイルの中のドキュメントに書いてあります。
注) 2010/03 KaoriyaのC/MigemoはUTF8の辞書ライブラリがありませんでした。/usr/share/cmigemo/{eucjp,sjis}か/usr/local/share/migemo/{eucjp,sjis}に置いてある辞書ファイル全てをnkf -w 辞書ファイル名 > /usr/local/share/migemo/utf-8/辞書ファイル名としてUTF-8の辞書を作ってください。
注) 2013/01 mfiler4自体はC/Migemoに依存関係が無くなりました。xyzshがC/Migemoに依存します。xyzshのコンパイルをするときにC/Migemoをコンパイルするように指定すればmfiler4のインクリメンタルサーチでもC/Migemoを使うことができます。
注) 2013/08 パフォーマンスの問題で再びmfiler4自体にC/Migemoに依存関係ができました。Migemoを使ったインクリメンタルサーチをするためには--with-migemo --with-system-migemodirを指定してconfigureする必要があります。
あと以下のプログラムにも依存しています。
多言語対応ページャ lv
高機能エディッタ vim
lvは大抵のディストリビューションでパッケージになっています。日本語でヘルプを読むために必要です。lessはディストリビューションによっては日本語が化ける場合があるようなのでページャはlvがおすすめです。
vimは大抵のディストリビューションで入ってます。Linuxで使用するエディッタはvimがおすすめです。
さて依存ライブラリ、依存プログラムが全てインストールできたら(C/Migemoの使用は任意です)
mfiler4-version.tgzをダウンロードして作業用のディレクトリで解凍してください。
tar xvfz mfiler4-version.tgz
解凍したらできたディレクトリに移動して
./configure
make
sudo make install
もしくは
./configure
make
su
make install
(make installの実行には管理者権限が必要です)
実行すれば/usr/local/binにmfiler4コマンドが, /usr/local/etc/に設定ファイルがインストールされます。
configureでは以下のオプションが使用できます。
--with-debug デバッグ用の実行ファイルを作成する。メモリリークの検出やgdbでデバッグできる-gオプションをgcc(コンパイラ)に付与します。
--prefix インストールするディレクトリを指定します。たとえば--prefix=$HOMEとすると$HOME/binに実行ファイルが$HOME/etcに設定ファイルが設定されます。デフォルトでは/usr/localです。
--with-optimize コードの最適化を有効にします。
--with-onig-dir 鬼車が標準の場所にインストールされていない場合はインストールされたディレクトリを指定します。
--with-xyzsh-dir xyzshが標準の場所にインストールされていない場合はインストールされたディレクトリを指定します。
--with-migemo C/Migemoを有効にします。C/Migemoはインストールしただけではmfiler4で使われません。このオプションを指定して有効にしてください。
--with-migemo-dir C/Migemoが標準の場所にインストールされていない場合はインストールされたディレクトリを指定します。
--with-system-migemodir C/Migemoの辞書ファイルの位置を指定します。
使用するファイル
/usr/local/bin/mfiler4 プログラム本体
/usr/local/bin/mattr サブプログラム本体
/usr/local/etc/mfiler4.xyzsh mfiler4の設定ファイルのソース
/usr/local/share/doc/mfiler4/USAGE.ja.txt ドキュメント
/usr/local/share/doc/mfiler4/USAGE.txt
/usr/local/share/doc/mfiler4/README.ja
/usr/local/share/doc/mfiler4/README
/usr/local/share/doc/mfiler4/CHANGELOG
/usr/local/share/man/man1/mfiler4.1 manファイル
~/.mfiler4/ mfiler4の状態を保存するディレクトリ。パーミッションは700としてください。
~/.mfiler4/jump jによるジャンプメニューの設定を保存。詳しくはmfiler4.xyzshを読んでください。
~/.mfiler4/stat mfiler4が使っている環境変数の保存先。ソートの並び方やカラーや、ファイル描写の設定などが保存されます。
~/.mfiler4/mfiler4.xyzsh ユーザーが使用する設定ファイルはここに配置してください。/usr/local/etc/mfiler4.xyzshのあとに読まれます。
~/.mfiler4/trashbox/ mfiler4 のゴミ箱ディレクトリ。dで消されたファイルはここに置かれます。
~/.xyzsh/xyzsh.xyzsh --> xyzshの設定ファイル。/usr/local/exc/xyzsh.xyzshの後に読み込まれます。
~/.xyzsh/history --> コマンドラインのヒストリファイル
~/.xyzsh/macro --> コマンドラインマクロのファイル。コマンドラインでCTRL-Xを押すとマクロが実行されます。
~/.xyzsh/jump --> jumpコマンドがこのファイルを使います。
~/.xyzsh/menu --> menuコマンドがこのファイルを使います。
~/.xyzsh/program --> sys::を省略する外部プログラムのリスト
使い方
実行中に?を押せば簡単な使い方が見れます。
使用するエンコード
xyzshが扱うデータやスクリプトファイルはUTF8, EUCJP, SJISやLF,CR,LFCRのラインフィールドに対応しています。
mfiler4が使用端末や入力文字はUTF8決めうちです。UTF8端末で実行してください。ファイルシステムのエンコードはUTF8-MAC, UTF8に対応しています。
OSXでのコンパイルや実行について
nkfでC/MigemoでUtf8-MACの辞書を作る
sudo bash
cd /usr/local/share/migemo/cp932
for i in *; do nkf -w $i > ../utf-8/$i; done
./configure --with-migemo --with-system-migemodir=/usr/local/share/migemo
make && sudo make install
で作れるはずです。
cygwinでのコンパイルや実行について
僕のmigemoの使い方が悪いのかmigemoをロードすると落ちますが、ほかはある程度のマシンパワーがあれば実用的に動きます。mfiler4が依存するxyzshをインストールするにはoniguruma(5.9.4)を手動でコンパイルしないといけなかったです。
オプション
-x 画面のリフレッシュにclearを使わずにeraseを使います。urxvtなどの端末では画面のちらつきが抑えられるかもしれません。
リポジトリ
安定板 http://sourceforge.jp/projects/mfiler4
開発版 https://github.com/ab25cq/mfiler4
著作権
ab25cqにあります。ライセンスはMITライセンスとします。再配布するときは一報してもらえると助かります。