2

次のように動作する崇高な text2 のスニペットのような c++ 名前空間を作成する方法を探しています。

「ベクター」、「ポイント」、「マット」を含む「fu」という名前の名前空間があると仮定します。次のタブトリガーを使用してスニペットを作成します。

<tabTrigger>fu::vector</tabTrigger>
<tabTrigger>fu::Point</tabTrigger>
<tabTrigger>fu::Mat</tabTrigger>

ここで「fu」と入力すると、3 つのスニペットすべてを含む選択ボックスが表示されますが (これは完璧です)、「::」と入力するとすぐにすべて消えてしまいます。「fu::vecto」と入力しても、スニペットの選択はありません。ダブルポイントがすべてのスニペットトリガーをエスケープすることは縫い目です。

特定の名前空間のすべての定義を表示する必要がある「::」と入力したときの動作が本当に必要です。

それはどういうわけか可能ですか?よろしくお願いいたします。

4

1 に答える 1

1

Sublime Text 2 は:文字を単語の区切り文字と見なすため、Sublime Text にとって aと入力すること:は、単語を区切るためにスペースを入力することとまったく同じです。したがって、オートコンプリートを遮断します。

:次の行をユーザー設定ファイルに追加することで、スニペット内の s を希望どおりに動作させることができます ( Preferences -> Settings - User. 必要に応じてコンマを修正してください)。

"word_separators": "./\\()\"'-,.;<>~!@#$%^&*|+=[]{}`~?",

これword_separatorsは、デフォルト設定ファイルからの値ですが、:取り出したものです。

Sublime Text が C++ で無視するだけの場合は:、代わりに C++ 設定ファイルに行を追加します ( Open a C++ file -> Preferences -> Settings - More -> Syntax Specific - User)。

于 2013-04-30T16:36:15.787 に答える