Github'のAtom Codeエディターのパッケージを開発する方法
Atom Editor Extension Guide:独自のSyntax Highlighterパッケージを作成して公開する
Atomエディターは強力ですが、特定の言語の構文強調表示など、デフォルトで提供されていない機能が必要になる場合があります。現時点では、カスタムパッケージを作成することが特に重要です。この記事では、パッケージを強調表示する構文を作成し、Atomコミュニティに公開するように導きます。
コアポイント:
-
特にデフォルトで欠落している機能については、カスタムパッケージを作成することにより、Atomエディターの機能を拡張します。
- ディレクトリにフォルダーを作成し、新しいパッケージを初期化するために有効な
- ファイルを追加します。
.atom/packages
package.json
構文の強調表示の場合、 -
grammars
関数を使用してAtomでパッケージをテストして、変更をすぐに表示し、機能が機能していることを確認します。 - githubにパブリックリポジトリを設定し、
View/Reload
コマンドを使用してパッケージをAtomコミュニティに公開して、他の開発者に利益をもたらします。 -
apm publish
何を構築しますか?
この記事では、必要なあらゆる言語に適用できるに似た構文ハイライターを作成するように導きます。新しいパッケージの初期化、構文の強調表示ルールを作成する方法、およびAtomコミュニティにパッケージを公開する方法を学びます。
language-scilab
新しい原子パッケージを初期化
ATOMは、と呼ばれる構成ファイルフォルダーを使用して、個人オプションとインストールされたパッケージを保存します。パッケージは、このフォルダーの
サブフォルダーにあり、各パッケージには独自のフォルダーがあります。
.atom
packages
最初のステップは、などのパッケージフォルダーを作成することです(これは、言語サポートを追加するための命名規則です)。次に、そのフォルダーに
language-mylanguage
package.json
以下は、パッケージの
language-mylanguage
キーフィールドの説明:package.json
-
"name"
:パッケージ名。 -
"version"
:主要なバージョン、マイナー、改訂版のコンベンションに続くバージョン番号。0.0.0
- :パッケージの説明。
"description"
- :原子最小バージョン要件。
"engines"
- :パッケージ依存関係。
"dependencies"
- :パッケージのgithubリポジトリアドレス(リリース前に空にすることができます)。
"repository"
- :問題を報告するアドレス。
"bugs"
- :ライセンス。
"license"
ファイルを作成した後、Atomはパッケージを認識できます。 package.json
コマンドを使用して、Atomを強制的にパッケージにリロードさせて、変更がすぐに表示されるようにすることができます。 View/Reload
Syntax Highlighterパッケージを作成します
パッケージフォルダーにaサブフォルダーを作成し、言語名にちなんで名付けられたCSONファイルを作成します(たとえば、grammars
)。このファイルには、構文の強調表示ルールが含まれています。 mylanguage.cson
文法ルールを定義する前に、あなたの言語を認識する方法をAtomに伝える必要があります:
{ "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
:Atomエディターの下部に表示される言語名。 -
name
:言語で使用されるファイル拡張子配列。 -
fileTypes
文法ルール
すべてのルールは
配列で宣言する必要があります。各ルールは:patterns
に囲まれています。
{}
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2']
属性を使用して構文要素を一致させます:
match
'scopeName': 'source.mylanguage' 'name': 'Mylanguage' 'fileTypes': ['ext1', 'ext2'] 'patterns': [ { # 规则1 }, { # 规则2 } ]
match
複数の要素を一致させますname
一致する関数宣言など、
captures
と
{ 'match': '\b(([0-9]+\.?[0-9]*)|(\.[0-9]+))\b' 'name': 'constant.numeric.mylanguage' }
単一の引用文字列の一致など、begin
およびend
プロパティを使用して、開始タグとエンドタグを一致させます:
begin
およびend
を使用して、開始タグとエンドタグをキャプチャすることもでき、
{ 'match': '\b(function)\s+(\w+)\s*\(.*\)' 'captures': { '1': { 'name': 'keyword.control.mylanguage' }, '2': { 'name': 'entity.name.function.mylanguage' } }, 'name': 'meta.function.mylanguage' }
beginCaptures
アトムパッケージをリリースendCaptures
patterns
ファイルで更新します。
コマンドを使用して、それぞれマイナーバージョン、メジャーバージョン、およびパッチバージョンを更新します)をパッケージ(それぞれ、package.json
、および
apm publish minor
minor
major
apm unpublish name-of-the-package
コマンドを使用して、リリースパッケージをキャンセルします。
結論
この記事では、Atom Syntaxの強調表示パッケージを作成および公開する方法について説明します。 Atomの柔軟性により、さまざまな種類のパッケージを作成できますが、この記事は構文強調表示パッケージの作成に限定されています。 この記事がAtomエディターの機能を拡大し、結果をコミュニティと共有するのに役立つことを願っています。
FAQ(FAQ)(元のテキストのFAQパーツはここで省略されています。この部分の内容は上記から非常に反復的であるため、上記のコンテンツの要約と説明です。冗長性を回避するために、繰り返し出力は実行されませんこちら。)
以上がGithub'のAtom Codeエディターのパッケージを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











このパイロットプログラム、CNCF(クラウドネイティブコンピューティングファンデーション)、アンペアコンピューティング、Equinix Metal、およびActuatedのコラボレーションであるCNCF GithubプロジェクトのARM64 CI/CDが合理化されます。 このイニシアチブは、セキュリティの懸念とパフォーマンスリムに対処します

このチュートリアルは、AWSサービスを使用してサーバーレスイメージ処理パイプラインを構築することをガイドします。 APIゲートウェイ、Lambda関数、S3バケット、およびDynamoDBと対話するECS Fargateクラスターに展開されたnext.jsフロントエンドを作成します。 th

これらのトップ開発者ニュースレターを使用して、最新のハイテクトレンドについてお知らせください! このキュレーションされたリストは、AI愛好家からベテランのバックエンドやフロントエンド開発者まで、すべての人に何かを提供します。 お気に入りを選択し、Relを検索する時間を節約してください
