問題タブ [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.

0 投票する
0 に答える
287 参照

bash - ZSH Symfony コンソールのオートコンプリート

Symfony のコンソール用の ZSH オートコンプリート スクリプトを作成しようとしています。ほぼ完成しましたが、最後の部分でブロックしています。関数 return のおかげで配列を作成する必要がありますが、処理方法がわかりません。私が書いたコードは次のとおりです。

コマンドラインを実行すると、適切な方法でフォーマットされます。ただし、ZSH で使用すると、出力は次のようになります。

フォーマットされた関数は次を返します。

表示されない単語は、コマンド補完として使用されます。ここに例があります: Asciinema example .

戻り値を配列に直接使用すると、うまく機能します。

0 投票する
0 に答える
234 参照

zsh-completion - ZSH の完了: 最初にフォルダを表示

タブの完了時にフォルダ グループに最高の優先度を与えるにはどうすればよいですか? 現在、完了中 (cd前にない)、ほとんどすべてがフォルダー名の前に配置されるため、システム コマンドや関数などを反復してフォルダーに移動するのは少し面倒です。zstyle私の にオーバーライドはありません.zshrc

例: ここに画像の説明を入力

0 投票する
1 に答える
1874 参照

linux - zsh compinit: 安全でないディレクトリ。Compaudit は /tmp ディレクトリを表示します

Raspberry Pi 2 (Raspbian Jessie) で zsh を実行しています。zshは、ディレクトリが安全でないcompinitと不平を言っています。/tmpそのため、ディレクトリのアクセス許可を確認しました。

どうやら /tmp ディレクトリでは誰でも何でもできるようです。その目的を考えると、これは理にかなっています。だから私はこのスタックオーバーフローの質問に関する提案を試みました。他のサイトでも同様の提案を試みました。具体的には、そのディレクトリに対するグループの書き込み権限をオフにすることを提案しています。に従って権限がどのように見えるかによりls -ld、「すべて」の書き込み権限もオフにする必要がありました。そう:

これはzshをシャットダウンします。しかし、他のプログラムが壊れ始めました。たとえば、文字「l」を入力するたびに gnome-terminal がクラッシュしました。このため、書き込み権限をオンに戻しcompinit -u.zshrc.

私が知りたいこと:これを修正するより良い方法はありますか? compinit に安全でないディレクトリを使用させるのが良い考えかどうかはわかりません。私の dotfiles リポジトリはここでホストされており、現在実行しているファイルcompinit -uここにあります。

0 投票する
1 に答える
621 参照

autocomplete - zsh オートコンプリート フェイルオーバーを compdef _files にする方法

次を使用してsshキーのフィンガープリントを取得する必要がありました。

入力後:ssh-keygen -lf ~/.ss TABオプションはありませんでした。

私がしなければなりませんでした:

その後、ファイルパスを使用してオートコンプリートを利用できましたが、オートコンプリートコマンドが機能しなくなったため、入力ssh-keygen - Tabしても次の出力が表示されなくなりました。

両方のオプションを有効にして、次のようなことができるようにする方法があるかどうか疑問に思っています。

ssh-keyg TABそれは私に与えるでしょう:

それから私はすることができます

$ ssh-keygen - TAB

これにより、オプションメニューが出力され、実行できるようになります。

$ ssh-keygen -lf ~/.ss TAB

そして、機能する可能性のあるオプションのリストを持っているので、最後に次のようなものが得られます:

今のところ、~/.zshrcこれに追加するだけです:

しかし、_files補完を使用したいaveryコマンドに対してそれを行う必要があるため、常に使用_filesまたはフェイルオーバーする方法があるかどうかを知りたいです。

何か案は?

+をcsh押すとファイルオプションが表示されるように動作させることは可能でしょうか?Ctrld

アップデート:

-f最後の引数が の場合、オートコンプリートが機能することに気付きました。

ssh-keygen -l -f ~/.sshTAB

しかし、カスタム スクリプトの場合、どのような機能をコマンドするか、ウィジェット エイリアスが_files補完を強制するのに役立ちます。

0 投票する
0 に答える
75 参照

zsh - zsh完了無視リスト?

.zshrc を次のように設定しています。

ディレクトリには、Cc と C_1.c の 2 つのファイルがあります。私が行った場合

私は得る

もう一度実行すると、次のように完了します

それで、私の質問は、なぜ C_1.c がまったく無視されているのですか? を押したときに bash が行うように、zsh に C* の選択を促すにはどうすればよいですか?

ありがとう

0 投票する
1 に答える
311 参照

bash - エイリアスのように bash 関数 + grc を使用すると、Zsh の補完が壊れます

grc / grcat を使用して、この関数で端末出力を色付けしています。

しかし、これは私の.zshrcでoh-my-zshを使用してセットアップした私のzsh補完とプラグインを壊しています:

docker stopたとえば、使用しようとすると、ANSI エスケープ シーケンスで補完が行われます。$'\033'\[0m$'\033'\[1m$'\033'\[33mhigh_wright$'\033'\[0m

それを回避し、これらのエスケープ シーケンスを補完のみにフィルター処理する方法はありますか?

編集

docker プラグインの .oh-my-zsh ディレクトリでこのファイルを見つけました: https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/docker/_docker

この関数を変更する必要があることは理解していますが、方法がわかりません。