2015年5月1日金曜日

bash で長いコマンドを打つと折り返しが発生しない

cygwin の bash を使ってて、例えば

curl http://www.google.com

と実行したい場合

この様に入力していくと
途中でカーソルが先頭に戻り
となってしまう

また、この状態でカーソルキーや BS 等でコマンドを修正しようとするとカーソル位置がずれ、編集できない。

以前にもこんなことがあって、直した気がするのだが
その直し方を忘れてしまった ( ̄∇ ̄;)
最近記憶力がなくて困る…(-_-;)

と言うわけで、今度な忘れないようメモっておく。
ここに書いてあるように、プロンプトの問題なので

PS1="\e[01;31m[\u@\H \W]\$ \e[00m"
となっていたら
PS1="\[\e[01;31m\][\u@\H \W]\$ \[\e[00m\]"
のように表示しない文字をエスケープシーケンス '\[' '\]' で括ってやれば良い。


…でも、昔はエスケープシーケンスで括らずとも動いていたぞ…???

0 件のコメント:

コメントを投稿

EXCEL での正規表現置換

エクセルで、"No" の後の数字を一括で A1 セルで指定した内容に置換したくて REGEXREPLACE(B10,"(No)[0-9]+","$1"&A1) と書いたらエラーになった。なんで?  "...