当您对选定的文本使用 texstudio 中的某些预定义快捷键时,它会用适当的标签(这是正确的术语吗?)包装文本。例如,假设我突出显示Hello World
并按下 Ctrl+i,它就会变成\textit{Hello World}
。
这非常方便,因为您不必移动结束标记。我想知道是否有办法编写宏来实现类似的行为。非常感谢。
[编辑] 发现了一个类似的回答问题:使用 TexStudio 中的宏脚本删除选定的文本
答案1
谢谢你的建议!我找到了类似的问题和答案这里作为参考,脚本如下所示。
%SCRIPT
txt = cursor.selectedText()
editor.write("\\underline{"+txt+"}")
cursor.clearSelection()
答案2
在 Texmaker 中您可以使用用户标签为了达成这个。
- 前往菜单用户 > 用户标签 > 编辑用户标签
- 在左侧选择一个空闲位置(例如菜单 1:)
- 在右侧输入宏的任意名称菜单项文本框(例如粗体)
- 在 Latex 内容框中输入您的代码(例如\textbf{@})
@ 符号是占位符。插入用户标签时,第一个 @ 符号将被当前选定的文本替换。
现在我只需选择我想要包围的文本,然后按Shift+F1或从菜单中选择适当的标签。(F1 因为它是我的情况下的第一个条目,快捷方式显示在菜单中。)
欲了解更多信息请查看:Texmaker 文档:用户标签
答案3
我不熟悉上述编辑器的宏编程功能,但我使用自动热键-此脚本应适用于所有编辑器。以下只是一个例子。
F2::
Send ^c
Send \textbf{{}{}}{LEFT}
Send ^v
Return