TexStudio 中的自动完成方法不起作用

TexStudio 中的自动完成方法不起作用

我创建了一个mymacros.sty文件,希望我的 LaTeX 文件能够使用我定义的命令来访问它。我已设法通过添加\usepackage{mymacros}序言来使其工作。

但是当我尝试自动完成时却无法完成。我看了这个问题:

它首先推荐mymacros.sty在编辑器中打开。但是这不起作用。

第二种方法是激活选项面板中的选项Editor-> 。但是,虽然我有一个选项卡,但那里没有这样的选项。Automatically load included filesconfigure TeXstudioEditor

第三个是使用.cwl文件,但我不确定该怎么做。在完成选项卡中,我注意到出现了一个mymacros.sty选项,我勾选了它,但没有效果。我需要自己制作mymacros.cwl文件吗?我试过查找这个,但没有任何结果。

有人有什么想法吗?提前致谢!

答案1

恐怕我无法准确诊断您的问题,但您可以创建自己的.cwl文件。希望这是一个可接受的替代方案。

参考:http://texstudio.sourceforge.net/manual/current/usermanual_en.html#CWLDESCRIPTION

1)第一步是找到.cwl存储文件的目录。如果您使用的是 Windows,自定义.cwl文件存储在.\AppData\Roaming\TeXstudio\completion\user目录中。如果有疑问,请在 TeXstudio 中转到Help->Check LaTeX installation并搜索Setting file。目录应该会为您打印出来。

检查乳胶安装

2)转到记事本或任何其他文本编辑器(TeXstudio 也可以!)。该.cwl文件的命令语法如下:

<command>[#classification]

有关分类样式的列表及其作用,请参阅上面的链接,第 4.13.3 节。现在,尝试在文本文件中添加一行:

\ThisIsMyCommand#n

并使用您选择的文件名保存它。据我所知,这不必与您的.sty姓名一致,因此让我们选择randomcwl.cwl文件名。确保它是.cwl文件。

记事本

3)继续将此文件放入.cwl步骤 1 中的目录中。

4)现在,如果你转到Configure TeXstudio-> Completion,你会发现random.cwl选项已经弹出。选中该框。

随机的

5)并测试一下!

有用!

答案2

我遇到了同样的问题。由于样式文件中定义的宏未出现在自动完成中,因此我将它们复制到主文件中(只是暂时的),并且运行正常。这是一个简单的解决方法,但不是最好的解决方案。

答案3

当我按照 Troy 的回答时,我遇到了类似的问题,只是我将 .sty 文件的自动生成的 .cwl 文件复制到完成/用户目录中,并按照 Troy 的描述选中了配置中该文件旁边的复选框,但自动完成仍然不起作用。

对我来说,解决问题的方法是删除 .cwl 文件内所有命令中的 #S,然后重新启动编辑器

相关内容