


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:
- Erweitern Sie die Funktionalität des ATOM -Editors, indem Sie benutzerdefinierte Pakete erstellen, insbesondere für Funktionen, die standardmäßig fehlen.
- Erstellen Sie einen Ordner im Verzeichnis
.atom/packages
und fügen Sie eine gültigepackage.json
Datei hinzu, um das neue Paket zu initialisieren. - Erstellen Sie für die Syntax -Hervorhebung einen
grammars
Unterordner, definieren Sie Sprachregeln in einer CSON -Datei und geben Sie an, wie Atom die Sprachsyntax erkennt und hervorhebt. - Testen Sie Ihr Paket im Atom mit der Funktion
View/Reload
, um Änderungen sofort anzuzeigen und sicherzustellen, dass die Funktionalität funktioniert. - Richten Sie ein öffentliches Repository auf GitHub ein und verwenden Sie den Befehl
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
- : Paketbeschreibung.
"description"
- : Atom Mindestversionsanforderungen.
"engines"
- : Paketabhängigkeiten.
"dependencies"
- : Die GitHub -Repository -Adresse des Pakets (kann vor der Veröffentlichung leer werden).
"repository"
- : Adresse, um das Problem zu melden.
"bugs"
- : Lizenz.
"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
Bevor Sie Grammatikregeln definieren, müssen Sie Atom sagen, wie Sie Ihre Sprache erkennen:
{ "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" }
- : Sprachkennung, verwendet für Themen, andere Pakete oder Konfigurationsdateien.
scopeName
- : Der Sprachname, der unten im Atom -Editor angezeigt wird.
name
- : Das von der Sprache verwendete Dateierweiterungs -Array.
fileTypes
Alle Regeln müssen im
-Array deklariert werden. Jede Regel ist in patterns
: {}
beigefügt
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2']Übereinstimmende Syntaxelemente
Übereinstimmende Syntaxelemente mit dem Attribut
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
Übereinstimmen Sie mehrere Elemente mit dem Attribut
, z. B. der Übereinstimmungsfunktionserklärung: captures
{ 'match': '\b(([0-9]+\.?[0-9]*)|(\.[0-9]+))\b' 'name': 'constant.numeric.mylanguage' }Match
mit begin
und end
übereinstimmen
ü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' }Sie können auch
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!

Dieses Tutorial führt Sie durch das Erstellen einer serverlosen Bildverarbeitungspipeline mit AWS -Diensten. Wir werden ein Next.JS -Frontend erstellen, der in einem ECS -Fargate -Cluster eingesetzt wird und mit einem API -Gateway, Lambda -Funktionen, S3 -Eimer und DynamoDB interagiert. Th

Dieses Pilotprogramm, eine Zusammenarbeit zwischen CNCF (Cloud Native Computing Foundation), Ampere Computing, Equinix Metal und betätigten, rationalisiert ARM64 CI/CD für CNCF -Github -Projekte. Die Initiative befasst sich mit Sicherheitsbedenken und Leistung

Dieser GO-basierte Netzwerkanfälligkeitsscanner identifiziert potenzielle Sicherheitsschwächen effizient. Es nutzt die Parallelitätsfunktionen von GO und beinhaltet die Erkennung und Anfälligkeitserkennung. Erforschen wir seine Fähigkeiten und ethisch


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

Dreamweaver Mac
Visuelle Webentwicklungstools

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion