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>처럼 입력하시면 좋습니다.
표 같은 목록 만들기
2013.12.03 09:03
이와 같은 모양으로 나오게 하고 싶은데요. 처음에는 간단히 tabto 패키지를 이용하려 했어요. 그런데 욕심이 생기네요.
\begin{callouts}
\item 오수 유입구
...
\item{배출구}
\end{callouts}
이렇게 만들어 보고 싶은데요.
카운터를 제가 제어할 수 있으니까 표처럼 나오는 목록을 만들어주는 패키지나 방법을 알고 싶습니다.
paralist 설명서를 봤는데 그다지 친절하지 않네요.
댓글 7
-
nanim
2013.12.03 09:44
-
Progress
2013.12.03 09:48
앗 찌찌뽕!
-
nanim
2013.12.03 09:59
\NumTabs라는 간단한 해결책을 잠시 잊은 탓에... ㅋ
-
Progress
2013.12.03 09:46
일단 tabto와 paralist를 이용하여 함 만들어 보겠습니다.\documentclass[a4paper]{oblivoir}\setmainhangulfont{HCR Batang LVT}\setsanshangulfont{HCR Dotum LVT}\usepackage{tabto}\usepackage{xob-paralist} % XeTeX/LuaTeX% \usepackage{dhucs-paralist} % in Legacy 텍\begin{document}\begin{framed}\parindent=0pt\NumTabs{4}\begin{inparaenum}[①]\item 오수 유입구 \tab \item 송풍기 \tab \item 처리 탱크 \tab \item 소독 탱크 \tab\item 저수위 센서 \tab \item 고수위 센서 \tab \item 배출 펌프 \tab \item 소독액 펌프 \tab\item 중화액 펌프 \tab \item 배출구\end{inparaenum}\end{framed}\begin{framed}\parindent=0pt\NumTabs{3}\begin{inparaenum}[\bfseries\sffamily 1.]\item 오수 유입구 \tab \item 송풍기 \tab \item 처리 탱크 \tab \item 소독 탱크 \tab\item 저수위 센서 \tab \item 고수위 센서 \tab \item 배출 펌프 \tab \item 소독액 펌프 \tab\item 중화액 펌프 \tab \item 배출구\end{inparaenum}\end{framed}\end{document}===수년 전 공주대 워크숍에서데이터를 불러와 표처럼 정렬해주는 별의별 방법을 구경한 것 같습니다. -
yihoze
2013.12.03 11:38
두 분 모두 고맙습니다. 그런데 paralist가 다른 패키지와 충돌을 일으키는 것 같습니다. 제가 워낙 많은 패키지들을 쓰다 보니 그리 된 것 같습니다. 그래서 아래와 같이 구현했습니다.
\newcounter{calloutcolumns}
\newcommand\setcalloutcolumns[1]{\setcounter{calloutcolumns}{#1}\NumTabs{#1}}
\setcalloutcolumns{4}
\newcounter{callout}
\newcounter{currcallout}
\newcommand\citem{%
\stepcounter{callout}
\setcounter{currcallout}{\thecallout}%
\whiledo{\thecurrcallout>\thecalloutcolumns}{%
\setcounter{currcallout}{\thecurrcallout-\thecalloutcolumns}}%
\ifthenelse{\thecallout=1}{}{\ifthenelse{\thecurrcallout=1}{\newline}{\tab}}
\wrapnum{\thecallout}
}
\newenvironment{callouts}[1][\empty]{
\setwrapnum{type=circle,color=white,base=10}
\setcounter{callout}{0}
\ifx\empty#1\else\setcalloutcolumns{#1}\fi
\par}{\par}
\begin{callouts}\citem 오수 유입구...\citem 배출구\end{callouts}\begin{callouts}[5]\citem 오수 유입구...\citem 배출구\end{callouts} -
nanim
2013.12.03 16:17
보여주신 코드 중에서 \whiledo 부분은 그냥 나머지를 구하기 위한 것으로 보이는데요,
LaTeX에서 모듈로 연산을 하는 가장 쉬운 방법은 intcalc 패키지의 \intcalcMod입니다.
따라서 저라면 대략 다음과 같이 할 것 같습니다. currcallout 카운터는 필요없을 것 같고요.
\usepackage{intcalc}
\newcommand\citem{%
\stepcounter{callout}
\ifthenelse{\equal{\value{callout}}{1}} % 맨 첫번째 항목은 \newline하지 않기 위해서
{} % do nothing
{\ifthenelse{\equal{\intcalcMod{\thecallout}{\thecalloutcolumns}}{1}} %% 나머지가 1이면
{\newline}
{\tab}
}
\wrapnum{\thecallout}
}
-
yihoze
2013.12.03 18:02
고맙습니다. 분명 이런 거 해주는 패키지가 있으리라 생각하고 찾다가 포기하고 만든 겁니다.
paralist, tabto를 이용하면 대략 다음처럼 할 수 있지 않은가 싶습니다.
아래 Progress님의 해법을 반영하여 조금 수정했습니다.
mdframed 장식이야 대략 알아서 하시면 되고요...
디폴트는 4(등)분.