如何在 lyx 的工具栏上创建快捷方式?

如何在 lyx 的工具栏上创建快捷方式?

抱歉我的英语不好。如何在 lyx 的工具栏上添加快捷方式?这样如果我点击快捷方式,我就可以连接到 TortoiseSVN,只需快捷方式(无缝)谢谢。

答案1

事实证明,这根本不简单。您需要做两件事:创建一个新的 LyX 命令,然后在您希望它出现的位置创建新的菜单项。

首先,一些指示:

LyX 用户界面和命令文件存储在uicommands目录中:

  • ~/.lyx在 Linux 上
  • %USERPROFILE%\AppData\Roaming\LyX16\Resources在 Windows 上。

这些设置是针对每个用户的,通常不建议干扰全局设置。作为参考,等效的全局设置目录位于:

  • /usr/share/lyx在 Linux 上(可能因发行版不同而不同)
  • %PROGRAMFILES%\Lyx16在 Windows 上。

你需要做什么:

  1. 在每个用户commands目录中的文件中定义一个新命令default.def(如果不存在则创建它,包括commands目录)。您的命令将类似于:

    \define "my-command" "vc-command <flags> \"path-to-command\" \"command-to-run\""
    
    • 请注意,您需要在命令定义中转义双引号,因为它们分隔了 LyX 命令及其参数。

    • 可以<flags>是以下一个或多个UDIRM(无标志、需要加载文档、将文档标记为“脏”、执行后重新加载、要求用户输入)。根据需要组合。

    • 在其中,path-to-command您可以使用$$p来表示当前文档路径,在 中,command-to-run您还可以使用$$i和 ,$$m它们将分别替换为当前文档或消息。有关完整语法,您可能需要查看安装目录中的内容,或者LFUN.lyx选择doc帮助->LyX 函数来自程序本身。

    对于你的情况,你可能会遇到类似这样的情况:

    \define "svn-commit" "vc-command D \"path-to-svn.exe\" \"svn commit %%i\""
    
  2. 完成命令后,您需要在界面中为其创建一个菜单项。您可以在菜单项、工具栏项和上下文菜单之间进行选择。完整处理语法将占用大量空间,因此我建议您查看 、stdtoolbars.incstdmenus.incstdcontext.inc了解语法的样子。以下代码应该对您有用:

    • default.ui将文件从全局目录复制ui到本地目录。
    • 创建一个新的“mymenu.ui file in the localui”目录。在其中,您将拥有类似以下内容:工具栏“my-toolbar”“我的工具栏”项目“SVN Commit”“svn-commit”...结束

    stdtoolbars.inc检查全局目录中的一个文件ui来查看其语法。

    • 编辑本地default.ui并在其他包含下面添加以下行:

      Include "mymenu.ui"
      

      再往下,在Toolbars某处添加工具栏。该文件包含一些外观选项的内联说明。

  3. 现在,您可以启动 LyX 了。启动后,请注意外观没有任何变化。不用担心——您需要告诉 LyX 使用您自己的自定义 UI 文件而不是标准文件。用户界面选择自然位于外观与感觉->用户界面在 LyX 偏好设置中。选择您的新文件,重新启动 LyX,然后祈祷一切顺利。

更多事情要做:

  • 您可能还想为自定义命令分配键盘快捷键,您可以在 LyX 偏好设置中执行此操作,在编辑->快捷方式

此时,您可能已经灰心丧气,认为不值得这么麻烦。我很想同意您的观点,我发现打开一个方便的命令行窗口/Unix shell 比摆弄 UI 配置文件要方便得多。

链接:

相关内容