[解決済み] zsh で `LBUFFER%%(#m)[_a-zA-Z0-9]#` は何をするのですか?
2022-02-08 01:40:30
質問
の次のコードの意味を理解するのに手助けが必要です。 この のドキュメントの意味を教えてください。
LBUFFER=${LBUFFER%%(#m)[_a-zA-Z0-9]#}
LBUFFER+=${abbreviations[$MATCH]:-$MATCH}
ということを知りました。
LBUFFER
はカーソルから左を含みます。しかし、混乱することが3つあります。
-
は何ですか?
%%
は何をしているのでしょうか?をエスケープしているのでしょうか?%
? -
とは何ですか?
(#m)[_a-zA-Z0-9]#
はどうするのでしょうか?のようなものでしょうか?m/[_a-zA-Z0-9]/
をPerlで表示できますか?もしそうなら、マッチした文字列はどうされるのですか? -
とは何ですか?
:-
の部分は、2行目で何をしているのでしょうか?
ありがとうございます。
解決方法は?
-
${a%%b}
の最も長い出現回数を削除します。b
(正規表現でも可)、からa
. -
[_a-zA-Z0-9]#
は、英数字にマッチする正規表現です([ ]の間にあるもので示されます)。[]
) 0回以上 (で指定される)。#
グロブ演算子) -
(#m)
は$MATCH
という変数で、前の正規表現を評価した後に -
1, 2, 3 の組み合わせは、末尾の英数字の伸縮を意味します。
$LBUFFER
は削除され$MATCH
. -
${a:-b}
作るa
と同じです。b
場合のみa
が定義されていない場合。
もっと詳しく知りたい方は 拡張編 のマニュアルを参照してください。
関連
-
[解決済み】なぜiTermで新しいシェルごとに.zshrcをソースする必要があるのでしょうか?
-
[解決済み] のコマンドがzshで見つからない [閉店]。
-
[解決済み] zsh bindkeyコマンドの一覧
-
[解決済み] .zcompdump`のファイルが複数あるのですが、なぜですか?
-
[解決済み] zsh で `LBUFFER%%(#m)[_a-zA-Z0-9]#` は何をするのですか?
-
[解決済み] zsh compinit: 安全でないディレクトリ [閉鎖].
-
[解決済み] ZSHでPATH変数に新しいエントリーを追加する【終了しました
-
[解決済み】zshを最新バージョンにアップデートする方法は?
-
[解決済み】Zshの[nyae]の意味は?
-
[解決済み】OS Xでzshからbashに切り替え、また元に戻す?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン