Dart 用 Emacs モード

前に Dart のインストール方法を紹介しました。 Dart には IDE とも言える Dart Editor があリます。 しかし、"コードの編集はやっぱり Emacs "という人は多いはず。
ということで、今回は Dart ファイルを Emacs で編集するためのモード (dart-mode.el)のインストール方法について説明します。

Dart mode

ダウンロード

以下のサイトに dart-mode.el が公開されています。 ダウンロード方法は以前の記事を参考にして下さい。

インストール

取得した dart-mode.el をパス(load-path)の通ったフォルダーに置いておきます。

~/emacs.d/init.el に設定を記述します。
最小限必要なのは次の記述です。
(add-to-list 'auto-mode-alist '("\\.dart\\'" . dart-mode))
(autoload 'dart-mode "dart-mode" "Major mode for editing Dart files" t)
Dart 用として特に新しくキーが割り当てられているものはありませんが、 C++ や Java と同じ cc-mode を基に作られているので、 だいたい同じ機能が使えます。

コンパイル

エラーメッセージ形式の登録

dart2js のコンパイル時のエラーメッセージは標準的な形式なので、 そのまま M-x compile によるコンパイルができます。

デフォルトコマンドの改良

コンパイル時のコマンドをちょっと改良する方法も紹介します。
以下の記述を init.el に追加して下さい。
(defun dart-mode-init ()
  (make-local-variable 'compile-command)
  (let* ((curfile (file-name-nondirectory (buffer-file-name)))
         (outfile (concat (substring curfile 0 -5) ".js")))
    (setq compile-command (format "dart2js -o%s %s" outfile curfile)))
  ;; (set (make-local-variable 'yel-compile-auto-close) nil)
  )

(add-hook 'dart-mode-hook 'dart-mode-init)
引数にファイルを指定したものがデフォルトになり、値もバッファで独立するようになります。 例えばファイル名が hello.dart の場合、デフォルトは次のコマンドです。
dart2js -ohello.js hello.dart
パスやオプションを変えたい場合は format に渡している文字列を変更して下さい。

出力バッファの自動クローズの停止

以前 コンパイル後に出力バッファを自動的に閉じる方法を記述しました。 しかし、 dart2js が jsx と同様に コンパイルに失敗しても正常終了のステータスを返すので、これが使えません。
利用されている方は、 先ほどの設定コードの dart-mode-init 内のコメントアウトを外して、 自動クローズの機能を OFF にしてください。

関連記事
スポンサーサイト
Prev.    Category    Next 

Facebook コメント


コメント

コメントの投稿

Font & Icon
非公開コメント

このページをシェア
アクセスカウンター
アクセスランキング
[ジャンルランキング]
コンピュータ
35位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
6位
アクセスランキングを見る>>
カレンダー(アーカイブ)
プルダウン 降順 昇順 年別

05月 | 2017年06月 | 07月
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -


はてな新着記事
はてな人気記事
ブロとも申請フォーム
プロフィール

yohshiy

Author:yohshiy
職業プログラマー。
仕事は主に C++ ですが、軽い言語マニアなので、色々使っています。

はてブ:yohshiy のブックマーク
Twitter:@yohshiy

サイト紹介
プログラミング好きのブログです。プログラミング関連の話題や公開ソフトの開発記などを雑多に書いてます。ただ、たまに英語やネット系の話になることも。