3

コード スニペットが含まれていることが多い、自動生成されたメールの見栄えを良くする作業を行っています。Google の prettifyプロジェクトを使用して、コード スニペットの構文を強調表示したいと考えています。

prettify メール ビューアー (Outlook) で JavaScript が無効になっている場合でも、強調表示された構文がユーザーに表示されるように、メールを送信する前にサーバーで呼び出すにはどうすればよいですか。prettifyブラウザのDOMを操作しているので、ある種のブラウザエミュレータが必要だと思っています。

4

1 に答える 1

2

Rhino または Google v8 インタープリターを使用して、サーバー上でプレーンな JavaScript を実行することは可能ですが、それは、メールをスキャンし、すべてのコード ブロックを見つけ、prettify への特別な呼び出しを記述して、代わりにフォーマットされたコードを返す必要があることを意味します。 DOM で置き換える...あまり実用的ではありません。さらに、v8 を実行するには、サーバーにシェル アクセスする必要があります。興味のある方はこちらをご覧ください: Running V8 Javascript Engine Standalone

もう 1 つの方法は、Hyperlight ( http://code.google.com/p/hyperlight/ ) や Pygments ( http://pygments.org/ )などの多くのサーバー側ハイライターの 1 つを使用することです。

最後に、上記のいずれかの方法で使用されるテーマのすべての CSS をメールに含める必要があります。これはそれほど面倒なことではありませんが、メールのサイズが大きくなります。たとえば、highlight は変数名でした。

于 2011-05-24T05:19:23.083 に答える