Atom Editor Extension Guide: Erstellen und veröffentlichen Sie Ihr eigenes Syntax Highlighter -Paket
Atom Editor ist leistungsstark, aber manchmal benötigen Sie möglicherweise einige Funktionen, die standardmäßig nicht bereitgestellt werden, z. B. das Hervorheben der Syntax für eine bestimmte Sprache. Zu diesem Zeitpunkt ist es besonders wichtig, benutzerdefinierte Pakete zu erstellen. In diesem Artikel werden Sie dazu veranlasst, ein Syntax -Hervorhebungspaket zu erstellen und es an die Atom -Community zu veröffentlichen.
Kernpunkte:
.atom/packages
und fügen Sie eine gültige package.json
Datei hinzu, um das neue Paket zu initialisieren. grammars
Unterordner, definieren Sie Sprachregeln in einer CSON -Datei und geben Sie an, wie Atom die Sprachsyntax erkennt und hervorhebt. View/Reload
, um Änderungen sofort anzuzeigen und sicherzustellen, dass die Funktionalität funktioniert. apm publish
, um Ihr Paket an die Atom -Community zu veröffentlichen, um anderen Entwicklern zugute kommen. Was werden wir bauen?
Dieser Artikel führt Sie zum Erstellen eines Syntax -Highlighters, der language-scilab
ähnelt, den Sie auf jede Sprache anwenden können, die Sie benötigen. Wir lernen, wie Sie ein neues Paket initialisieren, Regeln für Syntax -Hervorhebungen schreiben und Ihr Paket an die Atom -Community veröffentlichen.
Initialisieren Sie das neue Atom -Paket
Atom verwendet einen Konfigurationsdateiordner mit dem Namen .atom
, um persönliche Optionen und installierte Pakete zu speichern. Die Pakete befinden sich im Unterordner dieses Ordners packages
und jedes Paket verfügt über einen eigenen Ordner.
Der erste Schritt besteht darin, Ihren Paketordner wie language-mylanguage
zu erstellen (dies ist eine Namenskonvention, um Sprachunterstützung hinzuzufügen). Erstellen Sie dann die package.json
-Datei in diesem Ordner, und Atom kann sie erkennen und laden.
Folgendes ist ein Beispiel für die language-mylanguage
-Datei eines package.json
-Pakets:
{ "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" }
Keyfield Erläuterung:
"name"
: Packungsname. "version"
: Versionsnummer folgt der Konvention für Major-, Moll- und überarbeitete Versionen. 0.0.0
"description"
"engines"
"dependencies"
"repository"
"bugs"
"license"
kann Atom Ihr Paket erkennen. Sie können den Befehl package.json
verwenden, um das Atom zum Nachladen des Pakets zu zwingen, so dass Änderungen sofort sichtbar sind. View/Reload
Erstellen Sie ein Syntax Highlighter -Paket
Erstellen Sie einen Unterordner im Paketordner und erstellen Sie eine CSON -Datei, die nach dem Sprachnamen benannt ist (z. B. grammars
). Diese Datei enthält Syntax -hervorgehobene Regeln. 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
-Array deklariert werden. Jede Regel ist in patterns
: {}
beigefügt
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2']
wie übereinstimmende Zahlen: match
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2'] 'patterns': [ { # 规则1 }, { # 规则2 } ]
Verwenden Sie reguläre Ausdrücke, match
Geben Sie den Namen der Stilklassen an und befolgen Sie bestimmte Namenskonventionen, damit das Thema den Stil korrekt anwenden kann. name
, z. B. der Übereinstimmungsfunktionserklärung: captures
{ 'match': '\b(([0-9]+\.?[0-9]*)|(\.[0-9]+))\b' 'name': 'constant.numeric.mylanguage' }
begin
und end
übereinstimmen die Start- und End -Tags mit den Eigenschaften begin
und end
, wie z.
{ 'match': '\b(function)\s+(\w+)\s*\(.*\)' 'captures': { '1': { 'name': 'keyword.control.mylanguage' }, '2': { 'name': 'entity.name.function.mylanguage' } }, 'name': 'meta.function.mylanguage' }
und beginCaptures
verwenden, um die Start- und End-Tags zu erfassen, und die endCaptures
-attribute übereinstimmen Subelemente innerhalb des Matching-Elements. patterns
ATOM -Paket veröffentlichen
Bitte überprüfen Sie, ob das Paket mit demselben Namen bereits vor der Veröffentlichung vorhanden ist. Sie benötigen ein öffentliches Github -Repository. Aktualisieren Sie die Repository -Adresse in der Datei. package.json
, um das Paket zu veröffentlichen (apm publish minor
, minor
bzw. major
aktualisieren Sie die Minor -Version, die Hauptversion und die Patch -Version). In diesem Befehl registriert Ihr Paketname, fügen Sie die Versionsnummer hinzu, erstellen Sie Git -Tags und drücken Sie Änderungen. patch
Verwenden Sie den Befehl apm unpublish name-of-the-package
, um das Release -Paket abzubrechen.
Schlussfolgerung
In diesem Artikel wird beschrieben, wie Sie Atom -Syntax -Highlighting -Pakete erstellen und veröffentlichen. Die Flexibilität von Atom ermöglicht die Erstellung verschiedener Arten von Paketen, aber dieser Artikel beschränkt sich auf die Erstellung von Syntax -hervorgehobenen Paketen. Ich hoffe, dieser Artikel hilft Ihnen, die Funktionalität des Atom -Editors zu erweitern und Ihre Ergebnisse mit der Community zu teilen.
FAQs (FAQs)
(Der FAQS -Teil im Originaltext wird hier weggelassen, da der Inhalt dieses Teils von der obigen sehr wiederholt ist, was eine Zusammenfassung und Erklärung des oben genannten Inhalts ist. Um Redundanz zu vermeiden, wird wiederholte Ausgabe nicht durchgeführt hier.)
Das obige ist der detaillierte Inhalt vonSo entwickeln Sie ein Paket für den Atom -Code -Editor von Github.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!