2017-09-15 163 views
0

我使用的組織模式代碼中的doc,文學編程等組織模式9.1,html代碼塊導出,如何刪除橫線?

隨着近年來組織模式(版本> = 9.1),我已經注意到在導出的HTML頁面的變化:

前:(org-模式版本< 9.1) enter image description here

目前:(org-模式版本> = 9.1) enter image description here

一些水平行已被添加。

問題是,我發現這些額外的行真的很醜,恕我直言,他們使代碼更不可讀。

我的問題:是否可以刪除這些行來獲得像舊的風格?

要重現:

  • 組織模式:

    • 版本< 9.1無水平線
    • 版本> = 9.1用水平線
  • 最小test.org組織模式文件:

#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="http://orgmode.org/worg/style/worg.css"/> 
#+HTML_HEAD: <style type="text/css">body{ max-width:80%; }</style> 

* Some code 
#+BEGIN_SRC cpp :eval never 
template <typename ELEMENT_TYPE, typename DERIVED> 
class Memory_Interface : public StaticInterface_Base<DERIVED> 
{ 
public: 
    using SelfType = Memory_Interface; 
    using StaticInterface_Base<DERIVED>::impl; 

    // ... 
}; 
#+END_SRC 

從emacs的使用通常C-c C-e h o導出HTML頁面

+1

由於您使用的是org網站的樣式,因此您將遇到此問題。最好你可以做的是回到一些網站存檔網站到你喜歡的舊css版本,並在本地複製它。沒有太多可以在組織中「修復」。 – rsm

+0

嗯......等等。你什麼時候第一次看到這些水平線?好....這是肯定的風格,但! org默認包含內聯默認樣式。所以你最終得到的是帶有兩種樣式的html文件 - 其中一個默認內聯在html文件的標題中,第二個由你從org網站動態提供。我在org網站上看不到任何相關的css文件更改。很可能,默認的組織模式風格隨着對新版本的更新而發生了變化,並將這些行包含在內。簡單測試 - 導出,然後從HTML文件中刪除整個STYLE塊,只留下鏈接到組織網站樣式。 – rsm

+0

您可以在組織項目定義中使用':html-head-include-default-style nil'來禁用默認的組織模式樣式。 – rsm

回答

2

尋找源代碼:ox-html.el我發現這個定製的變量:

(defcustom org-html-keep-old-src nil 
    "When non-nil, use <pre class=\"\"> instead of <pre><code class=\"\">." 
    :group 'org-export-html 
    :package-version '(Org . "9.1") 
    :type 'boolean) 

當使用組織模式版本> = 9.1如果你仍然想導出代碼塊像以前一樣(沒有所有這些水平線)的解決方案是自定義此變量,將其設置爲真正

(setq org-html-keep-old-src t)