[リストへもどる]
一括表示

タイトルaux:パスの挙動について
記事No3666
投稿日: 2021/06/10(Thu) 18:14
投稿者tm
aux:パスの挙動について不明な点があるのでご教示ください。

1. aux:パス展開時に、XC_dset:aux:が設定してある状態でも
XC_dset:listfileのソート設定が優先されてしまう。
更新すればaux:の設定が反映されます。

2. listfileヘッダにoption=directoryが設定されているとmakedirが動作しない。
ls2lf.exeのオプションに--lfdirが設定されていると再現します。
ppxaux06のS_auxrcloneの項目、指定パス以下の全階層を一括で取得する例
がこの状態です。

追記
PPxのバージョンはppx64179
使用PCはwin10 64bitです


タイトルRe: aux:パスの挙動について
記事No3669
投稿日: 2021/06/12(Sat) 22:35
投稿者TORO
1,2 のどちらも再現しました。

1.については次版で修正します。
2.については修正予定ですが時間が掛かるかもしれません。


タイトルRe^2: aux:パスの挙動について
記事No3672
投稿日: 2021/06/13(Sun) 15:51
投稿者tm
確認ありがとうございます。

またわからない点があります。
S_auxxxxで、%M_auxxxx,!cmdのようなことはできますか?
S_auxxxx:cmdをPPcから直接実行したいです。
S_で出来ないのであれば、M_を使おうと思っていますが、
S_からM_に変更すると不都合なことはありますか?


タイトルRe^3: aux:パスの挙動について
記事No3673
投稿日: 2021/06/14(Mon) 23:24
投稿者TORO
%*getcust と %*extract か *execute を組み合わせると
実行できます。こちらですと M_ / S_ のどちらでも
使えます。

M_ と S_ の違いは、%M で指定できるかどうか位で
メニュー以外で使うときは違いはありません。
※もしある場合は基本的にバグです。


タイトルRe^4: aux:パスの挙動について
記事No3674
投稿日: 2021/06/15(Tue) 20:25
投稿者tm
> M_ と S_ の違いは、%M で指定できるかどうか位で
> メニュー以外で使うときは違いはありません。

改行は無視する仕様なのかも知れませんが、S_はマクロ内の改行を
設定できず、M_は設定できるけど実行されません。

S_auxxxx(またはM_auxxxx) = {
test = %I"aaa" %:
%I"bbb"
list = %*test %: listfile.txt
}

上のような状態で、aux:M_auxxxx\c:\binなどを開くと%*testの一行目"aaa"は
表示されますが、二行目"bbb"は表示されません。

また、aux:を開いた状態で*execute ,%*getcust(S_auxxxx:list)を実行すると
"%*testが見つかりません"というエラーがでて実行出来ません。
%FDや%FCでパスは取得できますが、%*pathの内容が取得出来ないので
%*regexpなどで加工する必要があります。

この辺りが仕様かバグか判断着きませんでした。

追記補足
> %*pathの内容が取得できない
(*executeで外部から実行した場合)%*pathの内容が取得できない


タイトルRe^5: aux:パスの挙動について
記事No3675
投稿日: 2021/06/16(Wed) 21:53
投稿者TORO
S_ で改行を含む記載ができないのはミスですので
次版で対応します。

M_ で実行できないのは %* の使い方の問題ですね。
他の質問もまとめて説明します。

(1) ?_auxxxx で%*path, %*src や %*test 等の記載が使えるのは、
aux: パスの内部処理から呼び出した時だけで、通常の
実行方法(キー割当てとか)で実行したときは使用できません。
※ S_auxxxx / M_auxxxx に記載したから %*~ が使える
わけではなく、aux: パスの内部処理で一時的に使用可能に
拡張しています。

特に、%*path, %*src 等の組み込み関数は、各機能に併せて
微調整をしていることがあるので、いつでも使用できる
ことは考えていませんでした。

(2) %*~ は、aux: 内に限られず一番最後の文を呼び出し元に
受け渡す処理をしているので、最後に実行関係の文を記載すると
実行されないケースがあります。
次の例ですと、test 3 と test 6 は実行されないため
表示されません。test 7 は最後の文ではないので表示されます。

S_auxtext = {
cmd1 = internal ; 展開されずに実行
  %I"test 1"
  %I"test 2"
  %I"test 3"
cmd2 = %I"test 4" %: %I"test 5" %: %I"test 6"
cmd3 = %I"test 7"
  command
list = %*cmd1 %*cmd2 %*cmd3 ; 「command」が展開されて実行
}


以上、S_ 内で改行記載ができない以外は仕様になっています。

ただ、現状の aux: パスの仕様だと、そのパス限定で実行したい
コマンド(ftp とか git とかでの使うコマンド発行など)とかを
実装しづらいと思っており、今後強化する予定です。
どんな操作でどんな処理をしたいかとかのリクエストがあれば、
強化する時に併せて検討します。


タイトルRe^6: aux:パスの挙動について
記事No3676
投稿日: 2021/06/17(Thu) 21:49
投稿者tm
詳細な説明ありがとうございます。

(1)確かに%*がどこでも使えると通常の%*関数とバッティングする
可能性もあるので都合が悪そうですね。

(2)は思い当たることがあったので納得です。

パスの取得は"rclone cat"での使用を想定していました。
以下のようなコマンドを実行しています。
*run -min -noppb cmd /c rclone cat %*regexp("%FDC","s/aux:\/\/S_auxrclone\/(.*)/$1/") | %0ppvw

自分のauxrcloneの設定を張っておきます。
gitは特殊なことをしているのであまり意味がなさそうですが
リクエストに関係があるので運用gif画像を貼ってあります。
gist.github.com/tar80/f35d793d6fa3ed8645815fb276719528

リクエスト色々と思いつくことがありますが、
長すぎると言われたので次のコメントに分けます。


それと話は変わりますがバグを発見しました。
一行編集上で%'temp'%'temp'%*addchar(\)と入力すると、その後の文字入力毎に
”がホットキー登録できません”とエラーがでます。
エイリアス二つと%*addchar(\)で再現します。
PPxModuleをなにも入れない状態のppxw64bit ver179で確認。


タイトルリクエスト内容
記事No3677
投稿日: 2021/06/17(Thu) 21:52
投稿者tm
(1)使用コマンドによって通信や処理に時間がかかることがあり、コマンドに
そのまま実行内容を書くとPPcが一時操作不能になります。
対策としてスクリプトを使い処理終了後にリスト更新して開くということをしていますが、
いずれにしろ"list"にパスを書かないと実行されないため、コマンド実行直後に
一度更新前のリストを開き、リスト更新後再度開くという操作をしています。
最初の時点でリストが開かないようにできるスイッチのようなものがほしい。

(2)"*string i"は内部からのみ参照でき、"*string p"は普通に参照できることは確認済みですが、
aux:パス上で設定できる特殊環境変数がほしい。*string xxx,path=%*pathのようなことがしたい。

(3)%nで###と返ってきますが普通にIDが取れないかなと思いました。

(4)mvをrename以外でも使えるようにというかmoveがほしい。

(5)設定でカバーできることですが、rcloneでもgitでもルートを遡れてしまうのが困るので、
ルート設定ができてほしい。

(6)"git status"、"git log"を加工したリストファイルを使ったモード設定を使用しています。
現時点ではモードチェンジによる設定変更箇所が多く、特にキー操作の変更・復元が悩ましいです。
これらをシンプルにするためaux:で運用する方法を模索中です。
aux:は独自のパスを設定できることと、XC_dsetを使えば設定の自動変更ができそうなので
この部分が強化されれば嬉しい。

(7)aux:と直接関係ありませんが、実行中のppbの処理を中止するコマンドがほしい。(1)の
非同期実行で、リストをダブって取得したときなどに前のppbを閉じるのではなく処理中断したい。
処理後のPPbがいくつも追加されていくと面倒なのでメインPPbを一枚出して
他のPPbを管理する使い方がしたいということです。
*jobはちょっと触った程度で検証不足です。そちらでできるならすみません。


タイトルRe: リクエスト内容
記事No3680
投稿日: 2021/06/19(Sat) 22:12
投稿者TORO
とりあえず (4) は設定追加できるようにしておきました。
他については順次検討していきますね。


タイトルRe^2: リクエスト内容
記事No3681
投稿日: 2021/06/20(Sun) 08:51
投稿者tm
> とりあえず (4) は設定追加できるようにしておきました。
> 他については順次検討していきますね。

ありがとうございます。
バグの修正も確認できました。