Zen Codingがうまく動かない問題の対処

472 views
Skip to first unread message

Toru Yoshikawa

unread,
Apr 2, 2012, 3:17:21 PM4/2/12
to sublime-text-ja...@googlegroups.com
Sublimatorの皆さん

吉川です。

自分の環境では、"div>ul"のような文字列でZen Codingの変換が
失敗していたので、ちょっと調べてみました。

結論としては、「HTML5」のPackageが原因だったようです。
削除したらうまく動きました。Zen Codingを入れていれば
HTML5のスニペットは特に必要ないので問題ないでしょう。

詳しい挙動としては、以下の通り。

・tab変換は、Sublime Textのデフォルトの機能を使っている。
・tab変換は、ctrl+spaceで出てくる変換候補の一番上を自動的に選択して変換する。
・変換候補の優先順位は、マニュアルを見る限りでは変更できない。
http://readthedocs.org/docs/sublime-text-unofficial-documentation/en/latest/reference/completions.html

では、Zen Codingは、どうやってtab変換を実現しているか?
ソースを読んだところ。。。

他のHTML変換候補をすべて削除しているwww
具体的には、TagCompletionsとHtmlCompletionsというやつ。

というわけで、「HTML5」のPackageを入れるとデフォルト以外の
HTML5変換候補が出てきてしまうので、そちらが変換されてしまうというものでした。

・おまけ

Zen Codingのショートカットは、設定ファイルを直接見るのは辛いので、
以下のポストに一覧が載ってたので参考にしてください。

http://www.sublimetext.com/forum/viewtopic.php?f=2&t=2633


以上

--
Toru Yoshikawa
mail: pikotea[at]gmail.com
twitter: yoshikawa_t
blog: http://d.hatena.ne.jp/pikotea/

Toru Yoshikawa

unread,
Apr 3, 2012, 5:24:42 AM4/3/12
to sublime-text-ja...@googlegroups.com
吉川です。

ついでに、zen codingのhtml:5の変換結果が間違えているので、
修正した点もあげておきます。

[Packages]/ZenCoding/zencoding/zen_settings.py

このファイルの最初のほうに設定がありますが、561行目に
HTML5の変換結果も定義されています。

html要素のlang属性は言語コードを指定する項目ですが、
デフォルトでは、localeを指定していたので、次のように
langを使用するように書き換えています。

'html:5': '<!DOCTYPE html>\n' +
'<html lang="${lang}">\n' +
'<head>\n' +
' <meta charset="${charset}">\n' +
' <title></title>\n' +
'</head>\n' +
'<body>\n\t${child}|\n</body>\n' +
'</html>'

ついでに宗教上の理由から、DOCTYPE HTMLも
DOCTYPE htmlに直しておきました。


2012年4月3日4:17 Toru Yoshikawa <pik...@gmail.com>:

Shunnosuke Shimizu

unread,
Apr 3, 2012, 7:59:02 AM4/3/12
to sublime-text-ja...@googlegroups.com
吉川さん

詳細なレポートありがとうございます!

なるほど…確かに言われてみればzen codingあればHTML5のスニペットはいらないですよね。
なぜうまく動かなかったのかわかってすっきりです。

早速試してみたいと思います〜。

ちなみにDOCTYPE html派です。

清水

2012年4月3日18:24 Toru Yoshikawa <pik...@gmail.com>:

Sadaaki HIRAI

unread,
Apr 3, 2012, 9:16:23 AM4/3/12
to sublime-text-ja...@googlegroups.com
ひらいです。

Zen-Coding の html:5 の locale と lang の間違いは
一年前位にissueに登録したのですが、そのままになってます。

登録したときにtwitterでちょっとだけやりとりして
pull requestしてくれよって言われてたのですが、僕も放置しちゃってて
さっき送ってみました。いつか取り込まれることを祈りつつ…。
# Sublimeが関係ない話題ですみません。

Enjoy Zen-Coding!

2012年4月3日18:24 Toru Yoshikawa <pik...@gmail.com>:

--
name => Sadaaki HIRAI
mail => j740...@gmail.com
blog => http://d.hatena.ne.jp/j7400157
twitter => http://twitter.com/sada_h

Reply all
Reply to author
Forward
0 new messages