Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
Latex로 문단 구조를 자동으로 바꿀 수 있나요?
2020.03.25 14:55
저널에 따라 요구하는 형식이 조금씩 다릅니다.
예를 들면 Ophthalmology에서는
abstract, introduction,methods,results,discussion,references,figure legends 순으로 작성해야 하지만,
Scientific report에서는
abstract, introduction,results,discussion,methods,author contributions,references,figure legends 순으로, 구성 순서와 요소가 다릅니다.
같은 텍스트파일을 읽어와서 스타일만 변경하면 각기 다른 구성 순서와 요소로 출력하는 방법이 있을까요?
저와 같은 고민을 한 사람이 별로 없는지 구글링에서 찾지 못했습니다.
고수님들의 의견을 듣고 싶습니다.
댓글 7
-
noname
2020.03.26 08:17
-
yihoze
2020.03.26 08:55
latexpand가, 쓸 일은 없지만, 흥미롭네요.
-
noname
2020.03.26 08:48
위의 myscript.sh에 해당하는 windows batch는 대략 다음과 같이 하면 같은 결과가 나올 듯하네요. (인자를 9개까지만 줄 수 있는 건 한계입니다마는.)
@echo off for %%a in (%*) do echo \input{%%a} echo \end{document}
-
yihoze
2020.03.26 09:12
윈도 사용자는 PowerShell을 써야죠. ^^
foreach ($arg in $args) {
$content = $content + "\input($arg)`r`n"
}
$content = $content + "\end{document}"
write-host $content
-
noname
2020.03.26 09:44
오, powershell... :)
근데 write-host로 출력하는 콘솔 메시지가 파일로 리다이렉션이 되나요? write-output 해야 하지 않을지요? (저는 윈도우즈 사용자가 아니라서 테스트해볼 수 없어서 질문...)
-
yihoze
2020.03.26 10:39
그렇네요. write-output으로 해야 하네요.
-
강태신
2020.03.28 05:27
powershell을 쓸줄 몰라서 이해는 잘 되지 않지만
답변 감사합니다. !!!
다시한번 감사드립니다.
개인용 컴퓨터에서 해볼 수 있는 간단한 방법을 생각해봅니다. (제 생각에 좀더 큰 규모의 반복작업이라면 DB를 이용하는 것이 최선이라고 봅니다만.)
핵심은 일단 문서의 각 부분을 모두 잘라서 별개의 파일로 저장하는 겁니다. 그러면 abstract.tex, introduction.tex, methods.tex, results.tex, discussion.tex, references.tex, figure.tex legends.tex이라는 파일이 생겨나겠죠.
그 다음에 scientificreport-preamble.tex이라는 파일을 만듭니다. 여기에는 \documentclass부터 시작해서 \begin{document}까지 들어갈 거고요. 이 문서 양식에 필요한 설정들이 포함되겠죠.
다음과 같은 shell script를 작성합니다. (Windows에서는 비슷한 bat나 powershell script를 작성할 수 있을 겁니다만... 저라면 Windows Subsystem for Linux의 bash를 이용하는 쪽을 추천하겠습니다.)
이걸 예컨대 myscript.sh이라고 저장한 다음에 명령행에서 다음과 같이 실행합니다. ($는 프롬프트 표시이고 역슬래시는 한 줄에 써야할 것을 나누어보인다는 의미입니다.)
그러면 생성된 abcde.tex은 다음과 같은 내용으로 되어 있을 겁니다.
이걸 그냥 컴파일하면 원하는 pdf를 얻을 겁니다. 그런데 소스를 어딘가에 보내야 한다면 이 상태로는 좀 그러니까 각 파일 내용을 하나의 파일로 담아야 합니다. 이것은 TeX Live에 포함되어 있는 latexpand라는 유틸리티를 이용합니다.
myarticle.tex을 열어 보십시오. 내용이 그대로 들어와 있을 겁니다. 다른 순서의 문서는 아까 한 myscript.sh의 첫째 인자를 다른 preamble로 해서 새로 만들면 됩니다.