{違了}{希哲13年5月10日の開発}{希哲13年3月11日}{希哲13年3月11日の開発}{駒触れ通知}{Synx 駒手}{OK}=}(7)

{Synx 駒触れ K#F85E/4686-0330}

希哲11年6月4日SLFS 試作版2号の開発中に,これまでの経験則から一定の形式化を計ることを考える。原案は,SSH 形式を基本に,ホスト部・ディレクトリ部を省略出来るようにし,chroot 時にディレクトリ パスの前に () を置き,その中に任意の文字列(パスや変数名など)を表示出来るようにするというもの。これを本格的に整理して Synx 駒触れとするかは検討中。「駒触れ」という訳語は同日4日にここから生まれた。

SLFS では以下のようになる(4日案)。

root@localhost:($SLFS)/ #

(5日案1)

root@localhost;$SLFS:/ #

(5日案2,コロン・セミコロンを逆に。セミコロンは駒手の終わりの記号であるため,区切り文字としての意味は分かりやすいが,規則は若干複雑になる。ただし,chroot 部がディレクトリ部の一部になるため概念上はむしろ自然か。後日,記号として目立たないことが視認性上の欠点になることに気付いた。特に,ドットなどを含むディレクトリ名との相性が悪い)。

root@localhost:$SLFS;/ #

(5日案3,コロンで統一。形式上,どちらかを省略したときに判別できないのが欠点)

root@localhost:$SLFS:/ #

(5日案4,5日案2をブラケットで囲む。主環境の Zsh では色付けしていたため気付かなかったが,単純な記号としては一塊として認識しやすい)。

[root@localhost:$SLFS;/]#

9日案1,5日案4をベースに,視認しにくいセミコロン表記を廃し,chroot 部を丸括弧で囲む。同時に,表示するのは任意の文字列ではなく chroot 対象ディレクトリの basename に統一。分かりやすいが,丸括弧は汎用的すぎて目立ちにくい可能性もある。Windows など,丸括弧をディレクトリ名に使うものもあり,形式上それが一塊のディレクトリ名でもあり得る。また,シェル上では特殊文字となり応用性に欠ける)

[root@localhost:(SLFS)/]#

(9日案2,9日案1の丸括弧を波括弧に変える。見た目はやや奇妙だが,状態の特殊性が分かりやすく,xargs で使われるようにカンマを含まなければブレース展開されない形式で,シェル上でも通常の文字列として扱えるため,将来的に駒手引数として応用の可能性がある。ディレクトリ名にも使えるが,丸括弧と違いまず一般的には使われない)

[root@localhost:SLFS/]#

(11日案,9日案2の波括弧を二重スラッシュに置き換える。換言すると,chroot 対象となるパスを二重スラッシュで囲む。省割ディレクトリ記法の応用。単純かつ視認性も良い。絶対パス先頭は三重スラッシュになる。冗長なようだが,長いパスの中では適度に目立って悪くない。あまり特殊な記号を用いすぎると画面が煩わしく感じるので,余計な記号を足さないのも美点)。

[root@localhost:SLFS]#

現時点では9日案2が有力,11日案を実験中。設定は 0@0:0;0 と各部数字で表現出来るようにするか。

なお,一般用者にドル記号を使うかパーセント記号を使うかは,それぞれのシェル種別を見分けられると便利なこともあるので各シェルの慣例に従い,あえて統一しない。

希哲11年6月29日終了ステータスが 0 以外の場合,赤の太字で !! を加えることにした($!!,#!!)。7月3日,root の # も赤の太字で表示するようにした。

希哲11年7月4日Synicware 駒触れに ls 機能を追加$PROMPT_COMMANDtrap を組み合わせ,何も入力せず改行した時に l を実行する機能を追加した。

希哲11年7月11日知機模動に対応。とりあえず駒触れの末尾に黄色・太字で _ を表示する仕様を追加。この際,前に空白を入れるつもりだったが,入力内容なのか駒触れなのか区別が付かなくなるため $_ のように連結することにした。また,これに伴い !! を $ 等の前に置くことにした。つまり,直前の駒手が異常終了した知機模動では !!$_ という表示になる。この方が例示などの際に使う $ 等との整合性が取れる(常に入力駒手の前に $ 等がある)。

同11日,駒触れを [] 内の板部(bar)と残りの緒部(tip,!!$_ の部分)に大きく分け,緒部全体を太字にし,!! か # が現れる場合は緒部全体を赤太字にすることにした。

希哲11年7月15日,長い駒手で折り返しが発生した時に表示が乱れるをとりあえず各シーケンスを \[\] を囲み,$ppt をダブル クォーテーションで囲んで $PS1 に代入することで解消。対症療法であるため原因解明が必要。

希哲11年7月18日により知機模動では知機駒触れに従うこととし,アンダースコアではなくアスタリスクを使うことにした。アンダースコアは駒触れとしては目立ちにくいという欠点があった。

希哲11年7月19日,一般用者では $_ の代わりに \* を使うことにした。

希哲11年8月31日領下の場合に保し手名部分を省略するようにした。領下において保し手名は常に注目するような情報ではないため,省略した方が領下と外領の区別がつけやすい。

希哲12年4月12日,いくらか微調整を繰り返し場筋の前にセミコロンを使うようになっていたが,Synx 省割駒手 = を援用し = で表現する方法を試行。現時点では下記。

[root@localhost=SLFS]#

同4月12日,これを期に,これまで「Synicware 駒触れ」としていたのを Synx 省割駒手に合わせたいこともあり「Synx 駒触れ」に改称(希哲11年6月4日から検討していた案)。

{希哲13年2月3日の開発}{希哲12年4月12日}{TRI}{希哲11年8月31日}{知機駒触れ}{Synx 駒触れ}{駒触れ}{希哲11年6月4日}{Synicware プロンプト}{Synicware}...=}(11)

{}