这个问题类似于这里问的人。
我正在尝试弄清楚如何在 Nvim 中拆分 TeX 文件中写的段落,以便:
- 任何带有引文(即
\autocite[][]{}
)的句子在段落分成几行后都会保留其引文,而不是将引文放在新行上 - 任何在引文之后开始的句子都会被拆分到自己的行上,而不是与条目保留在同一
autocite
行
例如,我可能有以下一段:
这是例句!这是带引文的句子。\autocite[For instance, see:][29]{@citekey1}
这是另一个例句?还有另一个带引文的句子。\autocite[][104]{@citekey2}
还有两句话!这是最后一句话?
注意:以下命令vip
可以双重\
转义它们,因为我是通过键绑定而不是宏来运行的。该\\([.?!])\\)
组件列出了我用来结束句子的 3 个标点符号。
运行vip:s/\\([.?!]\\)\\s/\\1\\r/g<CR>
输出:
This is a sample sentence!
And here's a sentence with a citation.
\autocite[For instance, see:][29]{@citekey1} Here's another sample sentence?
And yet another sentence with a citation.
\autocite[][104]{@citekey2} And two more sentences!
Here's the final sentence?
显而易见的解决方案是将最后一个标点符号放在autocite
命令后面。但这对我来说行不通,因为我的大学要求使用芝加哥风格的引文,这就要求我的脚注位于标点符号后面。
有没有什么方法可以调整我的宏以便最终得到:
This is a sample sentence!
And here's a sentence with a citation.\autocite[For instance, see:][29]{@citekey1}
Here's another sample sentence?
And yet another sentence with a citation.\autocite[][104]{@citekey2}
And two more sentences!
Here's the final sentence?
我想尝试解决这个问题的原因是,我更喜欢在编辑时将段落分成句子。我想保留引用及其句子,以便于编辑(尤其是交换句子)。我可以用vipJ
after 重新连接句子。
提前谢谢了。