問題タブ [ultisnips]
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.
vim - パラメータを使用した Ultisnips のオプションの行
パラメータに基づいてスニペットに追加の行を挿入しようとしています。そのようなスニペットをどのように設計するかはわかりません。
vim - 新しいファイルタイプを ultisnips に追加する
cuda (.cu) ファイルを追加しようとしています。基本的な目的は、最初にすべての c,cpp スニペットを cu ファイルで使用できるようにしてから、追加のサポートを追加することです。最初にテストしたことは、vim内でファイルタイプを設定することです
set ft:cpp.c
これは機能します。次に、cpp.snippets ファイルを cu.snippets にコピーしようとしましたvim-snippets/snippets
。vim-snippets/UltiSnips
しかし、これは機能していません ( -- スニペットが検出されない -- のように機能していません) 。私も追加しました
私の.vimrcで。この後も動作しません。
もチェックしましたUltiSnipsSnippetDirectories
。を指していUltisnips
ます。
私はまた、cppを拡張しようとするだけのcu.snippetsを作成しようとしました(他には何もありません)。これも機能していません。
副次的な質問: 私が理解している限り、https://github.com/honza/vim-snippetsにはスニペットを含む 2 つのフォルダーがあります。snippets/*
snipmate ベースのものとUltiSnips/*
ultisnips ベースのもの。ただし、inc
スニペットは snippets ディレクトリの c.snippets でのみ提供されます (ultisnips では提供されません)。しかし、奇妙にファイルでinc
動作しc
ます。私はsnipmateを使用していないことを確信しています。これはどのように起こりますか?私は何かが欠けていますか?それとも、ultisnips が両方の形式を理解できるということですか?
vim - UltiSnips が自分のスニペットを認識しないのはなぜですか?
現在、Vim でYouCompleteMeを使用しており、Vundler を使用してUltiSnipsとvim-snippetsをインストールしています。UltiSnipsとYouCompleteMeは互換性があり、適切に動作します。ただし、これらが認識されないため、独自のスニペットを定義すると問題が発生します。
フォルダー内ではなくホームディレクトリにフォルダーをUltiSnipsEdit
作成するため、関数を使用すると問題が発生すると思われます。たとえば、R スクリプトを使用して を使用すると、内にファイルが作成されます。次に、テストするためだけにスニペットを定義します。UltiSnips
.vim
UltiSnipsEdit
r.snippets
/home/UltiSnips
ファイルを保存した後、スニペットはYouCompleteMeのリストに表示:UltiSnipsExpandTrigger
されず、 (<c-l>
私の場合)で展開されません。
python - 最後に初期変数を削除し、変更されたものだけを残すスニペットを作成します
すべての特殊文字をアンダースコアに置き換える UltiSnips スニペットがあるとします。
私はこれを持っています:
今のようなものにHello world!
なります:
ただし、最後に、最初に入力したものを破棄して、2 行目だけを残しておきたいと思います。それは可能ですか?たぶん使用post_expand
?
javascript - 変数のデフォルト プレースホルダーを使用して UltiSnip を定義する
優れたUltiSnips Vim プラグインを使用して、開発ワークフローを改善しています。私はこれを数年間使用しており、コーディング中の冗長な入力の多くを自動化するのに本当に役立っています。
とにかく: Javascript の require ステートメントを生成するのに役立つスニペットを定義しようとしています。
通常の Javascript の require ステートメントは次のようになります。
だから、ここに私が定義したスニペットがあります:
これによりreq
、Vim で入力できるようになり、カーソルが${1}
スニペット内の位置に移動して、変数名を定義できるようになります。もう一度ヒットすると、カーソルが${2}
スニペット内の の場所に移動します。これにより、インポートする実際の Javascript モジュール名を定義できます。
これは問題なく動作しますが、私がやりたいことは、さらに一歩進んだことです。次のようなスニペットを作成したいと思います。
の値を入力すると、デフォルトで の値に${1}
値${2}
が更新さ${1}
れます。このようにして、特定の状況で同じモジュール名を 2 回入力する手間を省くことができます。
アイデアは、次のようなことができるはずだということです:
このように、次のように入力すると:
次の展開された行になるはずです。
ただし、次の状況でも機能するはずです。
どちらが出力されますか:
それは理にかなっていますか?
とにかく:どんな助けでも大歓迎です!上記のコード サンプルは、思ったように動作しません。${2:${1}}
ビットは無視され、期待どおりに動作しません ( toのプレースホルダー値を設定しません${2}
${1}
)。
python - UltiSnip の Python 式にタブストップを追加する
UltiSnip doc で指定された例を変更しました。
これは、元のものと比較して a を追加し、\label{envname:}
その場合はenvname
追加proof
しませんでした。thm
これは、環境を記述するときに役立ちます。
be lem<tab>
あげる
\begin{lem}\label{lem:}
<c-j>
\end{lem}
唯一の欠点は、その位置にプレースホルダーを追加する方法がわからないこと\label{lem:$4}
です。何か案が?
r - utltsnips - スペースで囲む
Vim で使用する次の utilsnips スクリプトがあります。
Rでダッシュを代入演算子に展開するために使用します。<-
オン展開の前後にスペースを入れるようにしたいと思います。ただし、 のようにスニペットの前にスペースを入れると、 を押し<-
ても展開しませんTab
。演算子の前後にスペースを入れるには、スクリプトをどのように変更すればよいですか? 望ましい結果: <-
。