提问于:
浏览数:
2873
## 编译环境
操作系统
* [ ] Windows 7/8/10
Tex发行版
* [ ] TexLive `2019`
## 我的问题
``` [tex]
\documentclass{book}
\usepackage{marginnote}
\begin{document}
\begin{enumerate}
\item the first line
\item \marginnote{empty line?}\begin{enumerate}
\item test
\end{enumerate}
\end{enumerate}
\end{document}
```
使用marginnote 当出现两层嵌套列表环境使用时会出现空白行,该如何处理去除这个空白行?望赐教。
![](https://wenda.latexstudio.net/data/attach/201028/jVVIf4RG.PNG)
希望(a)test能在蓝色框的位置
3 回答
0
列表的嵌套本身就是这样的特性,有内容的时候自然会跑到下一行,除非用`enumitem`包的`inline`模式
```
\documentclass{ctexbook}
\usepackage{marginnote}
\usepackage[inline]{enumitem}
\begin{document}
\begin{enumerate}
\item the first line
\item 只要这里有内容,嵌套的列表就会跑到下一行
\begin{enumerate}
\item test
\item test
\end{enumerate}
\item \begin{enumerate}
\item 编号3的后面没有内容,不会跑到下一行
\item test
\end{enumerate}
\item \marginnote{no empty line}带星号的inline环境,即使这里有内容也不跑到下一行
\begin{enumerate*}[itemjoin=\\]
\item test
\item test
\end{enumerate*}
\end{enumerate}
\end{document}
```
-
感谢向老师的回答 – 为啥不长草 2020-11-03 21:40 回复
1
你嵌套的列表本身就是换行下一行显示的,我没看出什么问题来。
作者追问:2020-10-29 06:49
``` [tex] \documentclass{book} \usepackage{marginnote} \begin{document} \begin{enumerate} \item the first line \item \begin{enumerate} \item test \end{enumerate} \end{enumerate} \end{document} ```
这样,去掉marginnote,效果就不一样了,您看下,我的意思是加边注不应该改变本行原有的效果呀,但是这个后面跟着列表就变了
0
嵌套的时候不是 `marginnote` 的问题,只要嵌套时那一行有内容,嵌套的就会跑到下一行去,比如说
```
\documentclass{book}
\usepackage{marginnote}
\begin{document}
\begin{enumerate}
\item the first line
\item x \begin{enumerate}
\item test
\end{enumerate}
\end{enumerate}
\end{document}
```
如果你想让 marginnote 在 (a) test 那一行,只要把它写在下面就行了,因为 `marginnote` 和上面的 x 一样,是要占用一行空间的,自然不会再把嵌套的环境再挤在一行了
```
\documentclass{book}
\usepackage{marginnote}
\begin{document}
\begin{enumerate}
\item the first line
\item \begin{enumerate}
\item test \marginnote{empty line?}
\end{enumerate}
\end{enumerate}
\end{document}
```
你的回答
请登录后回答
你的回答将会帮助更多人,请务必认真回答问题。