C'è un bel modo di scrivere pseudocodici?


11

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 ...


Qualcuno ha scritto una modalità pseudocodice , ma al momento della stesura offre solo l'evidenziazione della sintassi, nessun rientro.
dsedivec,

Risposte:


4

Non conosco una modalità pseudo-codice, tanto meno supporto per quella in modalità org.

Puoi, tuttavia, scrivere pseudo-codice in #+BEGIN_EXAMPLEblocchi, 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

0

Nel caso in cui accetti di condividere il tuo pseudocodice in formato LaTeX o PDF, potresti utilizzare il pacchetto mintedper 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

che è reso come inserisci qui la descrizione dell'immagine

Se vuoi solo condividere questo snippet di pseudocodice, devi solo selezionare questo blocco e chiamare org-latex-export-as-latexo in org-latex-export-to-pdfbase 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 mintedseparatore di espressioni matematiche e usare il yasnippetblocco personalizzato in lattice per sbarazzarti di quel gruppo di opzioni.

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.