を使用すると、Ctrl-R
bashで履歴を検索できます。
しかし、私が入力した関連単語を強調表示したい場合はどうすればよいですか?
例:
(reverse-i-search)`mount': sudo mount /dev/sda2 /mnt
mount
上記の逆検索では、全命令で世界を強調したいと思いますsudo mount /dev/sda2 /mnt
。 Bashでこれを達成する方法は?
答え1
readline
(bash
ラインエディタの場合)にはこの可能性はありません。
zsh
しかし、基本的にそうします。既定では、検索されたテキストは下線で強調表示されますが、これを変更できます。たとえば、
zle_highlight=(isearch:standout)
または:
zle_highlight=(isearch:fg=red)
(zle
isの行エディタ、iszsh
に似ています)。readline
bash
答え2
したがって、Bash 5.1とReadline 8.1から実際にこれを行うことができます。
~からhttps://lwn.net/Articles/839212/:
最も顕著な新機能はReadlineにあります。 「Gangs」が追加され、ポイントとマーカー(領域、つまり「アクティブ領域」)の間のテキストが強調表示されます。これは、角かっこ貼り付けで挿入されたテキストを視覚的に表示し、増分および非増分履歴検索で見つかったテキストを表示するために追加されました。現在の顔はブラケット貼り付けに関連付けられており、ブラケット貼り付けモードで有効または無効になります。角かっこ貼り付けモードはデフォルトで有効になっています。
イメージソース:https://www.reddit.com/r/archlinux/comments/ka5xek/
デフォルトでは有効になっているため、無効にするにはinputrcに次のものを追加する必要があります。
set enable-bracketed-paste off