Vorrei delineare alcuni pseudocodici e poi condividerli con altre persone che non useranno emacs.
C'è un bel modo per farlo? Sto provando a farlo in modalità org, ma non è un rientro corretto, ecc ...
Vorrei delineare alcuni pseudocodici e poi condividerli con altre persone che non useranno emacs.
C'è un bel modo per farlo? Sto provando a farlo in modalità org, ma non è un rientro corretto, ecc ...
Risposte:
Non conosco una modalità pseudo-codice, tanto meno supporto per quella in modalità org.
Puoi, tuttavia, scrivere pseudo-codice in #+BEGIN_EXAMPLE
blocchi, sicuramente senza indentazione, oppure puoi decidere per un vero linguaggio come sintassi di base e pseudo-codice in questo e ottenere indentazione e bella evidenziazione della sintassi. Ruby potrebbe essere un buon candidato, o un buon vecchio C / C ++, forse Java ...
Ecco come potrebbe apparire:
#+HEADER: :exports both :results output
#+BEGIN_SRC ruby
class Pseudoclass
def pseudofunction(items)
add five to each item
end
end
pseudoinstance = new Pseudoclass instance
call pseudofunction of pseudoinstance with list 2, 3, 4
#+END_SRC
Nel caso in cui accetti di condividere il tuo pseudocodice in formato LaTeX o PDF, potresti utilizzare il pacchetto minted
per mescolare il teletipo e l'espressione ben rientrata con l'espressione matematica LaTeX. Ecco un esempio del noto algoritmo di Prim:
#+begin_export latex
\begin{minted}[escapeinside=||,mathescape=true]{text}
Prim's Algorithm(|$V, s$|)
|$T = \varnothing$|
|$U = \{ s \}$|
while (|$U \neq V$|)
let |$(u, v)$| be the lowest cost edge in the cut |$(U, V-U)$|
|$T = T \cup \{(u, v)\}$|
|$U = U \cup \{v\}$|
\end{minted}
#+end_export
Se vuoi solo condividere questo snippet di pseudocodice, devi solo selezionare questo blocco e chiamare org-latex-export-as-latex
o in org-latex-export-to-pdf
base al formato che desideri esportare (potresti voler modificare leggermente le opzioni della modalità org per avere un layout soddisfacente). Per scrivere facilmente lo pseudocodice, puoi ovviamente cambiare il minted
separatore di espressioni matematiche e usare il yasnippet
blocco personalizzato in lattice per sbarazzarti di quel gruppo di opzioni.