私はこれについてかなり新しいものです。
alias gc = git commit -m
私の考えでは:
gc
ターミナルに入った後- クリックする
space
とこうなりますgit commit -m
- 不要な場合は、を押すと以前
esc
に変更されますgc
- この仮定を修正し
gca
て[次へ]をクリックします。space
あなたは理解しました。
解決策はありますか?
PS:「私が書いたら端末で変換する必要があります」shopt
オプションを試しましたが、そうではありません。shopt -s expand_aliases
gc
git commit -m
ベストアンサー1
私はあなたがシェルbash
にエイリアスを持っていると仮定します。
alias gc='git commit -m'
Enter実行コマンドを押す前にコマンドラインから拡張しようとしています。
Readline関数を呼び出すことでこれを行うことができますalias-expand-line
。最も簡単な方法は、キーの組み合わせを「バインド」して機能を実行することです。以下では、Ctrl+X+を任意に選択して実行しますa(通常使用する他のキーの組み合わせと競合しないでください)。
bind '"\C-xa": alias-expand-line'
コマンドを実行した後、bind
次のようないくつかのコマンド入力を開始できます。
$ gc "my message"
行の任意の場所で+をクリックすると、Ctrl+Xエイリアスが展開されます。agc
$ git commit -m "my message"
このbind
コマンドは通常、ファイルに配置するか、~/.bashrc
インタラクティブシェルに合わせてカスタマイズする場所に配置します。
Readline関数はエイリアスを「拡張解除」することはできませんが、Ctrl+X+Ctrl+Uまたはを使用してCtrl+_拡張をキャンセルできます(またはundo
Readline関数を選択した他のキーの組み合わせにバインド)。