Atom の monit 用 syntax highlight Package を作りました。
参考資料
公式ドキュメントはないようなので以下の情報を参考に作りました。
Atom の参考資料
Monit の参考資料
monit の Syntax については公式ドキュメントと
Sublime Text版の monit syntax highlight を参考にしました。
開発手順
Packageのテンプレートを生成する
Atom のコマンドパレットで Generate Babel Plugin
を選択し、任意の名前をつけます。
すると規定の位置にプロジェクトのテンプレートが生成されます。
ファイルの追加
%project%/grammers/monit.cson
を追加します。
package.json
Pluginのメタ情報を設定します。詳しくは下記記事を参照。
css
Syntax highlight の name で指定する css のクラスは 現在利用しているテーマの index.less で確認できます。
私は firewatch-syntax を使っているので下記で確認しました
styles/language.less - SebastianSzturo/firewatch-syntax
grammers を実装する
ひたすら正規表現で文法のハイライト設定を作成します。
'name': 'Monit' 'scopeName': 'source.monit' 'fileTypes': [ 'monitrc' ] 'patterns': [ { 'comment': 'comment' 'begin': '^.*(#.*)' 'beginCaptures': '1': 'name': 'comment' 'end': '\\n' }, { 'comment': 'numeric' 'match': '\\b([0-9]+)\\b' 'name': 'constant.numeric' }, # 中略 { 'comment': 'variable language' 'match': '(?<!\\.)\\b(device|with|times|for|cycles)\\b(?![?!])' 'name': 'variable.interpolation' }, ]
詳細は下記
あとは apm publish でリリースするだけです。
デモ
無事 Syntax highlight が有効になりました。 (あれこれ文法を確認するために適当に書いたファイルなので monit の設定としてはめちゃくちゃな内容です)
インストール
Atom の Package 管理画面で language-monit を選択してインストールできます