チャット風Shell の可能性

Shellとしてみれば,カラー化については既にある.*1 黒地に白にしてる人も多いけれど,それは設定でそうしてるだけで,白地に青でも赤地に緑でも好きなようにすれば良い.*2


一方で,ここでいう(LINEのような)「チャット風のUI」については,自分はイマイチだと思う.Shellは一行の情報量が多くなるため,かなり幅広い横長のウインドウを必用とする.こういう風に左右に配置されると,視線移動が多くなって単純に見づらいのだ.ごちゃごちゃするのも,一画面に表示できる情報量が減るので若干マイナス.

このような「チャット風UI」はスマートフォンのような幅が狭い小型縦長ディスプレイ向けの設計で,PCのような横長の大画面で使うにはむいてない.

配色についても自分はもっとシンプルな方が好みだが,その辺りは好みの問題.好きにすれば良いと思う.


 

Windows PowerShellクックブック 詳解 シェルスクリプト 入門bash 第3版 プロフェショナル・シェルプログラミング (アスキー書籍)

 

https://b.hatena.ne.jp/entry/s/nlab.itmedia.co.jp/nl/articles/2010/19/news073.html

  • id:oumi99 LINE風なので仕方ないのだけれど、入力と出力が左右に分かれているせいで視線移動が旧来の上下だけでなく左右にも生じるのがつらい。
  • id:canimisocil どのコマンドの出力かって、入力したコマンドと対になってるから左右に視点を変える必要があるのが辛そう。 これはこれで使える人はいると思うけど。
  • id:th_6295 令和にそのネタ出すならせめてPowerShellでやれ案件。(そしてPowerShellのエラーが毒々しいのは確か。)/あれでしょ?数万行の出力+MOREで無限に長文連投とかされるんでしょ?やっぱり怖い……
  • id:aya_momo 入出力を分けるために、プロンプトの行を色付きにしたり、いくつか改行を入れたりするわけだけど。
  • id:khtokage これが分かりやすいのは分かるけど、そもそもプロンプトとか弄ってコマンド部分と出力部分を見やすくカスタマイズしない? カスタマイズ出来ない環境の話ならこれだって導入出来ないだろうし。
  • id:buzztaiki solarisは白かった。
  • id:nakag0711 ジョークソフトとしては面白いが、画面スペースをわざわざ無駄遣いして狭く使ってるわけだしエスケープシーケンスも使えないだろうし…
  • id:kkobayashi CLIのいいとこ台無しで草
  • id:rryu エスケープシーケンスバリバリのgitやbrewコマンド、フルスクリーン系のコマンドを実行するとどうなるのだろう。
  • id:iamamachine 悪くないと思うけど、vimssh使えなさそう。
  • id:sucelie パイプをどう表現するのかな?
  • id:sangping いや、なんかシステム弄ってる意識がどっかに消え去って、とんでもない操作をうっかりしそうで逆に怖いんだが。
  • id:miau 個人的には「怖い操作もできてしまう」感が薄れて逆に怖い…。「そのコマンドはこういう意味だけど本当に実行しますか?」と確認してくれる機能があれば本当に入門者にオススメできそう。
  • id:love0hate 見た目が変わってもgitの怖さは変わらないだろうから、怖さを本質的に軽減するにはコマンド自体の簡易化も必要だと思った。つまりchatops。

 

  • id:deep_one 「どのプロセスが出した標準出力なのか」をみて、むしろPowershellでほしいと思った。モジュールにアイコンが欲しい。

多機能化については一利あると思う.ただし,そういうのをてんこ盛りにしたのは,もはやShellとは似て非なる別のツールで,シンプルなShellとは別にインストールしたほうがいいかもしれない.

  • id:moons コマンドラインが怖いのは「その操作で何がどうなるのか。どうなったのか」分かりづらいところだと思うから、文字の出し方変えても大して変わらんと思う
  • id:rs250 長い出力が延々スクロールされ表示されたら結局怖くなって逃げだすと予想 (>dir /s c:\ とか)
  • id:natu3kan 応答が英語かつ専門用語なので、やっぱり怖い。I don't speak english.
  • id:haccian 最初のとっつきやすさは変わるが、それ以降の使いやすさや学習コストが変わるわけでは無いからな…
  • id:kns_1234 初心者が困るのは「何を入力すれば良いか分からない」ことなので、よく使うコマンドをスタンプにすると良いと思う。入出力は分けて表示するべきだと私も思ってた。
  • id:naoya2k 良く使うコマンドをスタンプにするとかは… 1980年代のパソコンがファンクションキーでやってたことの再発明なんだよなあ…あれがなぜ廃れたのかまで踏まえて再発明すればいいものができるかもしれない

ここで「スタンプ」と呼んでる物は,要するにアイコンだと思う.

そしてそうやって数十~数百のアイコンが画面上部にズラリと並べると,Excelなんかのオフィスソフトの昔のUIへと先祖返り.そしてアイコンは決して直感的に分るものではなく,暗記するものだ.全部のアイコンを暗記するのは,はたしてコマンドを暗記するのとどちらが楽だろう.*3

どうせ Shellスクリプトを書く時にはコマンドをじかにテキストで書くのだから,アイコンとコマンドを両方覚えるのは二度手間だと思う.

たくさんのアイコンがあると,似たようなデザインのアイコンが並ぶこともあるだろう.うっかり押し間違っただけで危険な操作が実行されたら,そちらの方がよほど怖い.

入力支援についてはあってもいいかも.でもそれってIDEの領域だ.シェルは最小限の実行環境であればいい.


汎用多目的な実行環境としてのShellは,やはり今後も変わらないだろう.テキスト入力が一番汎用的で自由度も高く,便利なのだ.

一方で特定用途の機能に特化したGUIツールというのはありだろう.たとえば一般人がよく使う,ファイル一覧(ls),移動(mv)やコピー(cp),削除(rm),閲覧(less)など,ファイル管理に特化したツールがそれだ.それは古くは FD とか Explorer と呼ばれていたっけね.
https://news.mynavi.jp/article/20121120-FD/

「そういうツールはないのか?」というよりは,既に広く普及した結果が Mac であり Windows なのだろう.

  • id:yoiIT それをやるならGUI作ればいいがな…
  • id:hase0510 よく使うコマンドをスタンプにする・・・GUIの再発明では?
  • id:aosiro ディレクトリを窓型にして、ファイルを小さな絵で表して、マウスで操作できるようにしたらもっとわかりやすいかも!
  • id:maharada イルカも添えてみてはどうか

*1:ひょっとして,色のカスタマイズがないのって,あるとしても古典的なDOSプロンプトくらいじゃないのか? https://mimimopu.com/windows-powershell-color-font-change/

*2:ブコメであったが,「間違えそうで怖い」というのはまさにその通りだな.Slackを開いてる横に Slack風 Shell があった日にゃあ,速攻で一目で見分けられるような色に変更するわ.

*3:しかもアイコンはコマンドと違って,分からない時に「ググりにくい」「E-mailや掲示板で質問しにくい/解答しにくい」という弱点もある.ネットで調べ物をする初心者にはこれは辛い.