【2画面ファイラ】 mfiler4 その2at LINUX
【2画面ファイラ】 mfiler4 その2 - 暇つぶし2ch2:login:Penguin
13/01/07 23:06:51.12 zyEjI89a.net
現在のバージョン
xyzsh: 1.2.9
mfiler4 1.0.8

xyzshは1.2.7 mfiler4は1.0.6しかまだ試して無いので
これからアップデート試してみるかな。

3:login:Penguin
13/01/11 04:17:53.87 ryx/aMtP.net
スレ立て乙

4:作者
13/01/23 08:25:20.30 cbx1s4H4.net
スレを立てていただきありがとうございます。
サイトからリンクを貼らせて頂きます。

感想など、気楽に書き込んでください。開発の力になります。

Fedora 17,18ではパッケージになってます。
yum install mfiler4でインストールできます。
ただ、手元で試した所、ヘルプが見れないのとコマンドライン実行後に
少し動きがおかしいので、もう少し待った方がいいかもしれません。
Sourceforge.jpでは直ってますが、今はFedora向けに修正を加えているところです。

5:login:Penguin
13/01/24 07:59:29.54 Za9GUFJj.net
>>4
乙です

6:Fedoraメンテナ
13/01/27 02:02:21.31 zrSr5LGL.net
>>4
作者さん、お疲れさまです。
Fedoraでは、testing repositoryにxyzsh 1.3.2, mfiler4 1.1.1まで
来ています。stable repositoryにpushされるには、testingで少なくとも
1週間立つ必要があるので、新しいバージョンをすぐ試したい方は、
testing repositoryを有効にするといいです。

7:作者
13/01/28 11:16:40.38 9SAIik+/.net
>>6
パッケージにして頂いて、ありがとうございます。
とても嬉しかったです。
こまめにアップロードして頂いてるようで、ありがたいです。

今はxyzsh 1.3.3 mfiler4 1.1.2の開発をしています。
configure.inとMakefile.inを変えて、Fedoraでドキュメントが見られないバグを
修正したいと思ってます。
あとmigemoを動的にロードするようにしています。
外国人向けの修正です。
load -dynamic-library migemo.soしないとmigemoがONにならないように
なりますが、ファイラ画面からも、それができて、状態を保存できるようにしたいと思ってます。
ついでにmigemoをロードするとxyzshの画面で日本語ファイル名のmigemo補完ができるようにしてます。mfiler4があれば、あまり必要ないかもしれませんが、一応入れておきます。

8:作者
13/02/03 18:38:14.90 Ern5idA+.net
xyzsh-1.3.3, mfiler4-1.1.2
をリリースしてます。

migemoがxyzshのC拡張ライブラリになってます。
load -dynamic-library migemo.so
でロードできます。
migemoが必要ない方はロードしなければbashと同程度しかメモリを消費しません。
あとmigemoによるファイル名の補完も入れています。上のコマンドを実行すると
migemo補完を使うかどうか、聞かれるのでyesと答えてください。有効になります。

詳細はSourceforge.jpのニュース、またはab25cqのブログを見てください。

9:作者
13/02/07 15:59:58.26 7Gp5jhfq.net
xyzshだけ1.3.4になっています。mfiler4には影響がありません。

変更点は

1. 1.3.3でmigemoの補完でcdがおかしかったので修正。
2. completionコマンドに-sourceを追加。
3. 補完の大部分をxyzshで書き直しました。補完のカスタマイズが楽になってます。
4. 外部プログラムのオプションの補完を書きました。manpageを見ながらオプションを選択できます。

です。ファイル名の補完もxyzshで書かれるようになったので補完のカスタマイズ
が楽になってます。
例えばcdの補完では

completion cd (
| file_completion | each ( | =~ '/$' && | print )
print ../\n
)

でディレクトリだけが候補となるcdの補完が書けます。

10:作者
13/02/07 20:19:15.31 7Gp5jhfq.net
あと追記。

migemoのファイル名の補完はOSXではカタカナの補完ができません。
あと濁点がつく補完もできません。
2つ問題があって、一つはOSXでC/Migemoがバグっていること
もう一つはOSXのファイル名のエンコーディングがLinux風のUTF-8
ではないことです。
これの解決をいずれ行ないます。C/Migemoにパッチをあてるのと
OSXのファイル名で変換を行なうための内部コマンドを追加します。
nkfではutf8-macの変換が無理みたい(詳しく確認はしてないです)
なので、iconvで行ないたいと思います。
OSXでは日本語ファイル名を使うことが多いので、この問題はぜひ解決したいです。

11:作者
13/02/07 20:22:23.81 7Gp5jhfq.net
migemoに関してはLinuxの方では全然問題はありません。
C/Migemoはバグもありませんし、Linuxのファイル名は完全なUTF-8なので
問題ありません。
ただし、mfiler4のインクリメンタルサーチのMigemoはそんなにマシーンパワーを使いませんが
xyzshのファイル名のMigemoの補完はかなり良いマシーンじゃないと快適とは言えないかもしれません。特にVirtual BoxなどでLinuxを動かしているといまいちです。直接Linuxがインストールされたマシーンでは十分な速度で動きます。

cygwinではmfiler4のインクリメンタルサーチでのMigemoはそれなりに動きますが、xyzshのファイル名のMigemo補完は絶望的に遅いです。解決は諦めています。

12:作者
13/02/07 22:24:03.97 7Gp5jhfq.net
mfiler4からxyzshを起動した場合migemoの補完でバグが多数ありました。

1.3.6で修正しています。申し訳ないです。

13:login:Penguin
13/02/08 00:03:28.67 NQZegoIl.net
私の環境 (Ubuntu) では migemo.so が /usr/lib/xyzsh にインストール
されているのですが,LD_LIBRARY_PATH に /usr/lib/xyzsh を追加しないと
load -dynamic-library migemo.so
で migemo.so をロードできないみたいです.
これは仕様でしょうか? migemo.so を使うのは xyzsh だけだと思うので,
もしライブラリのパスを触らないで済ます方法があったら教えてください.

14:作者
13/02/08 10:40:03.28 nl6qRUp9.net
そうですね。ちょっと確認してみます。
回避する方法としてはxyzshの方でLD_LIBRARY_PATHを設定する(setenv)
方法があります。
問題を確認して、対策を施してみます。
仕様ではありません。

15:作者
13/02/08 12:00:53.36 nl6qRUp9.net
1.3.7をリリースしています。

1. 1、2文字の補完候補が表示されないバグを修正(1.3.6でエンバグ)

2. 補完候補がちゃんと全部表示されないバグを修正。

3. LD_LIBRARY_PATHが設定されていないとダイナミックライブラリが読み込めない環境に対応。

ごめんなさい。まだ補完関係のバグがありました。
egrep -v '^.$|^..$' --> egrep -v '^\.$|^\.\.$' と直しました。
.と..だけ候補から消したかったんだすが
.だけだと一文字の候補もマッチしてしまって消えてしまってました。
もう、補完関係のバグは大丈夫、、、だと思います。

>13
1.3.7で対応してみました。大丈夫でしょうか。

16:作者
13/02/08 12:09:33.62 nl6qRUp9.net
あとOSXでのC/Migemoですが、最新版だとカタカナの問題が直っているみたいです。

17:作者
13/02/08 13:45:24.18 nl6qRUp9.net
mfiler4-1.1.3, xyzsh-1.3.8リリースです。

OSXでのmigemo関連で不具合があったものが直ってます。濁点の補完やインクリメンタルサーチができるようになってます。
(sys::iconv -f UTF-8-MAC -t UTF-8をmigemo::matchの前に付けただけです)

Linuxでは特に変わっていません。
これで、大体migemoと補完関係のバグは潰したと思います。

何度もアップロードを繰り返して申し訳ないです。
1.3.3の時にもう少しチェックを厳しくするべきでした。

18:login:Penguin
13/02/10 00:31:20.75 +dO9Pl3X.net
>>15
素早い対応ありがとうございます.1.3.8 で試してみたのですが,
xyzsh の起動前に環境変数をセットしておかないと so ファイルを
ロードできないみたいです.

% xyzsh
-+- Welcome to xyzsh 1.3.8 -+-
run "help" command to see usage
/home/user1/gbp_ubuntu/xyzsh > print /usr/lib/xyzsh | export LD_LIBRARY_PATH
/home/user1/gbp_ubuntu/xyzsh > load -dynamic-library migemo.so
run time error
xyzsh 1: [load] migemo.so: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません
return code is 8192

% LD_LIBRARY_PATH=/usr/lib/xyzsh xyzsh
-+- Welcome to xyzsh 1.3.8 -+-
run "help" command to see usage
/home/user1/gbp_ubuntu/xyzsh > load -dynamic-library migemo.so
/home/user1/gbp_ubuntu/xyzsh >

19:作者
13/02/10 00:55:03.51 wToZld8e.net
>> 18
手元のubuntuでは大丈夫だったのですけれども、何か設定によるみたいですね。
でも、rubyとかの拡張ライブラリとかは大丈夫でしょうから
何か方法があると思います。
それとも、xyzsh側の問題かもしれません。
load -dynamic-libraryはフルパスでもロードができます。

load -dynamic-library /usr/lib/xyzsh/migemo.so

ではどうでしょうか?

20:作者
13/02/10 10:42:09.15 wToZld8e.net
補完関係であとひとつ抜けているのは
シングルクォートとダブルクォートの補完です。

ls 'main.c[TAB] --> ls 'main.c'

とかができなくなってます。(xyzshでファイル名の補完を書き始めたころから)
mfiler4の一画面時のp,P,u,Uあたりが問題になってます。

それを近々修正したいと思います。

21:作者
13/02/10 10:46:23.09 wToZld8e.net
あとOSXでmigemo.soをmfiler4からロードすると落ちる実行ファイルが
作られることがあります。(mfiler4を起動した時だけ落ちる)
その場合はmake && sudo make installをもう一回すると
何故か大丈夫になったりします。
たぶん、リンク関係のバグでgccに-Wl,オプションを付けて回避できると
思いますが、そのようなことが起こった場合は
もう一度make && sudo make installしてみてください。
まだ原因を探しているところです。
もしかしたら、Linuxでも再現するかもしれないので
そのような人がおられたら、教えてもらえたら嬉しいです。

22:6
13/02/10 20:21:47.21 UJeEP17N.net
>>21
お疲れ様です。Fedoraでまずtestingにpushします。

23:18
13/02/12 01:54:20.17 rdprHEpC.net
>>19
フルパスを指定したらロードできたので自分の
環境に原因があるかもしれむせん。
自分でも原因を調べてみます。

24:login:Penguin
13/02/23 12:23:46.03 DCO6xRFa.net
開発お疲れさまです。いつもありがたく使わせていただいています。
mfiler4への要望なんですが、ジャンプメニューをaから始めずに1-0の次にa-zという風にすることはできますか?
それと前述の要望と合わせて固定で 1-0 セパレータ a-z となっていれば十分ではありますが、可能であるなら -- とか sep などで直接ファイルを弄ってセパレータを記述できると助かります。

URLリンク(pastebin.com)
手元のmfiler4.xyzshを貼ってみます。おかしなことをしていたらどなたかツッコミをお願いしたいです。

25:作者
13/02/23 17:51:21.88 5AmcXUnj.net
>>24
了解です。ジャンプメニューをそのように改良しています。
みなさん、ファイルにキーも書き込んだほうがいいですか?
僕は結構~/.mfiler4/jumpが1行1ディレクトリというのは気に入っていまして。
でも、どちらにも対応させるやり方はあります。
1行に
ディレクトリ, キー, タイト
とCSVのような書き方も許せばいけます。
, が無くて一行一ディレクトリなら固定のキーを割り振るとかすればいいですね。
その辺りはxyzshのテキスト処理が十分に役に立つと思います。
次のバージョンでやってみますね。

あとmfiler4.xyzshを貼って頂いてありがとうございます。
突っ込む所は変数名はext_lenはJava式のExtLenとかの方が良いのでは?
というところです。僕も最近気づいたんですけれども、たぶん、それがxyzshでは
無難です。小文字はコマンド名と重なることがありますし。
あとtaget_pathというコマンドは大変気に入りました。mfiler4.xyzshにも取り込んでおきます。記述、ありがとう。大変嬉しいです。

26:login:Penguin
13/02/24 14:24:51.86 xhM/Iscv.net
>25
おお、対応していただけるんですか! ありがとうございます! 次バージョンが今から楽しみです。
ええと、メニュー項目を直接指定するキーは自前で設定できれば使わないキーの行を詰めることができるって利点がありますね。
手元ではとりあえずa-zまで表示させておいて使いやすい配置を試行錯誤していますが半分くらい空いていますし……。
それから、mfiler3のメニューファイルを直接弄ったときにちょっと混乱した経験から言うと、1行1項目のメニューファイルは編集しやすくていいと思います。

あー、extlenはlocal変数だし適当でいいかと思って付けた名前ですね。
直後の処理のひな形を/usr/local/etc配下のmfiler4.xyzshから持ってきたので、それに習ってlかnにでもしようかと一瞬悩んだような気がします。
変数の命名規則は言語によって異なるというか、作者さんが好むものが正解みたいなところがあるのでここは仰るとおりの形式を採りたいと思います。
ご指摘ありがとうございました。target_pathの件と合わせてこれからのカスタマイズの励みにします。

27:login:Penguin
13/02/24 18:08:53.79 O8jS8WCS.net
Arch Linuxで、xyzshの最新版がコンパイルエラーで止まってしまう…
当方の環境では1.3.2は全く問題なくコンパイル&インストールできるのに、1.3.3以降はダメなようです。

ln -s libxyzsh.so.1.7.0 libxyzsh.so.1
ln -s libxyzsh.so.1.7.0 libxyzsh.so
gcc -o xyzsh src/main.c -Isrc/ -I. -L. -I/usr/local/include -L/usr/local/lib -fPIC -DSYSCONFDIR="\"/usr/local/etc/xyzsh/\""
-DDOCDIR="\"/usr/local/share/doc/xyzsh/\"" -DSYSTEM_MIGEMODIR="\"/usr/local/share/migemo\""
-DEXTDIR="\"/usr/local/lib/xyzsh/\"" -I/usr/local/include -L/usr/local/lib -lxyzsh -lreadline -lcursesw -lncursesw -lm -lonig
./libxyzsh.so: `dlopen' に対する定義されていない参照です
./libxyzsh.so: `dlclose' に対する定義されていない参照です
./libxyzsh.so: `dlerror' に対する定義されていない参照です
./libxyzsh.so: `dlsym' に対する定義されていない参照です
collect2: エラー: ld はステータス 1 で終了しました
make: *** [xyzsh] エラー 1

原因のわかる方、教えて頂けませんでしょうか。

28:login:Penguin
13/03/08 23:46:11.06 5MA9LbA0.net
いつの間にかxyzsh 1.3.9 / mfiler4 1.1.4が
いつの間にか出てた

>>27
export LDFLAGS=-ldl
とやって configure からやり直すとうまく行く?

29:login:Penguin
13/03/09 13:01:46.18 jeBr+JmE.net
>>28
ビンゴ!その方法でうまく行きました。
ありがとうございます。助かりました。

30:作者
13/03/16 19:29:06.77 mubDYdZa.net
xyzsh-1.4.0, 1.4.1
mfiler4-1.1.5 1.1.6
をリリースしてます。

xyzsh-1.4.0ではlines, rows, 配列、ハッシュの範囲外を指定した場合の動きが変わってます。気をつけてください。
xyzsh-1.4.1ではhelpでプログラムのサンプルが載るようになってます。

mfiler4では言っていたjumpメニューのキーバインドを自動的に設定するかしないかの指定ができるようになってます。
あとArch Linuxで上記の修正を行なっています。
>>28さん
ありがとうございます。

31:login:Penguin
13/03/17 11:44:58.60 HhvPnbVn.net
>30
規制でお礼が遅くなってしまいましたがジャンプメニューのキーバインドの件ありがとうございました

32:18
13/03/21 23:11:08.85 QBylBIaf.net
>>19
自分の環境で load -dynamic-library がエラーになる原因がわかりました.
debuild でパッケージ化したときに dh_fixperms が migemo.so の実行権限を
外していたためでした.

とりあえず src/run.c にパッチを当てています.

--- a/src/run.c
+++ b/src/run.c
@@ -1747,11 +1747,11 @@
char path[PATH_MAX];
snprintf(path, PATH_MAX, "%s%s", EXTDIR, fname);

- if(access(path, X_OK) != 0) {
+ if(access(path, R_OK) != 0) {
char* home = getenv("HOME");
if(home) {
snprintf(path, PATH_MAX, "%s/.xyzsh/lib/%s", home, fname);
- if(access(path, X_OK) != 0) {
+ if(access(path, R_OK) != 0) {
xstrncpy(path, fname, PATH_MAX);
}
}

出来れば上流側で対応していただきたいです.

33:作者
13/03/22 13:03:47.93 Up+Dktld.net
>>32
了解です。次のバージョンでは対応します。

>>all
xyzshはあまり真剣に受け止めないでください。ワンライナーとかインタラクティブに文字列、ファイル操作させるとか、50-100行程度のスクリプトを書いたり、補完をカスタマイズしたりとかは楽しいかもです。
helpにサンプルも載せたので、インタラクティブに少し動作を試せば、すぐ使いこなせると思うので学習のコストは低いと思います。
あと長めのxyzshスクリプトを書くコツは
変数を使って普通のスクリプト的に書くのがコツです。
コンテキストパイプとグローバルパイプを多用して、ほとんど変数を使わずに書くことも不可能ではないんですけれども、頭が壊れるかもです。
でも、左から右に次々コマンドをつなげていけるのは楽しいと思います。

34:作者
13/04/01 20:19:55.13 9FdUTDFp.net
変更点はSourceforge.jpのニュースを見てください。

やっとオブジェクトの絶対パスが入っています。
> object obj ( ls | var a b c )
> ::obj::a
main.c

外からもオブジェクトに属性を追加できます。

> print ABC | var obj:d
> ::obj::d
ABC

あとはsplit, join, linesで感覚的に正しい動きにしています。
自分で使っていて、かなり混乱してしまっていたので、正しました。

> split -tareget "a,b,c" , | join ,
a,b,c
> split -target "a,b,c,d,e" , | lines 1 2 | join ,
b,c
> split -target ",,,a,b,c,,," , | join ,
,,,a,b,c,,,
> split -target ",,,a,b,c,,," , | strip | join ,
a,b,c

後は補完関係でバグが無くなりました。と言い切ってもいいかも。

35:作者
13/04/01 20:21:10.88 9FdUTDFp.net
上はmfiler4-1.1.7とxyzsh-1.4.2のリリースをしましたという報告です。

36:login:Penguin
13/04/02 13:43:10.62 TwSLS1+C.net
更新お疲れさまです
さっそくDLしてみましたが以下のようなエラーが出てmfiler4のmakeが通りません

gcc -Isrc/ -I/usr/local/include -L/usr/local/lib -I . -DSYSCONFDIR="\"/usr/local/etc/mfiler4/\"" -DDOCDIR="\"/usr/local/share/doc/mfiler4/\""(次行に続く)
(前行から) -I/usr/local/include -L/usr/local/lib -O3 -Werror -c -o src/commands.o src/commands.c
src/commands.c: 関数 ‘cmd_vd’ 内:
src/commands.c:2047:9: エラー: 関数 ‘fd_split’ へ渡す引数が少なすぎます
In file included from src/common.h:5:0,
            from src/commands.c:1:
/usr/local/include/xyzsh/xyzsh.h:522:6: 備考: ここで宣言されています
make: *** [src/commands.o] エラー 1

37:作者
13/04/02 14:34:55.43 1n1ovgFO.net
mfiler4-1.1.8をリリース。xyzsh-1.4.2が必要。

コンパイルエラーを修正。

38:作者
13/04/12 14:53:09.99 TNhuHTa3.net
>> 21
21の問題は環境変数LD_LIBRARY_PATHに/usr/local/binを設定しなかっただけでした。
OSXではmfiler4,xyzshともに特に問題なく動いてます。
最近、僕もOSXがメイン環境なんで、OSXの方にも、ぜひ使って頂きたいです。
ただ、OSXではreadlineがlibeditなのでxyzshにはGNU readlineが必要なのに注意してください。
GNU readlineのインストールにはMacportsやbrewを使うと楽にインストールできます。
xyzshとmfiler4自体はMacportsやbrewではパッケージになっていませんが
そろそろ登録した方がいいかもしれません。
ただ、前に不完全なportファイルを申請して、refuseされたことがあるんですよね(がくり)
あと手元でportファイルにしたら、何故かxyzshのインストールが失敗する問題が出たりしていて、二の足を踏んでいます。

39:login:Penguin
13/04/12 23:37:48.86 II+iPRFu.net
OSXに入れたxyzshでopenコマンドが効かないのですが、何か特別な設定が必要なのでしょうか?
(which openすると、ちゃんと在り処を出力してくれるのですが)

40:作者
13/04/13 15:15:36.39 XJL22JBV.net
openコマンドは~/.xyzsh/programに登録されていないので、sys::openとして入力する必要があります。
登録する方法は
> echo open >> ~/.xyzsh/program
> rehash
とすれば、sys::を省略することができます。
外部プログラムは全て外部プログラムオブジェクトとして::sys以下に登録されています。
実はxyzshのコマンドラインは
コマンド 引数1 引数2 … 引数X
ではなくて
オブジェクト 引数1 引数2 .. 引数X
だったりします。

41:login:Penguin
13/04/14 13:47:26.37 uvidCgXD.net
できたー!
できました。ありがとうございました。

42:作者
13/06/03 02:49:41.11 oa/wMq7S.net
xyzsh-1.4.3とmfiler4-1.2.0リリースです。

xyzshでは
readlineからeditlineに行編集プログラムを変更しました。
メニュー選択補完や右プロンプトが入っています。
$(…)の仕様が変わっています。bashを参考にしています。

mfiler4では
キー定義の変数の名前が変わっています。
xyzsh-1.4.3の$(…)の仕様変更に対応しています。

詳しくはSourceforge.jpのニュースを見てください。

43:login:Penguin
13/06/03 21:14:00.88 5g2uUWKE.net
更新お疲れ様です。さっそく使わせていただきます

44:作者
13/06/04 13:12:59.69 KxGObMTg.net
今後はmfiler3のヒストリのインクリメンタルサーチ
(3行ほど、インクリメンタルサーチでヒストリがプロンプトの下に表示される
下を押せば、それを選択できる)
mfiler2のファンクションキー
を入れたいと思ってます。
あとはシェルの画面で、CTRL-Wで単語後方削除(現在はAlt+Backspaceになっている)
あたりです。
xyzsh-1.4.3の$(…)の仕様変更への対応は
$$(…)を$(…)に直せば、大体は大丈夫なはずです。$$(…)は無くなりました。
詳しく言うと
"$(…)" は出力をそのまま貼付けます。(これまで通り)
$(…)は改行区切りで、それぞれ各行を一つの引数としてコマンドで使われます。
(全部、改行は取り除かれる)
仕様変更、迷惑をかけます。

45:login:Penguin
13/07/01 NY:AN:NY.AN KINwMFbC.net
xyzsh 1.4.3ですが:
configureを実行すると
./configure: line 4437: EL_MANTYPE: command not found
./configure: line 4726: EL_ENABLE_WIDEC: command not found
とでます(Fedora 19 i686)。
多分libedit絡みでconfigureの生成が不完全になっている
ものと思われます。そのせいで一部のオプションが有効に
できないようですがどうすればいいでしょうか。

46:login:Penguin
13/07/01 NY:AN:NY.AN KINwMFbC.net
と思ったらconfig.hの内容を見る限り
一応WIDECHARは有効になっているっぽいですが、
正しいか不明なのでよろしくお願いします。

47:作者
13/07/16 NY:AN:NY.AN uhRr43XS.net
>>45,46
了解です。
修正しておきます。

48:作者
13/07/16 NY:AN:NY.AN uhRr43XS.net
xyzsh バージョン 1.4.4をリリースしています。

EL_MANTYPEとEL_ENABLE_WIDECはコメントアウトしています。
AC_DEFINE(WIDECHAR,1)で強制的にワイド文字がONになっています。

変更点はSourceforge.jpのニュースを見てください。
あまり評判の良くない?外部コマンドのsys::というプリフィックスは
install_all_external_program_to_root_object
というコマンドを実行すれば、取り除くことができるようになってます。

あとは細かい修正です。
CTRL-Wで後方単語削除になったのが、個人的には心地よいです。
(vimのコマンドモードでもこのようになっているため)

49:作者
13/07/16 NY:AN:NY.AN uhRr43XS.net
mfiler4のほうは、カーソル移動で画面がちらつくことがあるバグを修正したら
アップロードします。
(現状ではちゃんと動く端末もあれば動かない端末もある。)
mfiler2のファンクションキーは入れられないと思います。
あとmfiler3のヒストリのインクリメンタルサーチはxyzshの方で
実装してみたのですが、端末のバッファを3行消費してしまうので
いまいちでした。消しています。

50:login:Penguin
13/07/18 NY:AN:NY.AN +WR5CmZf.net
xyzsh 1.4.4ですが、util.hがないと言われてビルドできません。
src/temulator.c:5:18: fatal error: util.h: No such file or directory
対応よろしくお願いします。

51:作者
13/07/20 NY:AN:NY.AN zt1lo/sx.net
>> 50
すみません。修正しています。

1.4.5リリースです。
ついでに、外部プログラム+オプション+変数が展開されない問題も直しています。
ex) ./configure --prefix=$HOME

util.hはOSXでのヘッダでした。申し訳ございません。

52:login:Penguin
13/07/28 NY:AN:NY.AN 50AZkURw.net
>>49
いまでも、mfiler2 を常用しております。作者様には感謝。
で、mfiler4 1.2.0 with xyzsh 1.4.3 を試用しているのですが、
(Puppy Linux 431JP2012, Lucid-528JP, Precise 550JP にて)
確かに、Roxterm や lx-terminal などの vte ライブラリに依存する端末では問題ないのですが、
Puppy 標準の urxvt では、画面のチラつきが気になりますので、解消するとうれしいです。

53:作者
13/07/28 NY:AN:NY.AN OwRzx/DU.net
>>52
あとAndroidやiPhoneのsshクライアントでも、ちらつくことが多いです。
一つ直し方が分かっているので、それで直してみます。

僕もmfiler2の方が良かったと思うことが、よくあるので
mfiler2の良さをmfiler4にも取り入れられたら良いなと思っています。
でも、あまり期待せずに待っていてください。

54:作者
13/08/03 NY:AN:NY.AN qKfdBZch.net
mfiler4-1.2.1, xyzsh-1.4.6リリースしています。

mfiler4で再びC/Migemoに依存関係がついています。
(xyzshのインクリメンタルサーチでは速度がでないため、Cで書き直した)
そのためmfiler4でC/Migemoのインクリメンタルサーチを有効にする場合は
configureに--with-migemo, --with-system-migemodirが必要なっています。
C/Migemoのインクリメンタルサーチはアルゴリズムを工夫して高速化しています。
(3文字以上じゃないとC/Migemoを使わない。1,2文字の英字のC/Migemoが吐く正規表現は大量でパフォーマンスがでなかった)
インクリメンタルサーチでdなどを打ったときに固まる現象はでなくなっています。

あとは上記のちらつく端末に対する対処も行なっています。
ついでに、カラーを有効にしても、背景が黒にならずに半透明になるようになっています。

xyzshの方ではzshのディレクトリスタックとHIST_IGNORE_SPACEが入っています。
あと数値計算も入っていますが、この機能はベータとします。
とりあえず入っただけです。

55:作者
13/08/03 NY:AN:NY.AN qKfdBZch.net
s/ディレクトリスタック/コマンドラインスタック/

56:作者
13/08/05 NY:AN:NY.AN fOy9hxxD.net
xyzsh-1.4.7をリリースしています。

migemo.soがgitのソースツリーに含まれていたので修正しています。

57:作者
13/08/06 NY:AN:NY.AN UIvK4x+t.net
mfiler4-1.2.2リリース。

2013 8月6日 version 1.2.2

1. 画面の更新方法を変えました。

require xyzsh version 1.4.7 later

すみません。1.2.1は画面の更新方法がダメダメです。
修正しています。
urxvtでも、この方法で大丈夫です。
やっぱり、cursesのeraseは駄目ですね、、、。
clearもちらつくし、結局自分でスペースで画面を埋める方法が一番良いようです。

58:作者
13/08/06 NY:AN:NY.AN UIvK4x+t.net
xyzsh-1.4.8リリース。

1. 動的ライブラリのSOのバージョンが間違ってました。修正。

すみません。
ひとまず、バージョンアップは落ち着いたと思います。

59:6
13/08/06 NY:AN:NY.AN OtSI6Fr0.net
お疲れさまです。ビルド出来ることは確認しました。Fedoraでもupします。

それと、長いことmfiler4で(Fedoraでのビルド時に)CFLAGSにわけの
分からないオプションを指定しているのに気づきました。いつの間にか
無視されるように変更されていたようですが、spec fileでも修正しておきます。

60:作者
13/08/06 NY:AN:NY.AN UIvK4x+t.net
mfiler4-1.2.3リリースです。

1. 画面の更新方法を変えました。

2. -xオプションを作りました。-xオプションを使うと画面のリフレッシュにeraseを使います。もしかしたら、画面のちらつきが抑えられるかもしれません。

すみません。やっぱり、スペースを埋める方法でも駄目でした。
Gnome terminal, Terminal.app用にclearでリフレッシュしています。
urxvtはmfiler4 -xで起動してみてください。
ちらつきは抑えられます。ただ画面が乱れることはあるかもしれません。

61:作者
13/08/07 NY:AN:NY.AN N/mh40Oa.net
>>59

見落としてました。
1.2.3もリリースしています。できたら、こちらのバージョンをアップロードしてもらいたいです。
1.2.2のリフレッシュ方法では画面が乱れることがあります。

cursesのclear,eraseの問題は端末エミュレーターの作者に解決してもらいたいです。
画面のクリア後にウェイトを入れるか入れないかだけの問題なんですけれども。
(Gnome terminalやTerminal.appのようにclear後はウェイトが入らない
方が、大概のcursesアプリでは都合がいいはずです。)
cursesのeraseは大抵の端末エミュレーターで巧く動きません。

62:作者
13/08/07 NY:AN:NY.AN N/mh40Oa.net
この辺りの問題を回避しようとすると自前でエスケープシーケンスを
処理するしかないんですけれども、なかなかハードルが高くて、手が出せません。
(mfiler2, mfiler3ではmcursesというのを作っていましたが
入力を扱うmgetchという関数がスパゲッティなコードだったので
削除してcursesを使っています。出力は割と楽に書けるんですけれども、、、)

63:6
13/08/07 NY:AN:NY.AN EUx8WLRP.net
>>61
xyzsh 1.4.8, mfiler4 1.2.3が今日か明日中に
(先ずはtestingの方に)出回ると思いますので、
よろしければご確認ください。

64:作者
13/08/07 NY:AN:NY.AN N/mh40Oa.net
>>63

確認しました。いつも、お世話になっています。
ありがとうございます。

65:作者
13/08/09 NY:AN:NY.AN m/MFS+GY.net
mfiler4-1.2.4リリースです。

1. コピーの上書き時の画面にバグがありました。修正しています。

またアップロードしています。申し訳ないです。

sourceforge.jpにはtgzが、githubにはソースがあります。

アドレスは
URLリンク(sourceforge.jp)
URLリンク(github.com)
です。

66:6(シベリア代行)
13/08/14 NY:AN:NY.AN Lc2MC17Y.net
>>65
お疲れ様です。

Fedoraでもmfiler4 1.2.4をtestingにpushしました。

67:作者
13/08/17 NY:AN:NY.AN a1J3XJUR.net
>>66
pushありがとうございます。
たぶん、もう安定していると思います。

68:login:Penguin
13/09/01 00:58:09.73 t3Wi+/AQ.net
mfiler3を現在使わせていただいております。
初めてmfiler4をインストールさせていただいたのですが、日本語が文字化けしてしまいます
Ubuntu12.04
xyzsh 1.4.8
mfiler4-1.2.4
readme通りにインストール出来たと思うのですが、どうすれば正常に戻せるのでそうか。
よろしくお願いします。

69:login:Penguin
13/09/01 03:16:36.49 g9RxSARU.net
>>68
>日本語が文字化け
とは、日本語のファイル名やディレクトリ名の表示が化けるということでしょうか?

70:login:Penguin
13/09/01 03:35:36.38 t3Wi+/AQ.net
>>69
レスありがとうございます。
その通りです。例えば「テスト」という文字列がファイル名、ディレクトリ名共に
M-c~C~FM-c~BM-9M-c~C~H
みたいな化けかたをします。

71:login:Penguin
13/09/01 11:28:20.50 WjW+tNOB.net
build-essentialとlibm17n-dev libncurses5-dev libncursersw5-dev libreadline-dev libmigemo-dev libonig-dev辺りが入っていれば大丈夫だと思う
何か足りないものはない?

72:login:Penguin
13/09/01 12:06:15.21 t3Wi+/AQ.net
>>71
ありがとうございます。
libmigemo-devは入れていなかったため、インストールして再ビルドしてみましたが、改善しませんでした。
あと、xyzshの方もeogなどの外部プログラムを呼びだせない不具合があったのですが(runtime errorとか出る)、こちらは--with-optimizeオプションを外すことで改善しました。
mfilerの方ももしかして……と思いましたが、オプションなしでも駄目でした。

xyzshの方はちゃんと日本語が表示できてるんですよね。なんでだろう。

73:作者
13/09/01 22:47:48.12 YLcAeBjM.net
あ、すみません。
たぶん、libncurseswが入っていないからだと思います。
wの方が必要です。
libncursesの方がリンクされると日本語は表示できません。

xyzshで外部プログラムが呼べないバグは心当たりがないです。
--with-optimizeがなかったら動くとか、なんか嫌な動きですね。
もしかしたらですが
xyzshはデフォルトでは外部プログラムを呼ぶにはsys::プリフィックスが必要なので
(sys::が省略できるように登録されている外部プログラム以外は)
--with-optimizeがあっても、sys::eogなら呼べるかもしれません。
いちいち、sys::を打つのが面倒なら、install_all_external_program_to_root_object
を実行すれば、全ての外部プログラムがsys::がなくても呼べるようになります。
(むしろ、これをデフォルトにしようかと悩んでいます、、、というか、そうした方が良いと今思いました。)

74:login:Penguin
13/09/02 02:13:57.26 8lqdfN2u.net
>>73
いつも利用させていただいてます。ありがとうございます。

> たぶん、libncurseswが入っていない

libncurses,libnucrses-dev,libncurseswが入っていて、libncursesw-devが入ってませんでした。READMEを読んで確認したつもりだったのに、見落してました。>>71でも書いていただいてたのに、すいません。
インストールして再ビルドで無事日本語が表示出来るようになりました。

xyzshの方は、--with-optimizeを付けた状態で、sys::を付加すること、またinstall_all_external_program_to_root_objectを実行することで外部プログラムが呼べるようになりました。

あと、試行錯誤中に気付いたことですが、xyzshのconfigureオプションで、--with-migemoを付けないと、mfiler4で--with-migemoを付ける付けないにかかわらず、mfiler4の起動が出来ませんでした。

お手間をお掛けしました。ありがとうございます。

75:作者
13/09/03 23:46:16.35 IaX/8T/f.net
>>74
報告ありがとうございました。
こちらもncurseswが無いと日本語ファイルが表示できないのは
たぶん落とし穴になるだろうなとは思ってました。
README.jaに詳しく書いておきます。

あとマニュアルに書き忘れているんですけれども
xyzsh上でmigemoの日本語ファイル名を補完したい場合は
load -dynamic-library migemo.so
を実行してください。

xyzshに--with-migemoがないとmfiler4が起動しない問題は次のバージョンで修正します。

76:52
13/09/16 22:39:22.41 epWVUqip.net
mfiler4-1.2.4 / xyzsh-1.4.8 :
Puppy Linux 用のインストールパッケージを用意しています。
パピー日本語フォーラムのこちらをご覧ください。
URLリンク(sakurapup.browserloadofcoolness.com)

> xyzshに--with-migemoがないとmfiler4が起動しない問題
元々、migemo を入れないことを前提にとくに何もせずに make していると、
とくに起動時の問題は発生しないようですけど。Puppy Linux 上では。

77:52
13/09/16 22:48:54.40 epWVUqip.net
追伸:xyzsh-1.4.8 でちょっと気になったのは、
 前のバージョンの、/usr/local/lib/libxyzsh.so.1, libxyzsh.so.1.9.x が
 残ってると、起動エラーが発生するので。
 以前のものはきちんと事前に削除/アンインストールせねばならぬことかな。

78:作者
13/09/19 22:35:47.89 V/Lst1GV.net
xyzsh-1.4.9, mfiler4-1.2.5リリースです。

mfiler4でmigemoのインクリメンタルサーチがおかしいバグを修正しています。

しばらく、他のプロジェクトを行なっているので、xyzsh,mfiler4は
バグ修正くらいになります。

バグの報告は大変助かります。使っていて気づいたことがあれば
ここか、気軽にab25cq@gmail.comまでメールください。

79:作者
13/09/19 22:51:02.46 V/Lst1GV.net
xyzsh-1.5.0をリリースです。

全ての外部プログラムをルートオブジェクトに登録することをデフォルトとしました。

80:login:Penguin
13/09/20 13:45:08.08 SOjUcTvI.net
更新お疲れ様です。>>68以降でお世話になりました。
最新版インストールしました。外部プログラムの呼び出しが正常に行なわれるようになりました。
様子のおかしかったmigemoによるインクリメントサーチも、期待通りの動きになっていましたが、たまにSegmentation faultで落ちることがあります。
当方の環境では、以下の例で100%再現します。
ディレクトリ下に以下のファイルがある場合

猫の毛玉
猫の肉球

/neko で両方のファイルにヒット(カーソル上下でどちらも選択出来る)
/nekono でその時フォーカスのあたっていたファイルのみがヒット(カーソル上下出来ない)
BSキーで /neko に戻しカーソル上下でSegmentation faultとなります。

81:login:Penguin
13/09/20 15:37:01.33 K6pMaPPu.net
開発お疲れ様です。また気力が湧いてきたので─ちょっとした不便に我慢ができなくなってきたともいう─~/.mfiler4/mfiler4.xyzshを現在ごりごり書いています。
近いうちにまたお見せできそうなのでそのときについでにと思っていたのですが、segfaultの話題が出ているので便乗していくつか実例を出します。
なおテストした環境はXubuntu13.04 xfce4-terminalです。

$ cat ~/.xyzsh/xyzsh.xyzsh
|alias emacs ( sys::vim ) ## ちょっとした悪ふざけのつもりでした
$ xyzsh
|Segmentation fault (コアダンプ)

$ cat ~/.xyzsh/xyzsh.xyzsh
|alias less ( sys::lv ) ## lessの代わりにlvを使いたいなと思って
$ mfiler4 ## 適当なファイルにカーソルを合わせてcmdlineに移行してless $(mfiler4::cursor)する
|It is not enough memory

$ cat ~/.xyzsh/xyzsh.xyzsh
|load -dynamic-library migemo.so
$ xyzsh
|welcome to migemo.so dynamic library. You can read help type with "migemo::help 'command name'"
|Do you want to use migemo completion which is Japanese ROMAJI completion?(y/n)y
|Segmentation fault (コアダンプ)

それとtypoと思われるものを見つけました。
1つめ。mfiler4のmchoiseはmchoiceがスペル的に正しいような?
2つめ。やはりmfiler4のREADME.jaの--with-system-migemo-dirは--with-systemi-migemodirではないでしょうか?

最後にxyzshの変数の扱い方に関しての質問なのですが、以下のように先頭のaryが無くても動作します。
デフォルトのmfiler4でも省略しているようですがこの書き方はアリなんでしょうか?
ARGV| each (| chomp| less $(| print))

82:作者
13/09/21 00:42:55.03 UtkkLLw0.net
>>80
>>81
明日修正してみます。
報告ありがとうございます。
こういう報告が一番助かります。

ARGV | each ( less $(| chomp))
ですが
実は変数はコマンドとしても動きます、、、。
$ ls | ary ABC
$ ABC
lsの出力

selfを実行するとカレントオブジェクトに登録されているコマンドや変数の一覧が見れます。
$ self | grep ABC
ABC: array
ABCはカレントオブジェクトに登録された配列です。
外部プログラムのlsもカレントオブジェクトに登録されているので、lsと打てば実行できます。
前はsysというオブジェクトに外部プログラムが登録されていたので
sys::lsなどとしなければならなかったということです。

83:作者
13/09/21 00:50:36.34 UtkkLLw0.net
関数やエイリアスやその他も全てオブジェクトに登録されます。
xyzshのオブジェクトは単なる名前空間のようなものです。
ファイルを入れるディレクトリのような役目です。

$ def fun ( puts "Hello World" )
$ self | grep fun
fun: function

$ object OBJ
$ self | grep OBJ
OBJ: object

$ OBJ::run ( ls | ary XXX )
$ OBJ | grep XXX
XXX: array
$ OBJ::XXX
lsの出力

と紹介するより先にバグ修正しないといけない、、、。明日修正します。

84:login:Penguin
13/09/21 16:19:48.63 tojDndID.net
書き方が悪いと思うのですが期待通りに動きません。どう書き換えればいいのでしょうか?

$ typeof mfiler4::file_ext && typeof mfiler4::file_ext_by_name && def mfiler4::file_ext_by_name
native function
function

file_ext $-(OPTIONS| uniq) $(file_index -d sdir $ARGV) ## 期待通り動作する
file_ext $-(OPTIONS| uniq) $(file_index $-(OPTIONS|uniq) $ARGV) ## 期待に反してfile_indexが-1で返ってくる
$ ls $(mfiler4::path -d sdir)
mfiler4.xyzsh.swp mfiler4.zip
$ mfiler4::file_ext -d sdir 2
zip
$ mfiler4::file_ext_by_name -d sdir mfiler4.zip
zip
run time error
/home/****/.mfiler4/mfiler4.xyzsh 51: invalid command using
xyzsh 1: run time error
return code is 8192

85:login:Penguin
13/09/22 10:51:29.09 sMNgElCS.net
>>79
>全ての外部プログラムをルートオブジェクトに登録することをデフォルトとしました。
うちの貧弱なマシンでは、xyzsh起動に、5秒程度かかってしまうので、
コマンドラインオプションで動作を切り替えて
従来方式で、~/.xyzsh/program に登録されたプログラム名を
読んで起動するようにできませんでしょうか?

86:85
13/09/22 11:28:53.30 sMNgElCS.net
あ、 xyzsh-1.5.0 です。

87:作者
13/09/22 14:31:06.76 aXsM+0Wd.net
>>80
修正しました。nekoNoとタイプするとマッチします。

>>81
こちらでは再現しません。リンク関係で実行ファイルがおかしくなっているかもしれません。
タイポは修正しました。

>>84
mfiler4はxyzshを搭載していますが、カスタマイズはお勧めしません。
正直パイプで全てを行い、動作速度も致命的に遅いxyzshはアプリケーションのカスタマイズには向かないと思います。少し書いてみたりもしましたが、パイプでどんどん文字列を加工していくスタイルで長めのスクリプトを書いていると頭が痛くなってきます。
カスタマイズを期待されている方はすみません。xyzshを作っている時はこうなるとは思ってもいませんでした。
xyzshの使い道は、ちょっとした30行から50行程度のスクリプトでのファイル処理、テキスト処理やワンライナーです。インタラクティブシェルとしてはperlやruby的な文字列処理も行なえるので便利に使えるかもしれません。

>> 85
前のように外部プログラムは登録制になりました。マシン速度が速い方はinstall_all_externa_program_to_root_objectを実行して全ての外部プログラムをルートオブジェクトに登録してください。

88:作者
13/09/22 14:32:24.29 aXsM+0Wd.net
xyzsh-1.5.1, mfiler4-1.2.6リリースです。

89:login:Penguin
13/09/22 18:01:28.32 sMNgElCS.net
作者様、起動速度改善しました。xyzsh-1.5.1 + mfiler4-1.2.6
有り難うございます。
xyzsh-1.5.0 5秒
xyzsh-1.5.1 1秒未満(0.86秒)
ただ、OS の別ヴァージョンだと 1.5.0 でもそんなに問題なかったので、
マシンの速度というより、ライブラリ群の相性問題だったのかもしれません。

90:login:Penguin
13/09/22 21:47:28.28 Qewucx8Y.net
URLリンク(pastebin.com)
最初に>81で言ったmfiler4.xyzshを投げておきます。mfiler4ユーザ各位の参考になればいいなと思います。

>87
更新お疲れ様です。

|こちらでは再現しません。リンク関係で実行ファイルがおかしくなっているかもしれません。
ということは手元の環境だけということですね。改めて見直してみます。

|mfiler4はxyzshを搭載していますが、カスタマイズはお勧めしません。
ちょっとした不便を快適にをテーマにやってみているだけですので、あまりお気になさらないようにお願いします。
正直なところ、ある程度好きなようにカスタマイズできる2画面ファイラは存在するだけでありがたいですし、カスタマイズに関してもそれほど不便は感じていません。
……以前にも同じようなことを言われた記憶がありますね。

実のところ>84は書き方が悪いのかそれともxyzshの不具合なのかが分からなかったので、作者さんにお尋ねしたかっただけです。
やっていることは同じはずなのに結果が異なる(file_indexの返値が異なる)のはなぜだろう?と。
とりあえず当面は別の方法で逃げましたので、もしお時間があればお答えいただけると嬉しいかなといったところです。

91:login:Penguin
13/09/23 20:30:02.92 TZPgRaQ0.net
作者さまへ、リクエスト もしくは、 mfiler4.xyzsh で設定できるなら
ご教示願いたいのですが、

現在、ファイラ画面に端末が表示するカーソルの位置が
端末画面の下から二行目の先頭(左端)に表示されます。
これを、端末画面の最下行の右端にすることはできないでしょうか? 
結構目障りなので。 キーボードからの入力位置とは関係ないようですし。

92:login:Penguin
13/09/28 06:55:40.57 Z4Y7D/mx.net
mfiler4-1.2.6 & xyzsh-1.5.1 にて
ファイルをコピーすると、
コピー先にコピーされたファイルのタイムスタンプが、
コピーした時点になってしまうのですが、
元ファイルのタイムスタンプを保持するように出来ないでしょうか?

93:作者
13/10/01 01:29:49.13 7ma78pHs.net
>>90
すみません。他の方にも報告を受けました。Fedoraでも再現するそうです。
せっかく報告を貰ったのに確認を怠って申し訳ありません。
明日確認しだい修正します。

>>91
それは実は色々と理由がありまして、そうなってます。
何度か、色々といい位置を探して、うろうろとカーソル君は動いているんですが
今の位置が居心地が良いようです。

>>92
何度か、その要望は受けているので、デフォルトはそうしてみます。
その方がほんとのコピーらしいかもしれませんね。
fdcloneとかどうなってんだろ、、、。

94:作者
13/10/06 18:53:13.11 dDtYx4eO.net
>>81,90

修正してバージョンをxyzsh-1.5.3としてリリースしました。
alias関連のバグは取れた、、、と思います。

migemoの方は僕にも良く分かりません。
OSX, Fedora辺りではmigemoも安定しているように思います。
ちょっと再現しないので直しようがありません。
動的ライブラリ関連の設定辺りが怪しいかもしれません。

>>92

ああ、こっちを忘れてましたね。明日当たり修正してみます。

95:作者
13/10/07 17:51:33.37 GRYybWpr.net
>>81,90
migemoの件も分かりました。~/.xyzsh/xyzsh.xyzshでロードした場合ですね。
それは落ちます。直しますね。すみません。

96:作者
13/10/07 18:14:00.22 GRYybWpr.net
version 1.5.4リリースです。

migemoがランタムスクリプトで読み込めないバグも修正しました。

97:login:Penguin
13/10/07 20:10:25.03 IrsnLsZN.net
>95
対応お疲れ様です。
ああ、そうか。どこで設定したのかをお伝えすれば良かったのですね。また何か報告することがあれば気をつけたいと思います。

98:作者
13/10/08 20:41:14.12 x9K3tnJd.net
1.5.5 リリースです。

1. $XYZSH_HISTSIZE, $XYZSH_HISTFILEが巧く動いていない問題を修正。1.5.4でエンバグ

あとは当分、大丈夫だと思います。すみません。矢継ぎ早のリリースで。

99:作者
13/10/08 22:19:39.75 x9K3tnJd.net
mfiler4-1.2.7 リリースです。

マニュアルにmfiler3という記述がいくつか、見つかったので修正しています(w;

大体やりつくした感があります。
今後、バグ修正以外は、特にアタッチしないと思います。
(機能拡張はない)
やり残しているのはxyzshのコマンド補完のレパートリーが寂しい所ですかね、、、。

あとホームページは
URLリンク(www54.atwiki.jp)
に移動しています。
そこにmfiler4とxyzshの使い方という記事を書いています。
参考にどうぞ。
vimの記事もありますよ。

100:作者
13/10/09 14:06:38.91 hasbi/jI.net
mfiler4-1.2.8 リリースです。

タイポの修正。2 pain --> 2 pane

101:login:Penguin
13/10/09 20:22:25.85 CDVvwTvq.net
バグ?
Puppy Linux 431JP2012 上で、インストール用のパッケージを作って、試してみました。
xyzsh-1.5.5 との組み合わせで:
mfiler-1.2.8 2画面の状態でファイルが多量にあるディレクトリを
閲覧しているときに、PageDown や下矢印キーで、下の方へいくと、
カーソルが見えなくなります。
mfiler-1.2.7 では、問題なかったのですが。

102:login:Penguin
13/10/09 20:24:45.44 CDVvwTvq.net
追伸:
 カーソルが見えなくなるというより、画面表示がスクロールしないというか、
 次ページへ切り替わらないというか、そんな現象です。

103:101 & 102
13/10/10 21:47:50.70 xz9qNm4y.net
101 と 102 は、忘れてください。
~/.xyzsh と ~/.mfiler4 を一旦削除して、起動し直したら、直りました。

詳しくは追求していませんが、
旧バージョンの残骸が残ってるとよろしくないのかもしれません。

104:作者
13/10/11 17:02:27.29 hP6ZIVLV.net
>>103
すみません。それで解決されたなら、いいんですけれども。
新しいmfiler4でstatの仕様が変わっているので、そのせいかもしれません。
ご迷惑かけます。

105:login:Penguin
13/10/12 00:04:18.80 +5lDobBX.net
"-x" オプションを付加して、"mfiler4 -x" で起動すると、
インクリメンタルサーチ(ジャンプ)のために、スラッシュ(/)キーを押すと、
端末画面のしたから三行目の行頭に "/" が表示されてしまう現象が起きています。
直ぐでなくてもよいので、改善を希望いたします。

106:login:Penguin
13/10/12 00:09:37.55 +5lDobBX.net
あと、mfiler2 みたいに、エンターキーを押したときに、
ファイルの拡張子ごとに、コマンドラインへ
ファイルに応じたコマンドが挿入されるとうれしいのですが。
*.mpg なら、audiciousなどの音楽プレーヤ、
*.jpg なら、viewnior とかの画像ヴューワ、などなど。
mfiler4.xyzsh の keycommand $keycode::enter あたりを
いじれば良さそうなのですが、例をご教示願います。

107:作者
13/10/12 21:42:37.25 6lhr4nu/.net
>>105
少し待ってくださいね。確認して修正します。

>>106
こんな感じですかね。例はtxtならvim, cならgccです。それ以外なら、そのまま。
inheritできれば、もう少し綺麗にかけそうですが、その場合はmfiler4.xyzshの方で
関数を用意しないといけませんね。

keycommand $keycode::enter (
file_ext $(cursor_num) | chomp | if(|= txt) (
cmdline "vim $(cursor|chomp)" -1
) elif (|= c) (
cmdline "gcc $(cursor|chomp)" -1
) else (
marking | if(| = 1\n) (
cmdline ' $(mfiler4::markfiles)' 0
) else (
cursor | chomp | if( | -d) (
mcd $(cursor)
) else (
cmdline " '$(cursor|chomp)'" 0
)
)
)
)

108:作者
13/10/12 21:45:16.97 6lhr4nu/.net
見やすくします。

keycommand $keycode::enter (
  file_ext $(cursor_num) | chomp | if(|= txt) (
    cmdline "vim $(cursor|chomp)" -1
  ) elif (|= c) (
    cmdline "gcc $(cursor|chomp)" -1
  ) else (
    marking | if(| = 1\n) (
      cmdline ' $(mfiler4::markfiles)' 0
    ) else (
     cursor | chomp | if( | -d) (
       mcd $(cursor)
     ) else (
       cmdline " '$(cursor|chomp)'" 0
     )
    )
  )
)

109:106
13/10/13 00:19:12.17 cnc1HNd4.net
>>108
作者様、ありがとうございます。
/usr/local/etc/mfiler4/mfiler4.xyzsh
を、/root/.mfiler4/mfiler4.xyzsh にコピーして、書き換えてみましたが、
ENTER-Key を押すと、
/root/.mfiler4/mfiler4.xyzsh 378: command not found
なるメッセージが表示されます。
  file_ext $(cursor_num) | chomp | if(|= txt) (
の行の、 file_ext もしくは、 cursor_num がないのでしょうか?

110:作者
13/11/02 10:07:41.03 V8BX7/nx.net
私事で少し多忙です。しばらくプログラミングから遠ざかると思います。

また再開したら、保守をしますね。
mfiler4とxyzshについてはやり残しは全くないとは言えませんが、ほとんどないです。
ほぼ完成したと思っています。
xyzshの方はもう少しzshから便利な機能を輸入したいですけれども。
あとコマンドライン補完を充実させたい、、、。

では、しばらく返信できないと思います。
申し訳ないです。

111:作者
13/11/19 11:27:31.80 Q9rRWD6Y.net
だいぶ私事が落ち着いてきました。
またコマンドライン補完を充実させたりしていきます。

112:作者
13/11/25 14:52:59.00 obpUP+js.net
mfiler4-1.2.9リリース

1. cygwinでのコンパイルと実行に対応。ただmigemoは動きません。

2. Hのディレクトリのヒストリでスペースを含むディレクトリに移動できない問題を修正。

3. configureに--with-optimizeを付けると-WerrorをCFLAGSから削除、ワーニングが出ていてもコンパイルは通るようになりました。

xyzsh-1.5.6が必要。

xyzsh-1.5.6 リリース

1. cygwinでのコンパイルと実行。ただ、migemoはロードすると落ちます。(僕のmigemoの使い方が悪いのでしょう)

2. 漢字のエンコーディングにバグがありました。mfiler4が落ちることがありました。

3. mfiler4へのインターフェースが少し変わっています。

OSX-10.9でのコンパイルエラーに対応しました。

113:login:Penguin
13/11/26 22:09:23.98 D88ImHLm.net
xyzshの履歴が上書きではなく追記で保存されるようになっています
この現象に気がついたバージョンはxyzsh 1.5.6です

114:作者
13/11/26 22:24:54.64 MHLkIUWL.net
了解です。
次のバージョンで修正します。

あとmfiler4で大量のファイルをコピーした場合
1つでもコピーに失敗するとコピー自体が中断してしまいますが
それを失敗したファイルはログに残すようにしてファイルのコピー自体
は続行するようにします。
自分でも大概不便だと思っていたので。

あとオプション-xを付けた場合、端末のエミュレーションの仕方によっては
描写が乱れることがありますが、それを修正します。
(iPhoneのPromptでもmfiler4を動かしたいため)
描写の問題はGnome TerminalやMacのTerminal.app、WindowsのPuttyではありません。

115:作者
13/12/14 21:35:25.83 c232Rqmy.net
mfiler4-1.3.0, xyzsh-1.5.7リリースです。

mfiler4は特に変わっていません。

xyzshはヒストリが2度保存されるバグと補完のバグを修正しています。

116:作者
13/12/24 11:27:24.79 E744Cju4.net
xyzsh-1.5.8リリース

1. いくつかの補完のバグを修正。1.5.7から補完にバグがありました。
2. tcsetpgrpの引数が/dev/ttyのファイルディスクリプタになりました。

mfiler4の方はgithubの方ではコピー操作を全面的に書き換えたバージョンをアップロードしています。
ただ、ファイル操作はバグがあると迷惑がかかるので、しばらく手元でデバッグしておきます。
安定したら、次のバージョンとしてSourceForge.jpの方にアップロードしますね。

117:作者
13/12/29 22:40:10.70 l2ZRveTF.net
mfiler4-1.3.1リリース

1. 仮想ディレクトリ使用時にファイルが0になることがあるとデグメンテーションフォルトしていましたが、しないように修正。
2. ファイルのコピー処理や移動処理をリファクタリング。エラーがあってもコピーを続行するようになりました。エラーが出たらログに記録して、ログファイルを表示します。
3. メニューアイテムに-externalをつけると、実行後ディスクを読み込むようになりました。
4. ファイルのコピー処理のバグフィックス。
5. ファイルのバックアップのバグフィックス。

118:作者
13/12/31 13:15:04.23 WpfE41uf.net
ああ、4と5は2後のバグフィックスです。
1.3.0以前ではファイル操作にバグは無かったはずです。
2のリファクタリングはよくデバッグしていますが
もし、バグが見つかったら、みなさんに迷惑をかけるので、ここに書き込みをお願いします。

119:login:Penguin
14/09/27 10:55:32.33 MLqmHRsn.net
カーソル移動でちらつくねこれ
urxvt+tmux環境

120:login:Penguin
14/09/30 22:52:08.36 BuuBiUpR.net
去年あんだけ熱心だったのに今年はもう書き込みないのね作者

121:login:Penguin
14/09/30 22:59:34.42 BuuBiUpR.net
ranger最強

122:login:Penguin
14/10/01 06:39:00.43 zuK/k/6q.net
うちもranger最強になっちゃたずっと前から

123:login:Penguin
15/03/22 16:06:58.49 a9idqRGK.net
今までdired一択だったけど、rangerもいいですな。
ファイルを選択するだけでプレビューしてくれるのがすごくいい。

124:login:Penguin
16/04/14 21:35:06.85 NOMBbJsv.net
ranger少し重いけどvimmerとしてはかなり使いやすくて良い
ただ画像プレビュー出来る端末エミュレータとフォントが限られてるのよね
やっぱmfiler4でいい

125:login:Penguin
16/06/15 23:36:52.26 WLW9spkH.net
cygwinでxyzshをmakeすると
/usr/lib/../lib/libonig.dll.a(d000215.o):(.text+0x0): `regfree' が重複して定義されています
/usr/lib/../lib/libc.a(t-d001113.o):fake:(.text+0x0): ここで最初に定義されています
/usr/lib/../lib/libonig.dll.a(d000214.o):(.text+0x0): `regexec' が重複して定義されています
/usr/lib/../lib/libc.a(t-d001112.o):fake:(.text+0x0): ここで最初に定義されています
/usr/lib/../lib/libonig.dll.a(d000212.o):(.text+0x0): `regcomp' が重複して定義されています
/usr/lib/../lib/libc.a(t-d001110.o):fake:(.text+0x0): ここで最初に定義されています
collect2: エラー: ld はステータス 1 で終了しました
make: *** [Makefile:68: libxyzsh.so.2.0.0] エラー 1
とエラーをになります。
対策がわかる方がいれば教えてもらえるとありがたいです。

126:login:Penguin
16/06/30 03:57:26.21 clgRM4OF.net
setup からonoguruma入れるんじゃなくてソースからいれる

127:login:Penguin
17/04/14 19:20:52.95 Mk7H5skW.net
たぶんいないだろうけどUbuntu17.04からonigurumaがlibonig4になったので、Ubuntu派生で使い続けたいならアップデート/再インストール前にlibonig.so.2.0.1をバックアップしておいて、適切な場所にlibonig.so.2として配置しないと起動しなくなりました

128:login:Penguin
17/06/25 21:13:05.74 Uw68fN81.net
もう他のユーザはいなくなってしまったのだろうか……
設定をつめるとわりと便利なんだけど更新がないと新しいの使い始めちゃうよね、やっぱり
たぶん作者さんももう別のファイラ使っているんだろうな
>127
自己レス
makeするときはlibonig.so.2.0.1じゃないとダメかもしれない
というのも、XDG Base Directoryというものを知ったのでxyzshとmfiler4も対応させてみたんだけど、makeするときにlibonig.so.2が存在してもエラーになった

129:login:Penguin
17/12/29 16:03:13.24 S/CsVkMC.net
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
K8E5JQH734

130:作者
18/02/24 01:12:02.44 8S/bbkNU.net
作者です。すみません。もうメンテナンスしてません。
今はClover2というインタプリタ、REPLとしても使える、コンピュータ言語作ってます。
ファイルの処理は大抵cp mv rmですね。
サーバー上ではファイラ → シェルときて今はClover2のREPLで作業することが多いのです。
使っている方は、すみません。
ソースはURLリンク(github.com)上にあるので意欲がある人はフォークなり改良するなりして使ってください。

131:login:Penguin
18/03/02 01:09:20.36 4dwwL1yn.net
作者様(゚∀゚)キタコレ!!
今までメンテナンスお疲れさまでした。

132:login:Penguin
18/03/06 03:00:27.21 PDuUHPDn.net
ありがとうございます。mfiler4は作っていて楽しかったです。
でも、結局fdを超えることはできなかったかなと思います
ちょっと作り込みすぎましたね。
mfiler2の方がRubyも組み込んでましたし、よくできていた気がします。
Clover2の方もよろしくお願いします。静的型付けのRubyって感じです。
LLVMでネイティブコンパイルも行います。
REPLも強力でJavaのIDEみたいに補完が強力です。
そちらもよろしくお願いします。パッケージにしてくれる方募集中です
(Fedoraは今頼んでいるところです)

133:login:Penguin
18/03/06 08:43:05.39 SyfjtOmI.net
> Fedoraは今頼んでいるところです
あれ?(ここで書くのも何かと思いますが)Fedoraではimportは既に済んでいます。
例えばこんなの
URLリンク(bodhi.fedoraproject.org)
ただ、stable branch (今だとFedora 26/27)では、短くても(通常)
一週間経たないと更新出来ません。現在は3.6.9がin testingです。

134:login:Penguin
18/03/06 18:20:45.42 kEYp/76z.net
そうなんですか。知らなかったです。
Clover2のスレを作りました。良かったら、そちらでどうぞ。
【静的型付け】Clover2 【LLVM,補完付きREPL】
スレリンク(linux板)

135:login:Penguin
18/03/07 10:24:30.49 S1xssOPQ.net
板違いとの指摘を受けました。プログラム板に作りました。
【静的型付けRuby】Clover2 【LLVM,補完付きREPL】
スレリンク(tech板)

136:login:Penguin
18/05/22 09:31:30.48 Czl6p0FW.net
僕の知り合いの知り合いができた副業情報ドットコム
関心がある人だけ見てください。
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
BUGPU


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch