Plugin Emmet resmi untuk Sublime Text.
Peringatan: plugin ini mungkin tidak berfungsi sama sekali di beberapa OS karena ditulis dalam JavaScript dan menggunakan biner PyV8 dan Google V8 untuk dijalankan. Jika Anda mengalami masalah atau editor crash, silakan isi isunya.
Dengan Kontrol Paket:
Emmet
.Secara manual:
PERINGATAN : Ketika plugin diinstal, secara otomatis akan mengunduh biner PyV8 yang diperlukan sehingga Anda harus menunggu sebentar (lihat Memuat pesan biner PyV8 di bilah status). Jika Anda mengalami masalah dengan pemuat PyV8 otomatis, coba instal secara manual.
Tindakan Penambahan/Penurunan Angka:
Anda dapat dengan mudah memperluas Emmet dengan tindakan dan filter baru atau menyesuaikan tindakan dan filter yang sudah ada. Di Emmet.sublime-settings
, tentukan pengaturan extensions_path
dan Emmet akan memuat semua file .js
dan .json
di folder tertentu saat startup.
Nilai default extensions_path
adalah ~/emmet
, yang menunjuk ke folder emmet di dalam folder beranda pengguna OS Anda.
Selain itu, Anda dapat membuat bagian yang diberi nama sebagai file ekstensi (mis. snippets
, preferences
, syntaxProfiles
) di dalam file Emmet.sublime-settings
pengguna dan menulis penyesuaian Anda di sana. Lihat file pengaturan asli untuk contohnya.
Sublime Text adalah editor teks hebat dengan banyak fitur dan tindakan. Sebagian besar tindakan ini terikat pada pintasan keyboard sehingga hampir tidak mungkin menyediakan pintasan plugin yang nyaman untuk plugin pihak ketiga.
Jika Anda tidak puas dengan keymap default, Anda dapat menonaktifkan pintasan keyboard individual dengan preferensi disabled_keymap_actions
dari file Emmet.sublime-settings
.
Gunakan daftar nama tindakan yang dipisahkan koma yang pintasan keyboard defaultnya harus dinonaktifkan. Misalnya, jika Anda ingin melepaskan pintasan Ctrl+E (“Perluas Singkatan”) dan Ctrl+U (“Perbarui Ukuran Gambar”), Anda harus menetapkan nilai berikut:
"disabled_keymap_actions": "expand_abbreviation, update_image_size"
Anda harus merujuk file Default (Your-OS-Name).sublime-keymap
untuk mendapatkan id tindakan (cari args/action
).
Untuk menonaktifkan semua pintasan default, tetapkan nilai ke all
:
"disabled_keymap_actions": "all"
Bukan berarti jika Anda menonaktifkan tindakan seperti itu dan membuat pintasan keyboard sendiri, Anda tidak boleh menggunakan konteks emmet_action_enabled.ACTION_NAME
karena ini adalah kunci yang menonaktifkan tindakan.
Emmet memperluas singkatan dalam sintaksis terbatas saja: HTML, CSS, LESS, SCSS, Stylus, dan PostCSS. Alasan untuk membatasi pengendali Tab ke daftar sintaksis terbatas adalah karena ia merusak cuplikan Sublime Text asli.
Jika Anda ingin menyingkat dengan Tab dalam sintaksis lain (misalnya, JSX, HAML, dll.), Anda harus mengubah pengaturan pintasan keyboard Anda: tambahkan perintah expand_abbreviation_by_tab
untuk kunci tab
untuk pemilih cakupan sintaksis yang diperlukan. Untuk mendapatkan pemilih cakupan sintaksis saat ini, tekan ⇧⌃P (OSX) atau Ctrl+Alt+Shift+P , ini akan ditampilkan di bilah status editor.
Buka Preferences
> Key Bindings — User
dan masukkan cuplikan JSON berikut dengan pemilih cakupan yang dikonfigurasi dengan benar, bukan token SCOPE_SELECTOR
:
{
"keys" : [ "tab" ] ,
"command" : "expand_abbreviation_by_tab" ,
// put comma-separated syntax selectors for which
// you want to expandEmmet abbreviations into "operand" key
// instead of SCOPE_SELECTOR.
// Examples: source.js, text.html - source
"context" : [
{
"operand" : "SCOPE_SELECTOR" ,
"operator" : "equal" ,
"match_all" : true ,
"key" : "selector"
} ,
// run only if there's no selected text
{
"match_all" : true ,
"key" : "selection_empty"
} ,
// don't work if there are active tabstops
{
"operator" : "equal" ,
"operand" : false ,
"match_all" : true ,
"key" : "has_next_field"
} ,
// don't work if completion popup is visible and you
// want to insert completion with Tab. If you want to
// expand Emmet with Tab even if popup is visible --
// remove this section
{
"operand" : false ,
"operator" : "equal" ,
"match_all" : true ,
"key" : "auto_complete_visible"
} ,
{
"match_all" : true ,
"key" : "is_abbreviation"
}
]
}
Plugin Emmet memungkinkan Anda memperluas singkatan dengan tombol Tab , seperti cuplikan biasa. Di sisi lain, karena sifatnya yang dinamis dan sintaksis yang ekstensif, terkadang Anda mungkin mendapatkan hasil yang tidak diharapkan. Bagian ini menjelaskan cara kerja pengendali Tab dan cara menyempurnakannya.
Secara default, pengendali Tab bekerja dalam lingkup sintaksis terbatas: HTML, XML, HAML, CSS, SASS/SCSS, LESS, PostCSS dan string dalam bahasa pemrograman (seperti JavaScript, Python, Ruby, dll.). Artinya:
line
yang menghasilkan keluaran sebagai satu baris. Untuk menyempurnakan pengendali tombol Tab, Anda dapat menggunakan pengaturan berikut di file Emmet.sublime-settings
pengguna:
disable_tab_abbreviations_for_scopes
— daftar cakupan sintaksis yang dipisahkan koma tempat pengendali kunci Tab harus dinonaktifkan. Misalnya, jika Anda ingin menonaktifkan handler di dalam string bahasa pemrograman dan sintaks HAML, pengaturan Anda akan terlihat seperti ini: "disable_tab_abbreviations_for_scopes" : " text.haml, string "
disabled_single_snippet_for_scopes
— daftar cakupan sintaksis yang dipisahkan koma tempat pengendali Tab harus dinonaktifkan saat memperluas satu singkatan. Saat ini, ST tidak menyediakan API untuk mendapatkan daftar cuplikan asli. Jadi, misalnya, jika Anda mencoba memperluas singkatan php
, singkatan tersebut akan diteruskan ke Emmet yang menghasilkan
alih-alih blok PHP seperti yang didefinisikan dalam cuplikan ST asli. Sebagai solusinya, jika Anda mencoba memperluas satu singkatan di dalam cakupan yang ditentukan dalam pengaturan disabled_single_snippet_for_scopes
Emmet akan mencari namanya di dalam katalog cuplikannya terlebih dahulu, di dalam pengaturan known_html_tags
kedua dan jika tidak ditemukan, maka memungkinkan ST untuk menanganinya dan perluas singkatan asli, jika cocok.known_html_tags
— daftar semua tag HTML dikenal yang dipisahkan spasi yang digunakan untuk pencarian seperti dijelaskan di atas. Jika Anda tidak puas dengan perilaku pengendali tab Emmet, Anda dapat menonaktifkannya: cukup tambahkan "disable_tab_abbreviations": true
ke dalam file Preferences.sublime-settings
pengguna.
Jika alur kerja Anda sudah menyertakan tugas otomatis untuk awalan vendor CSS (seperti Autoprefixer), Anda dapat menonaktifkan penyisipan awalan vendor otomatis Emmet dengan menambahkan opsi ini ke file Emmet.sublime-settings
pengguna Anda:
{
"preferences" : {
"css.autoInsertVendorPrefixes" : false
}
}