의사 코드를 작성하는 좋은 방법이 있습니까?


11

의사 코드를 스케치 한 다음 emacs를 사용하지 않는 다른 사람들과 공유하고 싶습니다.

좋은 방법이 있습니까? 나는 org-mode에서 그것을하려고 노력하고 있지만 제대로 들여 쓰기가되지 않습니다 ...


누군가 의사 코드 모드를 작성 했지만이 글을 쓰는 동안 구문 강조 표시 만 제공하고 들여 쓰기는 제공하지 않습니다.
dsedivec

답변:


4

의사 코드 모드를 모르므로 org-mode에서 지원하지 않습니다.

그러나 #+BEGIN_EXAMPLE들여 쓰기없이 의사 코드를 블록 단위 로 작성 하거나 기본 언어 및 의사 코드로 실제 언어를 결정하고 들여 쓰기와 구문 강조를 얻을 수 있습니다. 루비는 좋은 후보이거나 오래된 C / C ++, 아마도 Java 일 것입니다.

이것은 다음과 같이 보일 수 있습니다 :

#+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

LaTeX 또는 PDF 형식으로 의사 코드 공유를 수락하는 경우 패키지 minted를 사용하여 텔레타이프 및 잘 들여 쓰기 된 표현식을 LaTeX 수학 표현식과 혼합 할 수 있습니다 . 다음은 잘 알려진 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

그것은 렌더링됩니다 여기에 이미지 설명을 입력하십시오

당신 만이 의사 코드 스 니펫 (snippet)을 공유하려는 경우, 당신은이 블록과 통화를 선택해야 org-latex-export-as-latex하거나 org-latex-export-to-pdf내보낼 어떤 형식에 따라 (당신은 약간 만족 레이아웃을 위해 조직 모드 옵션을 수정 할 수 있습니다). 의사 코드를 쉽게 작성하기 위해 minted수학 표현식 구분 기호를 변경하고 yasnippet라텍스 맞춤 블록을 사용 하여 옵션을 제거 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.