スニペットでVisual Studio Codeで動的に計算された補完またはスニペットを挿入することは可能ですか?VSCodeでの動的スニペット評価
さまざまな形式の日付と時刻文字列を挿入するためのスニペットが必要です。たとえば、date
と入力すると、ISO形式の現在の日付が自動的に展開されます。
EventListener
クラスのon_query_completions
メソッドを経由してのpython APIでこれを行うには崇高テキスト内施設があります。実装は非常に単純な存在のようになります。
def on_query_completions(self, view, prefix, locations):
if prefix == 'date':
val = datetime.now().strftime('%Y-%m-%d')
return [(prefix, prefix, val)] if val else []
私はUser Defined Snippets上のドキュメントを読みましたが、1つがユーザーのみが埋めていること、タブストップと変数との事前定義されたテキストを挿入できることが表示されます
。スニペットAPIで公開されている機能ではこれが不可能な場合は、低レベルのプラグイン/拡張APIを使用して同様の機能を実装できますか?
私は、既存の拡張子がInsert Date and Timeであることを認識していますが、これは動的拡張の代わりにコマンドパレットを介して機能します。
おかげで、。実装に 'CompletionItem'を使用することは、このユースケースではSTほど単純ではありませんが、より柔軟性があります。 –
@ chris-scott、私は同じことを(同じ理由で - 異なるフォーマットのタイムスタンプで)行う方法を探していました。あなたはそれが働いているように聞こえるので、あなたの内線を共有したり、VSコードマーケットプレイスに置いたりしてください。 :) – Dullroar
@Dullroar、はい私は予定しています。私はdevモードの外でそれをテストしていないので、まだ公開していませんが、あなたは見てみることができるようにgithubにアップロードします。 –