【コラム】
テキストエディタのプラグインとして提供され、HTMLやCSSのコーディング効率を飛躍的に向上させてくれる「Zen-Coding」。単体のテキストエディタでなく、統合開発環境でZen-Codingがサポートされているツールとしては「Aptana Studio(以下、Aptana)」がある。AptabnaはWebアプリケーション開発用のEclipseベースの統合開発環境で、HTMLやJavaScriptの利用を手助けするさまざまな機能を備えている。Aptanaはこのサイトで無料で公開されており、スタンドアロンのアプリケーションとしても、Eclipseのプラグインとしてもインストールできる。
Aptana用のZen-Codingプラグインは、公式サイトのダウンロードページにある「Zen Coding for Aptana」がそれだ。このファイルはEclipseのプラグイン形式ではなく、Webアプリケーション・プロジェクトに対するJavaScriptライブラリという形になっている。
したがってこれを利用するには、Aptana上で任意のプロジェクトを作った上で、その直下に「scripts」というフォルダを作成する。そしてこのフォルダに、ダウンロードしたファイルの中身を展開する(図1)。その上でAptanaを再起動すれば、図2のように[Scripts]-[Zen Coding]というメニューが追加されており、エディタ上ではZen-Codingによるコードの展開が利用できるようになっているはずだ。
ところで、Aptana版Zen-Codingによるコード展開のデフォルトのショートカットキーは[Ctrl]+Eだが、Aptanaのような多機能なIDEの場合にはこれは他の機能のショートカットとして設定されている場合がある。その場合はAptana側のキー設定を変えるか、Zen-Codingの設定を変更する必要がある。Aptana版Zen-Codingの設定はscriptsフォルダ以下の各JavaScriptファイルに分かれているが、コード展開のためのショートカットキーが設定されているのはそのうちの「Expand Abbreviation.js」である。このファイルのコメント部にある「Key: M1+E」を変更することで、ショートカットキーの設定を変えられる。
このファイルでは、「M1」「M2」「M3」が、それぞれ「Ctrl」「Shift」「Alt」を表すエイリアスになっている。したがって、たとえばショートカットを[Alt]+Eに変更したい場合には、この1行を次のように書き換える。
* Key: M3+E
コードの展開に関する設定は「zen _settings.js」ファイルにある。このファイルの中身はNotepad++のstart.jsの該当部分と同様のコードなので、まったく同じ感覚でカスタマイズすることができる。
Aptana Studioではなく、通常のEclipseでZen-Codingは使えるだろうか。実はAptana版のZen-Codingは、Aptana本体の機能ではなく、「Eclipse Monkey」というプラグインの機能を利用して実装されている。Eclipse Monkeyは、Eclipseに対してJavaScriptを利用したマクロ機能を追加するためのプラグインである。Eclipse Monkeyそのものの使い方はこの記事に詳しく解説されているので、そちらを参照してもらうといいだろう。
Eclipse Menkeyはアップデートサイト経由でインストールすることができる。Eclipse Monkey本体のほかにMozilla Rhinoも必要なので、両方ともインストールしよう(図3)。
インストール後Eclipseを再起動すると、メニューバーにScriptsメニューが追加されているはずだ。あとはAptanaの場合と同様に、Zen-Codingのスクリプトファイルを追加すればよい。
最近は高機能なテキストエディタやIDEの選択肢が広がっているが、依然としてEmacsを使っているユーザもいることだろう。そこで、EmacsでもZen-Codingが使えたらと考えるのは自然なことだ。実はEmacsにも、Emacs Lispで実装した「ZenCodingモード」が公開されている。ただし利用できるのは一部のコード展開の機能のみであり、しかも筆者の環境では動作しない略語パターンが多かった。しかし、今後への期待も込めてここで紹介しておきたい。
EmacsのZenCodingモードはこのサイトで公開されている。ページ中ほどにあるリンクか、GitHubのリポジトリより「zencoding-mode.el」をダウンロードし、任意の場所に保存する。そして.emacsなどの設定ファイルに、リスト2の設定を追加する。これは「~/emacs/zencoding/」にzencoding-mode.elを配置した場合の例である。
;------ for Zen-Coding mode ----
(add-to-list 'load-path "~/emacs/zencoding/")
(require 'zencoding-mode)
(add-hook 'sgml-mode-hook 'zencoding-mode) ;; Auto-start on any markup modes
(add-hook 'xml-mode-hook 'zencoding-mode)
(add-hook 'html-mode-hook 'zencoding-mode)
コメントを除く上の2行はZenCodingモードを読み込む設定で、下の3行はそれぞれSGMLモード、XMLモード、HTMLモードの場合に、自動的にZenCodingモードを有効にするという設定である。なお、コード展開のためのデフォルトのショートカットキーは『[Ctrl]+[Enter]』となっている。
以前も書いたように、今回紹介した以外にもさまざまなエディタでZen-Codingがサポートされている。まずは自分の使い慣れたエディタに導入して試してみるといいだろう。きっと手放せなくなるのではないかと思う。
| 大阪市大とエコナビスタ、疲労医学研究を元にした「快眠健康ナビ」を製品化 [18:00 5/23] |
| 東大、ほ乳類の成体でも「神経幹細胞」が維持される仕組みを解明 [16:59 5/23] |
| 武蔵野化学研究所、高純度ポリ乳酸の高品質化に成功 [14:21 5/23] |
| 成層圏の「赤道準2年振動」は過去数10年弱まり続けている - JAMSTECなど [14:09 5/23] |
| TI、迅速なモーター回転設定が可能なセンサレスBLDCモータードライバを発表 [14:05 5/23] |
|
おいしいものの「bite(ひと口)」って?【知っているとちょっとカッコいい英語のコネタ】 [09:00 5/24] ライフ |
|
(合コンで) 「ダイエットしてるから、あまり食べられないの」【女性の恋愛心理】 [09:00 5/24] 恋愛・結婚 |
|
競争社会の中でキャリアと幸せを手にする6つの方法 [09:00 5/24] エンタープライズ |
|
宅地建物取引主任者(宅建)の取り方 [09:00 5/24] キャリア |
|
【連載】PowerPointスキルアップ講座 第3回 新しいデザインテンプレートの入手 [09:00 5/24] エンタープライズ |