Kiedy wstawiam blok kodu C do pliku trybu org, podświetlanie składni i wcięcia kodu źródłowego są dostosowywane tak, jak chciałem.
Kiedy eksportuję go do pliku HTML, podświetlanie składni w pliku HTML jest dokładnie takie samo jak w Emacsie. Ale podświetlanie składni działa lepiej z motywem kolorystycznym mojego Emacsa. Na przykład
{
symbol jest biały w moim bloku kodu C, ale motyw kolorystyczny jest ciemny, jeśli wyeksportuję go do HTML, tło pliku HTML również będzie białe, co oznacza, że nie widać{
w bloku kodu źródłowego wyeksportowany HTML nawet myślałem, że tam jest.Wcięcie kodu źródłowego jest normalne w moim Emacsie (jak go dostosowałem), ale wcięcie kodu źródłowego w eksportowanym pliku HTML będzie inne, dodaje więcej miejsca na wcięcie.
Jeśli wyeksportuję ten sam plik org
emacs -q
, są one normalne w eksportowanym pliku HTML, ale podświetleniem składni i wcięciem kodu źródłowego będziedefault
konfiguracja Emacsa. Oznacza to, żeinit.el
wpłynie to na konfiguracje czcionekorg-export
.
Więc moje pytanie brzmi: kiedy eksportuję plik trybu org, który zawiera blok kodu źródłowego do pliku HTML (a może także inne formaty, takie jak PDF), czy mogę pozbyć się całej mojej konfiguracji czcionek o kod źródłowy i zrobić to tak jak w emacs -q
?
Aktualizacja :
Drugi problem można rozwiązać, ustawiając go (setq org-src-preserve-indentation t)
w pliku init lub uruchamiając go poprzez M-:
( eval-expression
).
Aktualizacja 2 :
Pierwszy problem rozwiązuje ustawienie tła bloków <code> eksportowanych przez org zgodnie z motywem .
Trzeci problem nie jest ważny, jeśli pierwszy i drugi problem zostaną rozwiązane.
źródło
emacs -q
stylu zamiastcustom/theme.css
?emacs_default_theme.css
org-html-fontify-code
tak aby ustawiał domyślny motyw przed czcionką, a następnie przywracał wcześniejszy motyw.no-theme-inherit
argument do # + BEGIN_SRC, np. Który#+BEGIN_SRC haskell no-theme-inherit .. #+END_SRC
użył domyślnej informacji o czcionce emacsa dla kodu, w tym przypadku Haskell.Znalazłem proste rozwiązanie / obejście problemu dotyczącego koloru. Przed eksportowaniem wpisz
M-x customize-themes
i włączleuven
motyw. Jest to motyw z jasnym tłem, który wydaje się odpowiedni do drukowania kodu na białym papierze. Po wyeksportowaniu wyłącz ponownie motyw, a wrócisz z oryginalnymi kolorami.W jakiś sposób założyłem, że będę musiał wymyślić jakiś skomplikowany sposób przełączania konfiguracji eksportu, więc odczuwam ulgę, że było to takie proste!
Jeśli robisz to często, warto doradzić funkcji eksportu HTML, aby zrobiła to automatycznie:
źródło