未决问题

未决问题

找到解决方案后以问答形式写。

问题

我想使用 LyX 编写文档,但在 Microsoft Word 中,我喜欢这种行为,即键入x_"B" SPC会产生XB,在 LyX 中重复输入类似内容x_\mathrm SPC B SPC SPC以获得相同的结果。可以模拟 word 的行为吗?

答案1

解决方案

"事实证明,除了关于在文本中使用创建引号的警告外,它出奇的简单易懂。

为了获得想要的行为,你只需要在按键绑定编辑器中绑定"font-roman工具 > 首选项 > 编辑 > 快捷方式

在公式编辑器中,按下"可切换到一个\mathrm框,"再次按下 可切换回原位(而不是创建一个嵌套的“非数学”框)。因此,x_"B" SPC现在输入的结果与 Word 中的结果完全相同。

注意事项

重新绑定过程引发了几个问题。

  1. "不能再用来输入双引号。我找不到一种方法来使"文本模式和数学模式之间的行为有所不同,但我对双引号的需求比 少得多\mathrm。我的解决方法是重新绑定quote-insertCtrl+Shift+6

  2. 在非英语键盘上,可能无法将 unter"作为键绑定。在德语键盘上,输入"(= Shift+2) 被注册为Shift+"并且不起作用。我通过重新使用 的预定义绑定解决了这个问题quote-insert

  3. 我首先尝试重新绑定quote-insertAlt+",默认情况下它绑定到quote-insert inner,在我的设置中,它会插入单引号。将其重新绑定到quote-insert 仍然插入内部引号。因此使用Ctrl+Shift+6

未决问题

理想情况下,"其行为将font-roman与数学模式和quote-insert文本模式相同。我尚未找到实现该功能的方法。

为了完整性:LaTeX 解决方案

对于 L A T E X也可以实现同样的效果,但需要重新定义“,由于状态逻辑,它无法在 LyX 的公式编辑器中正确显示。请谨慎使用,因为它可能会惹恼文档的合作者。

\catcode`\"=\active
\newif\ifquoterm
\def "{\ifmmode\ifquoterm \it\quotermfalse \else \rm\quotermtrue \fi \else \string"\fi}

在此处输入图片描述

相关内容