Codice in linea in modalità organizzazione


103

Markdown consente embedded code. Come si può fare questo org-mode?

Conosco i blocchi del codice sorgente:

#+begin_example
blah-blah
#+end_example

Ma quello che voglio è qualcosa del genere (ovviamente, con la sintassi giusta, che non conosco):

This is `embeded code`.

Può essere fatto org-mode? Non è possibile trovarlo nella documentazione ...


stava per fare una domanda simile. grazie: D
alamin

In markdown possiamo creare un blocco di codice racchiudendo righe di codice in due righe di `` `` ``, che è abbastanza pulito IMO. C'è un modo pulito per farlo in modalità org? Non voglio vedere +BEGIN_SRC...ogni volta.
Studente

Risposte:


119

Puoi racchiudere il testo all'interno =o i ~segni per farlo comporre in caratteri a spaziatura fissa ed esportarlo alla lettera (il che significa che non viene elaborato per la sintassi specifica dell'organizzazione):

This is =verbatim text= or ~code~.

Troverai tutte le informazioni sugli elementi di markup in modalità organizzazione nella sezione pertinente del manuale .


3
Grazie. Avere le parole chiave significa essere a metà strada. Se avessi saputo che la modalità org parla di questo in termini di monospacee emphasislo avrei trovato io stesso. :( Stavo cercando inlinee embedded, inutilmente.
blueFast

Sì, ricordo di essere stato disturbato anch'io dal termine "enfasi", quando cercavo una caratteristica che permettesse di nascondere il markup dell'organizzazione. Una volta che conosci la terminologia, la trovi immediatamente org-hide-emphasis-markers, ma ho cercato per anni prima di trovarla finalmente quasi per caso ...
François Févotte

5
in realtà il manuale dice solo ~ codice ~ cioè circondato da ~.
calamari il

1
Questa risposta fa solo sembrare il codice a spaziatura fissa, in realtà non gli conferisce le proprietà eseguibili di un BEGIN_SRCblocco reale . La risposta di @ Tom di seguito è migliore se lo desideri.
Ken Williams

Ho trovato ~ brutto. C'è una soluzione alternativa per usare invece l'accento grave?
Ivan Huang

128

Mentre il monospazio è abbastanza buono per la maggior parte dei casi, i blocchi di codice inline hanno la forma src_LANG[headers]{your code}. Ad esempio src_xml[:exports code]{<tag>text</tag>},.

Modifica: l' evidenziazione del codice del codice inline è certamente possibile, anche se con la patch org.el stessa: la risposta fornita qui https://stackoverflow.com/a/20652913/594138 funziona come pubblicizzato, girando

- Inline code src_sh[:exports code]{echo -e "test"}

In

inserisci qui la descrizione dell'immagine

in html-export. E la risposta vincente in questo post, https://stackoverflow.com/a/28059832/594138 , ottiene lo stesso risultato senza la necessità di patchare org.el, ma dovrai adattarlo se non ti piacciono le ottiche durante la modifica.


3
Questa è la migliore risposta qui, penso. La parte rilevante del manuale è 14.1 Struttura dei blocchi di codice .
Arne Babenhauserheide

E il manuale dice cose come "i blocchi di codice live richiedono ..." Cosa significa "live" qui? Inoltre, vorrei che i documenti contenessero più esempi invece di concentrarsi principalmente sulle definizioni formali della sintassi (ma questo non è un problema solo con la modalità org; è più o meno un problema generale secondo me).
Fernando Basso

I blocchi di codice live possono essere valutati in modalità organizzazione (o durante l'esportazione) e i loro risultati vengono inseriti nel file. Lo uso per i diagrammi UML con plant-uml e talvolta con blocchi di codice Clojure.

2
Bello, ma non possiamo ancora ottenere l'evidenziazione della sintassi in questo modo, vero? E trovo strano che [:exports code]sia richiesto, perché i documenti su orgmode.org/manual/exports.html#exports dicono che è l'impostazione predefinita. (Ma senza di esso, ad esempio, non viene esportato nulla quando esporto il contenuto dell'organizzazione in markdown.)
Supernormal

Non lo considero un "codice inline", ma piuttosto un "blocco di codice". Ad esempio, penso al codice inline come un nome di file, una breve stringa di codice (<1 riga), solitamente incorporata in un altro testo.
James
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.