Pergunta

Todos nós MATLAB saber fornece guia-conclusão para nomes de arquivos usados ??como argumentos em função MATLAB como importdata, imread. Como fazemos isso para as funções que criamos?

EDIT:

text alt

Exibe os arquivos e pastas no diretório atual.

Foi útil?

Solução

Atenção:. Corte não suportado aqui

Dê uma olhada na caixa de ferramentas de arquivo \ Local \ TC.xml na sua instalação Matlab. Este parece conter os mapeamentos de tipo argumento para a conclusão de tabulação. (Eu encontrei este por apenas grepping a instalação Matlab para "imread" em R2009b.)

Adicionando esta linha dentro do elemento <TC> vai te guia-conclusão de nomes de arquivo para cada um dos seus argumentos.

<binding name="importdata"        ctype="FILE"/>

Isto requer modificar a instalação Matlab no lugar. Para alguns dos outros arquivos no toolbox / local, como classpath.txt, você pode substituí-los, colocando cópias modificadas no diretório que você começar Matlab a partir, mas isso não funcionou para TC.xml para mim.

Outras dicas

Não há nenhuma maneira suportada para adicionar suas funções ao argumento Tab conclusão, mas um truque uso I é colocar um "!" em frente do comando para que ele é tratado como um comando do sistema. Tab completará então caminhos de arquivo. Uma vez que o meu comando MATLAB é feito, eu em casa para o início da linha, exclua o "!" e pressione enter.

Para Matlab 2016a e acima:

O arquivo Tc.xml não está presente em Matlab 2016a em diante. Ele usa um arquivo .json (Java Script Object Notation) para alcançar o mesmo. Um exemplo simples disso pode ser como se segue.

Suponha que você tenha um arquivo de função Matlab chamado myFunction.m . Além disso, suponha que esta função precisa de arquivos com extensão .ext como entrada e você quer que o guia-conclusão para mostrar todas as opções de entrada possíveis para esta função. Em seguida, escreva o seguinte conteúdo em um arquivo e nomeie- functionSignatures.json .

{
"myFunction":
{
  "inputs":
  [
    {"name":"filename", "kind":"required", "type":"filepath=*.ext" }
  ]
}
}

Coloque este arquivo no mesmo diretório como myFunction.m arquivo. Agora, reinicie Matlab.

O que este arquivo faz: Ao digitar na entrada função, mediante guia pressionando, você verá uma lista de arquivos com a extensão .ext surgindo. Se você quiser que todos os arquivos a serem mostrados na pop-up conclusão de tabulação independentemente da sua extensão, em seguida, substituir "type":"filepath=*.ext" com "type":"filepath" no arquivo functionSignatures.json .

Fonte : https://www.mathworks.com/matlabcentral/answers/306157-how-to-configure-tab-completion-for-my-function-in-matlab- 2016 # answer_237857

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top