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>처럼 입력하시면 좋습니다.
Itemize에서 Underline과 줄 바꿈의 충돌
2017.11.30 18:03
안녕하세요.
Itemize 내부에서 문장에 underline 적용 시 줄 바꿈에 문제가 발생하는데, 주로 어떻게 해결하시는지요?
아래는 예제 코드입니다.
\documentclass{article} \usepackage[cjk]{kotex} \begin{document} \begin{itemize} \item \texttt{itemize} 내부에서 매우 긴 문장에 \texttt{\textbackslash underline} 적용 시 \underline{줄이 자동으로 바뀌지 않는 문제가 발생} \end{itemize} \end{document} |
감사합니다.
댓글 10
-
anonymous
2017.11.30 19:41
-
김준용
2017.12.01 02:19
감사합니다. Ulem 패키지로 해결할 수 있네요. 아래는 예제 코드입니다.
\documentclass{article}
\usepackage{ulem}
\usepackage[cjk]{kotex}
\begin{document}
\begin{itemize}
\item \texttt{itemize} 내부에서 매우 긴 문장에 \texttt{\textbackslash underline} 적용 시 \uline{줄이 자동으로 바뀌지 않는 문제가 발생}
\end{itemize}
\end{document} -
yihoze
2017.12.01 09:26
췌언을 덧붙이자면 \underline의 텍스트는 itemize 환경에서뿐만 아니라 어디에서든 개행이 되지 않습니다. 개행이 되지 않는 매크로들이 있습니다. \textsuperscript (윗첨자), \textsubscript(아래첨자)가 그에 속합니다.
-
김준용
2017.12.03 03:25
감사합니다. 덧붙여 lipsum 기능은 uline 기능과도 충돌하는 것으로 보입니다. 아래는 예제 코드입니다.
\documentclass{article}
\usepackage{lipsum,ulem}
\begin{document}
\underline{\lipsum[1]}\textsuperscript{\lipsum[1]}
\textsubscript{\lipsum[1]}
\uline{\lipsum[1]}
This is a dummy sentence. \uline{This is a dummy sentence. This is a dummy sentence. This is a dummy sentence. This is a dummy sentence.} This is a dummy sentence.
\end{document} -
yihoze
2017.12.04 17:06
"충돌"이라 말하는 것은 그다지 적절하지 않습니다. "충돌"은 버그를 함의하는데, 제시하신 문제를 위해 개선되어야 할 것으로는 보이지 않습니다. ulem의 저자는 텍스트가 아닌 매크로를 인자로 받는 경우를 상정하지 않았을 것이며, lipsum의 저자도 마찬가지일 것입니다. 이것은 매크로 확장의 문제인데, \lipsum의 정의가 단순하지 않아서 원하시는 방법으로 해결하기가 쉽지 않습니다.
https://tex.stackexchange . com/questions/26806/expanding-edef-a-lipsum-command
이 글을 참고하여 아래와 같이 해보니 됩니다.
\documentclass{article}
\usepackage[normalem]{ulem}
\usepackage[nopar]{lipsum}\makeatletter
\def\unpacklipsum#1#2#3{%
\count@=#1\relax
\advance\count@\m@ne
\def#3{}%
\loop\ifnum\count@<#2\relax
\advance\count@\@ne
\edef#3{#3\csname lipsum@\romannumeral\count@\endcsname}%
\repeat}
\makeatother\unpacklipsum{1}{1}{\mylipsum}
\edef\tmpx{\expandafter\mylipsum}\begin{document}
\expandafter\uline\expandafter{\tmpx}
\end{document}lipsum보다는 아마도 특정 문자열을 포함하는 변수를 만들어 사용하는 경우일 텐데, 이런 식으로 하면 될 것입니다.
\edef\FOO{...}
\expandafter\uline\expandafter{\FOO} -
김준용
2017.12.05 13:35
감사합니다. 사실 lipsum 패키지는 예제 코드를 작성하는 경우 이외에는 거의 사용하지 않아서 제가 해결해야 할 문제는 아니었고, 다만 예제 코드를 작성하던 중 우연히 발견하여 이곳에 댓글로 남겼던 겁니다. 충돌의 의미에 대해서는 깊이 생각하지 못했는데, 문제가 발생한다는 표현이 더 적절할까요.
-
yihoze
2017.12.01 09:28
그런데 kotex에 cjk 패키지 옵션을 쓰셔야 하는 이유가 무엇인지 궁금합니다.
-
김준용
2017.12.03 03:38
전혀 없습니다. 예제에서 처음 본 걸 계속 쓰고 있습니다. 사실 cjk 옵션이 없어도 한글은 잘 출력되는 것 같은데, 어떤 점에 차이가 있는지 궁금합니다.
\documentclass{article}
\usepackage{kotex}
\begin{document}
한글 출력 확인
\end{document} -
yihoze
2017.12.04 17:08
말하자면 긴데 (솔직히 자세히 알지도 못합니다), CJK 옵션은 (수 년 전의) kotex 개발 과정의 부산물 정도로 여기시면 됩니다. 그리고 그 옵션은 더 이상 써야 할 이유가 없다고 보아도 무방합니다.
-
김준용
2017.12.05 13:25
답변해주셔서 감사합니다.
https://tex.stackexchange닷Com/questions/262306/line-breaking-with-hyperref-href-with-an-underline-in-itemize