Emmet: HTMLを略語に倉換する

䜜成日 2012幎10月13日  Â·  25コメント  Â·  ゜ヌス: emmetio/emmet

HTMLブロックを解析しお匏に倉換するコンバヌタヌを䜜成したすカりンタヌ-「ExpandAbbreviation」。

この問題を支持したいですか それに賞金を投皿しおください Bountysourceを介しお

Enhancement

最も参考になるコメント

䜜成者にメヌルを送信したしたが、リク゚ストに賛成するために、ここに再投皿しおいたす。


こんにちは、

たず第䞀に、あなたの玠晎らしい仕事に感謝したす、あなたは玠晎らしい仕事をしたした、私は本圓に結果に感心したす。

私があなたのプログラムに぀いお持っおいた考え

「逆コヌディング」を行うこずは可胜ですか

぀たり、

<div id="container">
    <div class="header"></div>
    <div class="body">
        <div class="title">Title</div>
        <div class="text">Text</div>
    </div>
    <div class="footer"></div>
</div>

に倉換したす

container> .header + .body> .title {Title} +。text {Text} ^。footer

??

どうしお たず第䞀に、2番目のコヌドを操䜜しおから、通垞のコヌドに戻す方が簡単です。 そしお、ほずんどの堎合、クラむアント偎のJavaScriptを䜿甚するこずも、可胜であれば、ボランティアがサヌバヌ偎のコヌドを䜿甚しお、emmetコヌドのhtmlペヌゞに盎接曞き蟌むこずもできたす。

圱響を考えおください。

たあ、それはただの考えです:)

再床、感謝したす、

楜しむ、
ダニス、
アテネ、ギリシャ、ペヌロッパ、䞖界。


だから、それは、アむデアを賛成したす+1そしおそれが行われるのを芋るこずを望んでいたす:)

党おのコメント25件

䜜成者にメヌルを送信したしたが、リク゚ストに賛成するために、ここに再投皿しおいたす。


こんにちは、

たず第䞀に、あなたの玠晎らしい仕事に感謝したす、あなたは玠晎らしい仕事をしたした、私は本圓に結果に感心したす。

私があなたのプログラムに぀いお持っおいた考え

「逆コヌディング」を行うこずは可胜ですか

぀たり、

<div id="container">
    <div class="header"></div>
    <div class="body">
        <div class="title">Title</div>
        <div class="text">Text</div>
    </div>
    <div class="footer"></div>
</div>

に倉換したす

container> .header + .body> .title {Title} +。text {Text} ^。footer

??

どうしお たず第䞀に、2番目のコヌドを操䜜しおから、通垞のコヌドに戻す方が簡単です。 そしお、ほずんどの堎合、クラむアント偎のJavaScriptを䜿甚するこずも、可胜であれば、ボランティアがサヌバヌ偎のコヌドを䜿甚しお、emmetコヌドのhtmlペヌゞに盎接曞き蟌むこずもできたす。

圱響を考えおください。

たあ、それはただの考えです:)

再床、感謝したす、

楜しむ、
ダニス、
アテネ、ギリシャ、ペヌロッパ、䞖界。


だから、それは、アむデアを賛成したす+1そしおそれが行われるのを芋るこずを望んでいたす:)

私の賛成祚を持っおください ペヌゞをHTMLでコヌディングし、それをemmetに倉換しおから、動的にHTMLに展開されるemmetコヌドを含むphpコヌドを蚘述できるず想像しおみおください。

hand私のドラむブ-2セントで

@ icb931023最初に、あなたが蚀ったこずはクヌルに聞こえるず思いたしたが、実際には、どのようなメリットがありたすか PHPは、HTMLを確実に衚す短い文字列を凊理する必芁がありたすが、その堎合はさらに倚くの䜜業を行う必芁がありたす。

すべおのタグが生成されるので、タむプミスたずえば、終了タグのスラッシュの欠萜などに぀いおはそれほど心配する必芁はないず思いたすが、私が想定しおいる拡匵HTMLで䜜業しおいたす簡朔な構文なので、それがそれに察する匷力な議論であるかどうかもわかりたせん。 あるいは、簡朔な/折りたたたれた構文で完党に機胜しないず仮定するのは間違っおいるかもしれたせん。

これが欲しいです。 説埗力のあるナヌスケヌスを芋るこずができたせん。 たずえば、CSSの前凊理ほど明らかに有益ではありたせん。

ブラりザ/テンプレヌト゚ンゞンがEmmet構文を理解しおいれば、話は別です。 それは面癜いでしょう

うヌん、それを翻蚳するためのJSラむブラリを䜜成するのは非垞に興味がありたす;

これがクラむアントの芳点からのスタヌトです。 ゚メットの口ひげ。 お気軜に投皿しおください。

@vabatta :)

曎新はありたすか

これも倧奜きです。 すべおの芁玠を保存するスタむルガむドペヌゞを䜿甚したす。これを管理するために、芁玠を衚すEmmet文字列を䜿甚する巚倧なJSONファむルがあり、ペヌゞに芁玠を吐き出すJavaScriptツヌルを䜜成したした。 しかし、今は、䜕か新しいものが䜜成されるたびにこのファむルを最新の状態に保぀ために、すべおを手動で倉換する必芁がありたす。 HTMLをEmmet文字列に倉換する方法が欲しいです。

_バンプ_

HTMLをemmetに倉換できるようになりたいです。 よく䜿うコヌドブロックのチヌトシヌトを䜜成するのにずおも䟿利です。

倉曎

@Kcko曎新はありたせん。 この機胜は私にずっお最も優先床が䜎いです

それは玠晎らしい機胜になるでしょう。 階局はemmet / zen構文で読みやすく、HTMLフラグメントデザむンを反埩するずきに省略圢に䞀皮のラフドラフトを含めるず圹立぀堎合がありたす。

玠晎らしい機胜になりたす
* n機胜を䜿甚しお耇数のブロックを䜜成し、埌でブロックを倉曎する必芁があるこずを確認したずしたす。 ここで、ブロックを削陀しお、emmetコヌドを曞き盎す必芁がありたす。 戻っお、䞀郚だけを倉曎しおから、それを再床生成させるず、はるかに高速になりたす。

@MarcoWilli Emmetには、既存のコヌドをすばやく倉曎するのに十分なメ゜ッドがありたす。

  • 省略圢でラップ[http://docs.emmet.io/actions/wrap-with-abbreviation/]
  • タグの曎新[http://emmet.io/blog/beta-v1-1/]

たた、繰り返される芁玠に異なるコンテンツが含たれおいる堎合「埌で倉曎する」ず説明したように、逆の省略圢の文字列は、コヌドの生成に䜿甚したものず同じではないこずにも泚意しおください。

私から賛成祚を投じたす。 ゚メットは初めおで、それは私のスキルを向䞊させる玠晎らしい方法になるでしょう。

この機胜が本圓に必芁だったのですが、私の堎合は次のずおりです。

私は次のようないく぀かのブロックを受け取りたす
<record class="main1 text"> <field name id="1">1</field> <field name id="2">2</field> <field name id="3">3</field> <field name id="4">4</field> </record>

最初のレコヌドを䜿甚しおより倚くのレコヌドを生成したいので、今床は省略圢を再珟しおレコヌドの省略圢を取埗し、 (record...)*10ように入力したす。

ありがずう

@chermed ...たたは、コヌドスニペットをコピヌしお貌り付けるこずもできたす。 提䟛したコヌドは非垞に単玔ですが、非垞にたれなナヌスケヌスであるこずに泚意しおください。 ほずんどの堎合、 record>field[name=name1]{text1}+field[name=name2]{text2}+field[name=name3]{text3}+...略語のようなものになりたすが、これはあたり圹に立ちたせん。

テンプレヌトからのHtml文字列ずデヌタ付きのJSONオブゞェクトをレンダリングし、レンダリングされたhtml文字列でPOSTリク゚ストに応答するマむクロサヌビスがありたす。 HTTP応答で巚倧なHTML文字列を送信する必芁があるず、アプリケヌションフロヌのボトルネックが発生したす。

このレンダリングされたHTMLを取埗しお、代わりに応答ずしお送信されるEmmetの省略圢に倉換する方法がある堎合、応答デヌタのサむズにかかるバむト数が少なくなるため、ボトルネックが解消されたす。 応答を受信するマむクロサヌビスは、クラむアント偎をレンダリングするための略語をemmet-expandするこずができたす。

@kizzlebotは実行可胜なナヌスケヌスのようですが、次のこずを考慮する必芁がありたす。

  • 巚倧なHTMLをEmmetに倉換するこずもボトルネックになる可胜性がありたすが、この堎合はCPU偎にありたす
  • 出力gzipは問題を解決したすか
  • クラむアント偎でEmmetを展開するず、レンダリングに特別なランタむムが必芁になりたす。 したがっお、独自のテンプレヌトずJSONデヌタをクラむアントに盎接送信し、独自のランタむムを䜿甚しおレンダリングできるため、マむクロサヌビスはたったく必芁ないようです。

@kizzlebotなぜApacheAvroではないのですか

@sergecheより具䜓的に蚀うず、「render」は䜿甚する単語が間違っおいる可胜性がありたす。 htmlを䜿甚しお、htmlペむロヌドのみを受信しお​​PDFに倉換するマむクロサヌビスを介しおPDFドキュメントを䜜成したす。 したがっお、htmlからEmmetの略語に移行できる堎合、emmetの略語を受け取るクラむアントは、珟圚のEmmetnpmモゞュヌルを䜿甚しお単玔に展開できるはずです。 HTMLはクラむアント偎でレンダリングされないため、レンダリングにランタむムは必芁ありたせん。 ワむダヌ䞊を通過するために必芁なのはコンパクトなペむロヌドだけです。

サンプルサむトを構築し、それらをemmetスニペットに倉換しお、プレれンテヌションの入力を高速化したいず思いたすそしおそれはプロセスデモemmetです。

おそらくHyperscript / JSXずASTを䜿甚しお可胜です。

これには倚くの可胜性がありたす。
先日、私はJadeやHAMLのようなHTMLフレヌムワヌクをいじっおいたしたが、それらは䞍明瞭なHTML構文の優れた代替品だず思いたした。 しかし、远加のむンストヌルず倉換が必芁だったため、プロゞェクトに参加できたせんでした。 私はい぀もほが同じくらい良かったEmmetを䜿甚したしたそれは少しだけサポヌトし、むンストヌルを必芁ずしたせん。
しかし、今日、サむトテンプレヌトを䜜成しおいるずきに、Emmetでの曞き蟌み䞭にむンデントを䜿甚するこずにし、次のこずを思い぀きたした。

.navbar>
  .logo+
  ul.menu_v>
    li.menu_itm*2+
    li.menu_item.dropd
  ^
  ul.menu_v>
    li.item_dd

これは、HTMLよりもはるかに読みやすくなっおいたす。
そしおそれを芋お、゚メットがむンデントをサポヌトしおいたら玠晎らしいず思いたした。
その埌、Emmetをむンデント付きのHTMLに倉換する倉換ツヌルがあるずしたらどうでしょうか。 そうすれば、HTMLを䜿っお曞いたり読んだりするのがずっず楜しくなりたす。
぀たり、XMLでJSONが発生したした。
HTMLが次に進む時が来たした...

Webコンポヌネント、ハむパヌスクリプト、JSX、パグのこずですか たあ、これはずおも読みやすいものではありたせん。

Emmetは䞻に、PhpStormプロゞェクトなどで、ラピッドプロトタむピングずコマンド補完/スキャフォヌルディングに䜿甚されたす。 したがっお、Emmet構文は通垞、どのプロゞェクトにも保存されず、最終的なhtmlのみに保存されたす。

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡