line numbers
을 knitr
과 함께 사용하는 함수가 있는지 궁금합니다. .Rnw
입니다. this discussion 및이 문서 (here 및 here)를 찾았지만 줄 번호를 입력하는 방법을 찾지 못했습니다. 어떤 도움을 주시면 감사하겠습니다. 감사합니다knitr을 사용한 R 코드의 행 번호 입력
답변
이 솔루션은 LaTeX 목록 패키지를 사용하여 줄 번호를 만듭니다. 나는 모든 코드 덩어리에 누적하여 작업하도록 만 할 수 있지만, 각 덩이 내에서만 행을 열거하는 유사한 솔루션이 있다고 상상한다. 이것의
\documentclass{article}
\usepackage{listings}
\begin{document}
<<setup, echo=FALSE>>=
knit_hooks$set(source = function(x, options) {
paste("\\begin{lstlisting}[numbers=left, firstnumber=last]\n", x,
"\\end{lstlisting}\n", sep = "")
})
@
<<a, results='hold'>>=
1:2
3:4
5:6
@
<<b>>=
"test1"
"test2"
"test3"
@
\end{document}
핵심 부품 which is basically copied from here, 소스 후크에있는 다음은 .Rnw 소스입니다. firstnumber=last
은 목록 전체에 줄 번호를 누적하도록 목록에 지시합니다. 그것 없이는, knitr가 그것의 자신의 명부 작성에있는 각 부호 선을두고 있기 때문에 모든 선에는 1가 열거된다. 다음
knit_hooks$set(reset = function(before, options, envir){
if(before){
return("\\setcounter{lstnumber}{1}")
}
})
과에 reset=TRUE
를 사용 : 각 코드 블록 1에서 번호 매기기 시작하려면 카운터를 재설정 후크를 추가
:
그리고 여기가 결과입니다 원하는 각 청크에서 후크를 활성화하십시오.
<<a, results='hold', reset=TRUE>>=
1:2
3:4
@
(+1) : 이것은 훌륭한 @ 토마스입니다. 라인 번호가 각 R 청크 내에서 바뀌면 좋을 것입니다. – MYaseen208
@ 스페이스 맨 편집을 주셔서 감사합니다. – Thomas
이 작동합니다. 하지만 원래 '니트로'처럼 코드 (글꼴) 색상을 얻지 못하고 있습니다. 그것을위한 어떤 해결책. – MYaseen208
larify, PDF 출력에 줄 번호가 필요하십니까? 또는 .Rnw 파일에서? – CephBirk
예, PDF 출력에 줄 번호가 필요합니다. – MYaseen208
그리고 문서의 모든 줄마다 또는 청크 출력의 줄 번호 만 표시 할 수 있을까요? – CephBirk