【HTML】Emmet使い方メモ

お久しぶりの更新です。seconです。


最近HTMLページを作る機会が増えました、主に学校の授業ですけど。

HTMLページ作る際にいちいち雛形を書くのがめんどくさいなーと感じていたのですが、「そういえば雛形を一瞬で作れるプラグインとかあった気がする!」などと急に思い出したので、そのプラグインの使い方をメモっておきます。

使用するエディタは sublime text 2 です。

今回参考にしたページは次の通りです。

  • Emmetを始めるのに、とりあえずこれだけ覚えておけば大丈夫 | WEB EGG

  • 【便利ツール】Emmetで、ちょっと気持ちいいコーディング with sublime text 2・上巻 | Developers.IO



  • 導入

    今回導入するのは「Emmet」というプラグインです。
    いつも通り Sublime text でコマンドパレットを開いて、"Emmet"で調べると一番上に出てくるのでインストール。
    Sublime text はパッケージのインストールが簡単でいいですね。

    Emmetとは

    そもそもEmmetとはどのようなプラグインなのでしょうか。
    簡単に言えば、「HTMLやCSSの記述をものすごく早くする」ためのプラグインです。
    Emmetのコードを入力後、ショートカットキー([Ctrl] + [E])を押すと、
    カーソル以前のEmmetコードが展開されるようになっています。

    使用例

    便利だー、とはいっても文だけじゃ伝わらないと思います。
    百聞は一見にしかず、というわけで実際にやってみましょう。

    雛形

    1行目に "!" とだけ打ってみましょう。
    http://puu.sh/cawN6/9149a6fe74.png

    そして[Ctrl] + [E]。
    http://puu.sh/cawP9/5fa1882d07.png

    すごー!
    これだけでとても便利だということが分かると思います。
    ただ、「lang="en"」となっている点に注意してください。

    デフォルト値を変えたい場合は、メニュータブから
    「Preferences -> Package Settings -> Emmet -> Settings - User」でファイルを開き、
    次の文を記述して保存すればOKです。

    {
    	"snippets": {
    		"variables": {
    			"lang": "ja",
    			"locale": "ja-JP",
    			"charset": "UTF-8",
    			"indentation": "\t",
    			"newline": "\n"
    		}
    	}
    }


    スタイルシートへのリンク

    "link" とだけ打って
    http://puu.sh/cawYr/c66f635608.png

    [Ctrl]+[E]。
    http://puu.sh/cax64/19cc582dd4.png


    クラス

    クラスは ".クラス名" で作れます。
    http://puu.sh/caxyl/9b4c362b95.png


    ID

    IDをつける場合は "#ID名" 。
    http://puu.sh/cay6I/147af9e16c.png


    入れ子構造

    リストなど、入れ子構造を作る際は ">" で区切っていきます。
    http://puu.sh/caxKs/2c9f554fc3.png
    "*数字" で指定した回数分繰り返すこともできます。

    連番

    "$" を使います。
    http://puu.sh/cazSZ/7bb2d29ac6.png
    "[属性値=値]" によって属性値と値の設定も可能です。


    慣れれば記述速度が段違いになりそうなので、徐々に使いこなしていきたいですね。
    CSS編は、また別の記事にまとめられたら良いなと思います。

    2014.11.12追記

    同一インデント内で複数タグ

    .one+.two
    
    <div class="one"></div>
    <div class="two"></div>
    

    テーブル雛形

    table+
    
    <table>
    	<tr>
    		<td></td>
    	</tr>
    </table>