Panduan Extension Editor Atom: Buat dan Terbitkan Pakej Sintaks Sintaks Anda Sendiri
editor atom berkuasa, tetapi kadang -kadang anda mungkin memerlukan beberapa ciri yang tidak disediakan secara lalai, seperti sintaks yang menonjol untuk bahasa tertentu. Pada masa ini, sangat penting untuk membuat pakej tersuai. Artikel ini akan membimbing anda untuk membuat pakej penonjolan sintaks dan menerbitkannya kepada komuniti atom.
mata teras:
.atom/packages
yang sah untuk memulakan pakej baru. package.json
grammars
View/Reload
apm publish
Apa yang akan kita bina?
Artikel ini akan membimbing anda untuk membuat penyerlah sintaks yang serupa dengan yang anda boleh memohon kepada mana -mana bahasa yang anda perlukan. Kami akan belajar bagaimana untuk memulakan pakej baru, menulis peraturan penonjolan sintaks, dan bagaimana untuk menerbitkan pakej anda kepada komuniti atom. language-scilab
Inisialisasi pakej atom baru
Atom menggunakan folder fail konfigurasi yang dipanggil untuk menyimpan pilihan peribadi dan pakej yang dipasang. Pakej terletak di subfolder .atom
folder ini, dan setiap pakej mempunyai folder sendiri. packages
Langkah pertama adalah untuk membuat folder pakej anda, seperti
dalam folder itu, dan atom dapat mengenali dan memuatkannya. language-mylanguage
package.json
Berikut adalah contoh fail pakej
language-mylanguage
package.json
Keyfield Penjelasan:
"name"
: nama pakej. "version"
: Nombor versi, mengikuti konvensyen untuk versi utama, kecil, dan disemak semula. 0.0.0
"description"
"engines"
"dependencies"
"repository"
"bugs"
"license"
, Atom dapat mengenali pakej anda. Anda boleh menggunakan perintah package.json
untuk memaksa Atom untuk memuatkan semula pakej supaya perubahan dapat dilihat dengan segera. View/Reload
Buat pakej penyegar sintaks
Buat subfolder dalam folder pakej dan buat fail CSON yang dinamakan selepas nama bahasa (contohnya grammars
). Fail ini mengandungi peraturan penonjolan sintaks. mylanguage.cson
{ "name": "language-mylanguage", "version": "0.0.0", "description": "Mylanguage language support in Atom", "engines": { "atom": "*" }, "dependencies": {}, "repository": { "type": "git", "url": "https://github.com/JeremyHeleine/language-mylanguage.git" }, "bugs": { "url": "https://github.com/JeremyHeleine/language-mylanguage/issues" }, "license": "MIT" }
scopeName
name
fileTypes
, setiap peraturan disertakan dalam patterns
: {}
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2']
, seperti nombor yang sepadan: match
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2'] 'patterns': [ { # 规则1 }, { # 规则2 } ]
Gunakan ungkapan biasa, match
Tentukan nama kelas gaya, dan ikuti konvensyen penamaan tertentu supaya tema dapat menggunakan gaya dengan betul. name
, seperti pengisytiharan fungsi yang sepadan: captures
{ 'match': '\b(([0-9]+\.?[0-9]*)|(\.[0-9]+))\b' 'name': 'constant.numeric.mylanguage' }
begin
dan end
Padankan tag permulaan dan akhir menggunakan sifat begin
dan end
, seperti rentetan quote tunggal yang sepadan:
{ 'match': '\b(function)\s+(\w+)\s*\(.*\)' 'captures': { '1': { 'name': 'keyword.control.mylanguage' }, '2': { 'name': 'entity.name.function.mylanguage' } }, 'name': 'meta.function.mylanguage' }
anda juga boleh menggunakan beginCaptures
dan endCaptures
untuk menangkap tag permulaan dan akhir, dan atribut patterns
sepadan dengan elemen sub-elemen di dalam elemen yang sepadan.
pelepasan pakej atom
Sila periksa sama ada pakej dengan nama yang sama sudah ada sebelum menerbitkannya. Anda memerlukan repositori GitHub awam. Kemas kini alamat repositori dalam fail package.json
.
Gunakan perintah apm publish minor
untuk menerbitkan pakej (minor
, major
, dan patch
masing -masing mengemas kini versi kecil, versi utama dan versi patch masing -masing). Perintah ini akan mendaftarkan nama pakej anda, tambahkan nombor versi, buat tag git dan tolak perubahan.
Gunakan perintah apm unpublish name-of-the-package
untuk membatalkan pakej pelepasan.
Kesimpulan
Artikel ini menerangkan cara membuat dan menerbitkan pakej sintaks atom atom. Fleksibiliti Atom membolehkan penciptaan pelbagai jenis pakej, tetapi artikel ini terhad kepada penciptaan pakej sintaks yang diserlahkan. Semoga artikel ini membantu anda mengembangkan fungsi editor atom dan berkongsi hasil anda dengan komuniti.
FAQs (FAQs)
(bahagian Soalan Lazim dalam teks asal ditinggalkan di sini, kerana kandungan bahagian ini sangat berulang dari di atas, yang merupakan ringkasan dan penjelasan kandungan di atas. Untuk mengelakkan kelebihan, output berulang tidak dilakukan di sini.)
Atas ialah kandungan terperinci Cara Membangunkan Pakej Untuk Editor Kod Atom GitHub '. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!