kachick / times_kachick

`#times_kachick channel in chat` as a public repository. Personal Note and TODOs
https://github.com/kachick/times_kachick/issues?q=is%3Aissue+is%3Aclosed
6 stars 0 forks source link

shell の prompt を カスタマイズしていると普段は便利だけど、GitHub とかに 貼り付けるときに整形が必要で面倒 #90

Closed kachick closed 3 years ago

kachick commented 3 years ago

TL;DR

経緯 / History

結構長い間 https://github.com/sorin-ionescu/prezto を愛用させてもらっている。 テーマは sorin とかいうやつで、シンプル、好みの外観、git のstatus 出るだけでも十分便利かなということで結構気に入ってる。

スクリーンショット 2021-05-28 23 25 12

が、バグなり見つけて issue 立てたりPR作ったりするときにコンソールの結果を貼りたくなるわけだが、そのときに GFM の language 指定で console というやつを基本的に使いたいなと思っている。前はshellだのplaintextだのを使っていたんだけど、これはプロンプトやコマンドラインと、それによって出力された内容を分けて表示してくれる・・・っぽいという認識をしている。

https://github.com/github/linguist/blob/757b173b34db14bc23c7b53a15252628add4f815/lib/linguist/languages.yml#L5369-L5449 を見ると、 Shell とは別れて ShellSession という扱いになっているようだ。その中の alias の一つだよという理解をしている。

```console
$ foo
bar
```

こう書くと

$ foo
bar

こうなるわけだ。 ちなみに出力部が一切無しでプロンプト付きの行だけにすると、markdown lint さんからの怒られが発生してしまい、一回autocorrectされて悲しい思いをしたこともある。ちょっと癖があるのは事実か。

で、 sorin の結果を貼り付けるとこうなる

~/r/rspec-matchers-power_assert_matchers ❯❯❯ date                                                                           main ⬆
金  5 28 23:38:34 JST 2021

ハイライトが効かない、横に長い、プロンプトが謎い、ということで、まぁ、自分がこれで貼られてきたら ??? となりそうだ。 ということでこれを console に向く感じに書き直すのだが、回数が多くなってくると結構面倒な話で、正直うんざりしてきてしまった。

しかしこのテーマは気に入ってるので基本的にはあんま変えたくないんだよなぁ・・・ ということで、2行化を試してみようと思っている。前は2行とか無いわ! 🚮 みたいな感じだったんだけど、こういう背景を踏まえると実用的な気がしてきた・・・そうすれば、1行目にはもっと色々情報詰め込みたりもするだろうし

kachick commented 3 years ago
スクリーンショット 2021-05-29 15 37 20

prezto もデフォルトでバンドルしてる pure というのが2行でありながらシンプル且つ十分で、これで良いのでは?と思ってしまったので、そのまま採用することにした。 ruby version とかも面倒なのでとりあえず出さなくていいや

https://github.com/sindresorhus/pure

コマンド実行時間も表示してくれて良い感じなのだが、「長かった時」に限るというのが、良いのか悪いのかよく分かってない。 プロンプトも $ に変えようかな?とちょっと思ったが、この程度なら置換も大変ではないしそのままにしてみる。

基本面倒くさがりなので、デフォルトで良いものは何でもデフォルトのまま使ってしまいたい。

kachick commented 3 years ago

実は案外難しいというか、ruby versionやら node の version やらを表示させるようなオフィシャルな方法がpureにはないっぽく、汎用化した機能を実装してくれ的な感じで https://github.com/sindresorhus/pure/issues/460 で懸賞金までかけている。他にも 2 issue ぐらいそういうのがあって、まぁ1万円程度ではあるが、面白いなと思った。始めてみたかも https://issuehunt.io/r/sindresorhus/pure/issues/460