Satu cuplikan yasnippet untuk beberapa mode


13

Saya memiliki cuplikan berikut:

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

dan saya ingin itu tersedia untuk keduanya latex-modedan org-mode. Bagaimana ini bisa dicapai? Saya dapat terhubung, tetapi saya mencoba mencari cara yang lebih cerdas.


1
c-mode dan c ++ - mode yang keduanya berbagi potongan dari cc-mode, Anda dapat memeriksa bagaimana mereka melakukannya. Seharusnya ada file ".yas-parents".
— bmag

Jawaban:


18

The dokumentasi Yasnippet menjelaskan bahwa Anda akan perlu untuk memasukkan sebuah .yas-parentsfile dengan mode orang tua:

Sangat berguna untuk memiliki mode tertentu berbagi cuplikan di antara mereka. Untuk melakukan ini, pilih subdirektori mode dan letakkan .yas-parentsdaftar nama mode lain yang dipisahkan spasi-putih. Ketika Anda memuat kembali mode-mode tersebut menjadi orang tua dari mode asli.

.
|-- 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

Karenanya, Anda dapat, misalnya, meletakkan cuplikan Anda di text-modedirektori, dan kemudian, di latex-modedan org-modedirektori, menyertakan .yas-parentsfile yang menyertakan teks text-mode.


1
Namun, jika saya mengerti dengan baik, Anda hanya dapat berbagi seluruh mode, tetapi bukan snipet individual di beberapa mode?
— Picaud Vincent
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.