問題タブ [zsh-completion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
search - Man の Zsh の TAB 補完で 2 単語検索ができない
問題: 2 つの単語を取り、それらから Man の最適な一致を計算し、最適な一致を返すタブ補完を使用する
例:次の疑似コードは、少なくとも Zsh の reverse-menu-complete -command を提供するはずです。現在、zgrep がないとマニュアル内のマニュアルを検索できません。
ここで、「:」は必要なセパレーターです。
初期の問題: Zsh でマニュアルを検索する際に TAB を押して 1 つの単語を検索すると、TAB 補完が実行されるのはどのファイルですか?
git - zsh compinitでgitファイルのタブ補完を有効にする方法は?
zsh タブの補完に問題があります: 実行後:
ファイルの Git タブ補完が機能しなくなりました。たとえば、my_file を完成させるために git add my_f と入力しても、何も起こりません。zsh git 補完は、git ブランチとタグに対してのみ機能するようです。
compinit がなくても、git ファイルの補完は機能しますが、もちろん、高度なブランチ補完機能をすべて見逃しています。
それで... zshでgitファイルの補完とgitブランチの補完を同時に可能にする方法はありますか?これは本当に私を大いに助けてくれます。
zsh - コンテキストが Zsh にある場合はいつでも、完全なファイル名にキーをバインドします
zsh が推測するファイル名ではなく、ファイル名が必要な場合があります。たとえば、適切な.png
サフィックスのない PNG ファイルがあると、zsh は画像ではないと判断し、Tab
引数を入力して入力しても一覧表示されませんdisplay
。
^XC
forのように、コンテキストがどこにあってもファイル名を補完するキーシーケンスがある_correct_filename
かどうか、またはそれを行うように zsh を構成する方法があるかどうか疑問に思っています。
shell - Zシェルのcd-1、-2、-3など
cd-と入力すると以前にアクセスしたパスのリストが表示され、cd -1、-2、-3などと入力するとディレクトリに移動するようにZシェルを設定するにはどうすればよいですか?
bash - zshまたはbashは、ディレクトリを参照する履歴式を拡張できますか?
たとえば、何かをコピーしたとしましょう。
そして、私は次のように履歴置換を使用したいと思います:
!!:2
[tab]を押しても、zshが拡張されていないことに驚いています。歴史的な議論へのより複雑な参照では、リターンを押す前に拡張が本当に必要かもしれません。それで、正しい議論を参照したことを確実に知っています。それをさせる方法はありますか?(これがデフォルトの動作であると思います。何らかの理由で誤って無効にしたり壊れたりしたのはデフォルトの動作ですか?)
zshがそれを実行できない場合、bashを実行できますか?
更新:zshは、ディレクトリではなくファイルを参照している場合、履歴式を展開します。
それが単なる任意の文字列である場合、それはそれを展開します:
ただし、ディレクトリに何かを移動しようとしている場合はそうではありません。これはバグであるに違いないように見えます。
zsh - ホームディレクトリでのzshオートコンプリート
私はopenSuSEで何年も使用しました:
〜/workディレクトリのディレクトリ名をオートコンプリートする関数。
ホームディレクトリからディレクトリを取得しTAB
た後にヒットした場合、Ubuntu zsh-v4.3.11では機能しません。w
Ubuntuの違いは何ですか?
substring - Bashサブストリングファイルの完了
bashの部分/部分文字列ファイルの補完はzshと同様ですか?
つまり、ユーザーにファイル名のプレフィックスを入力するように要求する代わりに、タブを押します。ユーザーは、ファイル名のサブストリングを入力してから、タブを入力することもできます。
ディレクトリにファイルが含まれているとすると、このファイル名abcdef
だけでなく、などab<tab>
も完了します。bc<tab>
cd<tab>
zsh - zsh の補完: 現在のディレクトリではなく、特定のディレクトリからのパスを使用する
カスタム関数があり、zsh はデフォルトのタブ補完を提供してくれます。現在の作業ディレクトリからのパスを完成させます。それは素晴らしいことですが、補完 (この特定の関数のみ) の動作を少し変えたいと思います: いつも特定のディレクトリにいるかのように。
これは非常に少ない作業で達成できますか? 私は次のようなものが好き
compdef myfunc="cd /my/dir"
です...
コンテキストを追加するために、私の関数は次のようになります。
そして、私は次のようなことができるようにしたいと思います:
git - 新しい zshell コマンド ラインのカスタム git 補完の追加
Homebrew経由で git をインストールしました。インストールされたスクリプトを介してコマンドライン補完を取得します
ただし、カスタムの git-* スクリプトも完成させたいと思っています。
これを既存の git 補完にどのように追加しますか?
zsh - プログラムにサブコマンドがある場合の完了
Mercurial、Git、Subversion などによく似たサブコマンドを使用するコマンドライン ツールを作成しました。その一般的な使用法は次のとおりです。
例えば
私は現在、そのための Zsh 補完を構築している最中ですが、それが非常に複雑な獣であることがすぐにわかりました。_hg
との補完を見てきました_git
が、それらは非常に複雑でアプローチが異なります (理解するのに苦労しています) が、どちらも各サブコマンドを個別に処理しているようです。
_arguments
組み込み関数 ( 、_values
、pick_variant
&c.) を使用して、一般的なオプションとサブコマンド固有のオプションを適切に処理するなど、サブコマンドの概念を正しく処理する方法があるかどうかは誰にもわかりませんか? または、一般的なオプションとサブコマンドを手動で処理するのが最善の方法でしょうか?
うなずく例は非常に高く評価されます。
どうもありがとう。