2013-06-05 10 views
12

W org-mode, chcę dać kod inline z równa znaki i cudzysłowy:Org-Mode Code Inline z równymi Znaki

<div class="foo"> 

Sposób I zwykle to zrobić w org-mode jest

=<div class="foo">= 

Kiedy eksport do HTML to, że pobiera renderowane tak:

<div class "foo"> =

Jaki jest właściwy sposób wykonywania tego w linii (a nie tylko tworzenia bloku źródłowego)?

Odpowiedz

5

Można używać dosłownych znaczniki, ~ zamiast:

~<div class="foo">~ 
+2

Tak właśnie zrobiłem, ale wygląda na to, że jeśli to, co określam, to kod, powinienem móc zaznaczyć, że to kod! – alexplanation

+0

Zgodnie z [to] (http://orgmode.org/manual/Emphasis-and-monospace.html) '~' jest znacznikiem kodu. Czy to zmienili? – Guildenstern

3

Problemem jest to, że znak równości po „klasa” jest interpretowany jako separator sekcji kodu zamykania. Można tego uniknąć poprzez wstawienie spacji przed znakiem równości, tak:

=<div class = "foo">= 
+2

To frustrująco skuteczne obejście problemu. Nie zaakceptuję tego, ponieważ jeśli przestrzenie byłyby rzeczywiście ważne w kodzie, nie byłoby to już skuteczne, więc nie jest to tak naprawdę "rozwiązanie". – alexplanation

+0

Myślę, że możesz to zrobić, modyfikując komponenty regexp-org-emphasis, ale jestem zbyt leniwy, by spróbować. Zobacz http://orgmode.org/manual/Emphasis-and-monospace.html i "C-h v org-emphasis-regexp-components RET" – Ista

0

Chciałem kod org-mode za źródłowego do stawienia się poprawnie w parsera GitHub za. Ale tak jak =:echo "hello"= nie pojawiłby się poprawnie w Emacs, również nie pojawił się poprawnie w Github. Próbowałem jednak innych znaków z C-x 8 RET i LEFT DOUBLE QUOTATION MARK i RIGHT DOUBLE QUOTATION MARK pracy. Oznacza to, że

=:echo “hello“= 

pojawiają się powodzeniem jako

:echo “hello“ 

Niestety, nie sądzę, będą one rzeczywiście działa, jeśli kopiuj i wklejony do wszystkich środowiskach. Vim daje E15: Invalid expression: “hello“. Ale jak często wklejamy polecenia do linii poleceń Vima. No dobrze, jest :@".

Powiązane problemy