Ketika saya menyisipkan blok kode C di dalam file mode-org, sorotan sintaks dan lekukan kode sumber disesuaikan seperti yang saya inginkan.
Ketika saya mengekspornya ke file html, sorotan sintaks dalam file html persis sama dengan di Emacs. Tetapi highlight sintaks berfungsi lebih baik dengan tema warna Emacs saya. Misalnya,
{
simbolnya putih di blok kode C saya, tetapi tema warna saya gelap, jika saya mengekspornya ke html, latar belakang file html juga putih, artinya, Anda tidak dapat melihat{
di blok kode sumber dari diekspor html bahkan mengira itu ada.Lekukan kode sumber normal di Emacs saya (seperti yang saya sesuaikan), tetapi lekukan kode sumber dalam file html yang diekspor akan berbeda, ia menambahkan lebih banyak ruang untuk lekukan.
Jika saya mengekspor file org yang sama
emacs -q
, itu normal dalam file html yang diekspor, tetapi highlight sintaks dan lekukan kode sumber akan menjadidefault
konfigurasi Emacs. Jadi itu berarti konfigurasi font-facesinit.el
akan mempengaruhiorg-export
.
Jadi pertanyaan saya adalah: ketika saya mengekspor file mode-org yang berisi blok kode sumber ke file html (atau mungkin format lain seperti PDF juga), apakah mungkin untuk menyingkirkan semua konfigurasi font-face saya sendiri tentang kode sumber dan lakukan seperti pada emacs -q
?
Perbarui :
Masalah kedua diselesaikan dengan mengatur (setq org-src-preserve-indentation t)
apakah init file atau dengan menjalankannya melalui M-:
( eval-expression
).
Pembaruan2 :
Masalah pertama diselesaikan dengan Menyetel latar belakang blok <code> yang diekspor org menurut tema .
Masalah ketiga tidak penting jika masalah 1 dan 2 diselesaikan.
sumber
emacs -q
gaya default sajacustom/theme.css
?emacs_default_theme.css
org-html-fontify-code
sehingga menetapkan tema default sebelum fontifikasi dan kemudian mengembalikan tema sebelumnya.no-theme-inherit
argumen ke # + BEGIN_SRC, mis.#+BEGIN_SRC haskell no-theme-inherit .. #+END_SRC
Yang baru saja menggunakan informasi fontifikasi standar emacs untuk kode, dalam hal ini Haskell.Saya menemukan solusi / solusi sederhana untuk masalah warna. Sebelum mengekspor, ketikkan
M-x customize-themes
dan nyalakanleuven
tema. Ini adalah tema dengan latar belakang terang yang tampaknya cocok untuk mencetak kode pada kertas putih. Setelah mengekspor, matikan tema lagi, dan Anda akan kembali dengan warna asli Anda.Entah bagaimana saya berasumsi bahwa saya harus menemukan cara rumit untuk mengalihkan konfigurasi untuk mengekspor, jadi saya merasa lega karena ini sederhana!
Jika Anda sering melakukan ini, ada baiknya menyarankan fungsi ekspor HTML untuk melakukan ini secara otomatis:
sumber