概要
Atomのパッケージを作りたくなったので、どうやったらいいんだろうか。を調べた。
基礎知識
- パッケージの雛形とやらが作れるらしい
- 主に実装はJavascript
- Chromeの拡張と同じように主要なファイル構成は決まっている
パッケージの雛形を作る
コマンドパレットを表示(Macの場合:cmd-shift-p)してPackage Generator: Generate Packageを実行すると、生成するパッケージのパスの入力(デフォルトでは~/github/my-package)を求められる。
主要なファイル
- package.json: パッケージの説明や依存ライブラリなどを定義
- lib/my-package.js: パッケージのエントリポイント
- keymaps/my-package.json: パッケージのショートカットキーを定義 => 被ったりすると結構厄介
- menus/my-package.json: メニューバーやコンテキストメニュー(右クリックで表示するメニュー)の表示内容を定義
作るための豆知識
- エントリポイントに設定しているメインのスクリプト(lib/my-package.js)にconfigを定義することで、ユーザ設定が有効となる
参考記事
- 10分で学ぶ!Atomパッケージ自作入門
- Atom Documentation > Atom Flight Manual > Chapter 3: Hacking Atom > Package: Word Count
- Atomパッケージを作ってみよう - Technology of DeNA
- 自作のAtomパッケージでユーザー設定を有効にする | 開発 / note.nkmk.me
- Atom Documentation > Essential Classes: Config
- Atom Documentation > Essential Classes: NotificationManager
- Atomのコード読みまくったので、git-grepの結果へジャンプできる拡張を作ってみた
ToDo
- とりあえず簡単なやつ作ってみる
- 任意のline-numberに飛んでみる
- 検索の結果をatomに渡す
- 検索の結果の行ナンバーを渡す
- 検索結果部分を選択して表示させる