web-dev-qa-db-ja.com

VSCodeでのEJSフォーマット

現在、EJSファイルを使用しているときにコードを自動フォーマットできず、自動インデントが機能しません。右下のファイルタイプをHTMLに変更すると、マークアップが無効であると見なされて壊れます。誰か提案がありますか?

4
Cathal

VSコードで設定を更新してみてください。

設定>拡張機能> Emmet:言語を含める> settings.jsonで編集

それから加えて:

"emmet.includeLanguages": {
      "ejs":"html"
}
2
user710188

HTMLフォーマッターを保持し(または.htmlのような.ejsを使用して)、設定に追加することをお勧めします:"html.format.unformatted": "wbr,%"

その後、インデントは完全には機能しませんが、より良いです...

2
Morphine06

EJSの自動フォーマットを設定する方法を説明するこの記事を見つけました。 <% -code %>の色付けをあきらめなければならず、代わりにプレーンテキストとして表示されるため、完璧にはほど遠いです。また、これらのコードタグを標準タグと見なすため、次のタグをタブで移動しますが、何もないよりはましです。 -> https://www.slightedgecoder.com/2018/01/18/formatting-ejs-file-vs-code-visual-studio-code/

できることの1つは、ドキュメントをEJSまたはHTMLとして表示するために、エディターで前後にスワップすることです。したがって、フォーマットする必要がある場合は、HTMLとフォーマットにジャンプしてから、EJSに戻ります。

2
Individual11

ejsプラグイン をインストールしてみましたか?

押すだけ ctrlp 次のコマンドを入力して、プラグインをインストールします。

ext install ejs-language-support 

その後は元気になるはずです:)

2

このブログに従ってください 、このブログは示唆しています

  1. VSCodeでの「ejs」から「html」へのマッピング
  2. 「ejs」にはデフォルトの「html」VSコードの再フォーマットを使用します

したがって、拡張機能をダウンロードする必要はありません。

0
MiaeKim

他のユーザーと同様に、.ejsファイルにも「html」言語モードを使用します。

言語モードの選択に移動します(vscodeウィンドウの下部バーに言語識別子が表示されます:HTML、Embedded JS、Pythonなど)

これにより、ファイルに使用する他の言語設定を検索するためのウィンドウが表示されます。以下のオプションを選択するか、「HTMLベースの設定を構成する」を選択して、ファイルの関連付けをhtmlに手動で追加します。

    {
        "git.ignoreMissingGitWarning": true,
        "[html]": {},
        "[ejs]": {},
        "files.associations": {
            "*.ejs": "html"
        },
     }

これをJavaScriptフォーマットで表示するコツは次のとおりです。EJSファイルにJavaScriptを囲むタグ付きのコメントを含めると、HTMLフォーマッターでJSフォーマットが完全に表示されるようになりました。例:

/*
<script>
*/
write your javascript code here...
    var srcElem = "<div>something cool goes here</div>"; 
    var id = "";

    function init() {
      //do more javascript stuff here
    }

/*
</script>
*/
0
Jared Day