Texstudio 是最好的 latex 编辑器,但它缺少一些可以提高生产力的功能。许多人可能感兴趣的功能之一是选择多个单词和行。这是因为一个好的 latex 文档需要多次复制和粘贴。
在这方面,我正在寻找一个宏:
在第一次调用中选择当前单词。
随后在每次调用中添加连续的单词。
对于线操作也需要相同的宏:
在第一次调用中选择当前行
在随后的调用中以连续的字词形式添加以下行。
请考虑以下示例:
\begin{dmath}\label{key}
\min \zeta\\
|w_k^+ - w_k^-|+|z_k^{+} - z_k^{-}| \le \zeta\\
w_k = x_{R} - \Re\{\mu_k\}\\
z_k = x_{I} - \Im\{\mu_k\} \\
w_k = w_k^+ - w_k^- \\
z_k = z_k^{+} - z_k^{-}\\
w_k^+ \ge 0, w_k^- \ge 0,\\
z_k^{+}\ge 0, z_k^- \ge 0,
\end{dmath}
在第一种情况下,我需要选择一行的一部分并复制并粘贴。例如:
z_k^{+} - z_k^{-}
第二种情况,我需要选择几行并复制粘贴。例如:
w_k = w_k^+ - w_k^- \\
z_k = z_k^{+} - z_k^{-}\\
我希望这样的功能可以通过键盘(最低限度的使用)来实现,而无需使用鼠标。在这方面,如果有宏,我可以为其分配快捷方式并使用该功能。
答案1
选择线
Edit -> Selection -> Expand Selection to Line
选择单词
有Edit -> Selection -> Expand Selection to Word
。但是这有另一个作用域:它连续选择光标下单词的所有出现位置。
您可以在用户宏中自己编写所需的功能。这是一个起点。也许您需要进行一些调整才能控制确切的行为。
%SCRIPT
if (!cursor.hasSelection()) {
cursor.select(cursorEnums.WordUnderCursor)
} else {
cursor.movePosition(1, cursorEnums.NextWord, cursorEnums.KeepAnchor)
}