2012-11-24 8 views
6

나는 내 C++과 C 코드를 문서화하기 위해 noweb을 사용하고 있습니다. PDF 파일 내의 코드의 일부가 조금 떨어져서 (직조 pdflatex 사용 후 발생)noweb과 LaTeX로 C 또는 C++ 코드 문서하기

  • >> 적절한 개폐 guillemets에 << 턴;
  • --은 ndash로 바뀝니다.

내 직조 명령은 다음과 같습니다

noweave -latex -delay -x foo.nw > foo.tex 

편집 : 그래서 아마 prettyprinter를 사용해야합니다. 사용할 수있는 것들은 너무 많이 할 수 있습니다. 내가 살펴보고 똑 바른 해결책을 찾으면 그것을 나눌 것입니다.

+4

+1. –

답변

1

sed를 스크립트로 구현 noweave에 대한 필터, 직물 명령은 다음과 같습니다 즉 C, 감소 작동 및 운영자를 이동하는 것이

#!/bin/sed -f 
/^@begin code/ , /^@end code/ { 
/^@text/ { 
s/--/-\ 
@literal {}\ 
@text -/g 
s/>>/>\ 
@literal {}\ 
@text >/g 
s/<</<\ 
@literal {}\ 
@text </g 
} 
} 

참고 :

noweave -x -delay -latex -filter c2nwtex foo.nw > foo.tex 

그리고 c2nwtex이있다. C++ 11에서는 이제 꺽쇠 괄호가있는 템플릿 선언 사이에 공백없이 선언 할 수 있습니다. 두 번째보다 긴 > 시퀀스를 분할하려면 >>에 대체 명령을 두 번 실행해야합니다.