19

我制作了一个自定义类,其中文件由构造函数和方法加载(路径作为输入给出),例如:

类声明:

classdef Foo > handle
  methods
    function o = Foo(file), end
    function bar(o,file), end
  end
end

TC.xml 文件

  <binding name="Foo" ctype="FILE"/>
  <binding name="bar" ctype="MCOSCLASS FILE"/>

Matlab 命令提示符:

s = Foo('+Tab确实列出了可用的文件。

s.bar('+Tab作品

但问题是 Tab 补全不仅限于 Foo 类。不幸的是,改变的技巧TC.xsd也没有帮助。到目前为止,Yair Altman 幸运地帮助我达到了这一点。再次感谢。

整个过程可以在这里找到:

4

1 回答 1

1

首先,这是一个相关主题,其中包含对类似问题的回答:Tab-completion of filenames as arguments for MATLAB scripts

然后,这里有一篇关于同一主题的优秀 Matlab 门户的文章:设置桌面选项卡完成 | 无证 Matlab

UPD:不幸的是,尽管在 R2010a 版本中引入了一些 TAB 完成改进

因为制表符补全使用静态分析,它不会尝试猜测变量的数据类型,所以“.”后面的内容。除非在工作区中也定义了该变量,否则不会完成诸如属性和字段之类的内容。

如果有一些关于主题的最新信息(至少,我没有找到任何信息),这是值得怀疑的。

因此,在当前版本中,如果不将所有点属性和方法静态添加到 *.XML 文件中,则很可能无法在 MatLab 中自动完成它们。

希望有帮助!

于 2014-03-06T03:22:13.783 回答