我正在研究一些自動生成的電子郵件,這些電子郵件通常包含代碼片段。我想使用Google's prettify項目來語法突出顯示代碼片段。如何運行Google的美化來生成靜態HTML(w/CSS)輸出?
如何在發送電子郵件之前在服務器上調用prettify
,以便用戶在其郵件查看器(Outlook)中禁用javascript時仍能看到突出顯示的語法。我想我需要某種瀏覽器模擬器,因爲prettify
正在操縱瀏覽器DOM。
我正在研究一些自動生成的電子郵件,這些電子郵件通常包含代碼片段。我想使用Google's prettify項目來語法突出顯示代碼片段。如何運行Google的美化來生成靜態HTML(w/CSS)輸出?
如何在發送電子郵件之前在服務器上調用prettify
,以便用戶在其郵件查看器(Outlook)中禁用javascript時仍能看到突出顯示的語法。我想我需要某種瀏覽器模擬器,因爲prettify
正在操縱瀏覽器DOM。
使用Rhino或Google v8解釋器在服務器上運行普通JavaScript是可能的,但這意味着您必須掃描電子郵件,查找所有代碼塊,編寫特殊調用以便進行美化,以便返回格式化的代碼,而不是在DOM上取代它......不太實際,再加上你必須通過shell訪問服務器才能讓v8進入。 如果你感興趣的是,看這裏: Running V8 Javascript Engine Standalone
現在,另一種方法是使用了許多服務器端熒光筆樣的HyperLight之一(http://code.google.com/p/hyperlight/)或Pygments來做(http://pygments.org/)
最後,你必須在電子郵件中包含上述任何方法使用的主題中的所有CSS,這不會太麻煩,但會增加電子郵件的大小,即使所有突出顯示的內容都是例如,一個變量名。