複数のモード用の1つのyasnippetスニペット


13

私は次のスニペットを持っています:

# -*- mode: snippet -*-
# contributor: Song Qiang <tsiangsung@gmail.com>
# key: m
# group: Math
# name: Inline math \( ... \)
# --
\\($1\\)$0

そして私はそれが両方のために利用できるようにしたいlatex-modeorg-mode。どうすればこれを達成できますか?シンボリックリンクはできましたが、よりスマートな方法を見つけようとしています。


1
c-modeとc ++-modeは両方ともcc-modeのスニペットを共有します。どのように実行されるかを確認できます。「.yas-parents」ファイルが必要です。
bmag

yankpadを試すことができます、試してみる価値があります!github.com/Kungsgeten/yankpad youtube.com/watch?v=xkkyE7d0Bpc&feature=youtu.be
ラグルー

回答:


18

Yasnippetドキュメントは、あなたがインクルードする必要がありますことを説明し.yas-parents、親モードでファイルを:

特定のモードでスニペットを共有することは非常に便利です。これを行うには、モードサブディレクトリを選択し.yas-parents、空白で区切られた他のモード名のリストを含むを配置します。これらのモードをリロードすると、元のモードの親になります。

.
|-- c-mode
|   |-- .yas-parents    # contains "cc-mode text-mode"
|   `-- printf
|-- cc-mode
|   |-- for
|   `-- while
|-- java-mode
|   |-- .yas-parents    # contains "cc-mode text-mode"
|   `-- println
`-- text-mode
    |-- email
    `-- time

したがって、たとえば、スニペットをtext-modeディレクトリに配置してから、latex-modeおよびorg-modeディレクトリ.yas-parentsに、テキストを含むファイルを含めることができますtext-mode


1
ただし、よく理解している場合はモード全体のみを共有できますが、複数のモード間で個々のスニペットを共有することはできませんか?
ピコーヴィンセント
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.