definir a sintaxe padrão para sublime não funciona
-
21-12-2019 - |
Pergunta
Sempre que abro um arquivo .m, a sintaxe padrão é object-c, mas quero mudar para matlab.Então, quando abro um arquivo .m, vou para
visualizar -> sintaxe -> abrir tudo com a extensão atual como ..
e escolha matlab.Depois disso, se eu abrir outro arquivo .m, a sintaxe padrão será matlab.Mas se eu fechar o sublime e abri-lo novamente, a sintaxe padrão voltará ao objetivo-c.
Adicionei objetivo-c para ignorar a lista de sintaxe, mas agora ele abre arquivos .m como texto simples.Existe outra maneira de definir a sintaxe padrão para uma extensão de arquivo?
Solução
Não sei por que o Sublime está fazendo isso, mas há uma maneira de contornar isso.Como você está usando o ST2, é bem fácil.Selecione Preferences -> Browse Packages...
para abrir o seu Packages
pasta e abra o Objective-C
subpasta.Abrir Objective-C.tmLanguage
no Sublime como um arquivo XML e comente (ou remova totalmente) a linha 7:
<string>m</string>
Salve o arquivo e feche-o.A seguir, abra Objective-C++.tmLanguage
e faça a mesma coisa com a Linha 8:
<string>M</string>
Salve e feche esse arquivo também.Finalmente, apenas para ter certeza de que seu Open all with current extension as...
comando funcionou, vá para Packages/User
e verifique a existência de um arquivo chamado MATLAB.sublime-settings
.Abra-o como um arquivo JSON e verifique se seu conteúdo é o seguinte:
{
"extensions":
[
"m"
]
}
Se por algum motivo o arquivo não existir, crie-o com o conteúdo acima e salve-o.Agora você deve ser capaz de abrir qualquer .m
arquivo e ter a sintaxe definida automaticamente para MATLAB
.
Nota para usuários do Sublime Text 3:
ST3 não armazena seus pacotes padrão em Packages
mais, em vez disso, eles estão no Installed Packages
pasta (sua localização varia de acordo com o sistema operacional e tipo de instalação) compactada .sublime-package
arquivos.Para acessar o conteúdo, instale o @skuroda's PackageResourceViewer
plugin para acessar perfeitamente o conteúdo desses arquivos.Depois de instalado, abra a paleta de comandos (CtrlMudançaP no Windows/Linux, ⌘MudançaP no OS X) e digite prv
para trazer à tona o PackageResourceViewer
opções.Selecione Extract Package
, role para baixo até Objective-C
, e bateu Digitar.Agora você pode seguir as instruções acima para abrir o Packages/Objective-C
pasta e editando o .tmLanguage
arquivos.O Packages/User
diretório é um diretório normal, então você não precisa extraí-lo para verificar o conteúdo de MATLAB.sublime-settings
.
Outras dicas
em Sublime3, View -> Sintaxe -> Abra tudo com a extensão atual como .. funciona se você fechar e abrir sublime.
Eu penso porque isso está acontecendo, pelo menos no Sublime 3 (v3.2.1).Depois de usar PackageResourceViewer: Extract Package
extrair Matlab
pacote, descobri que em Matlab.sublime-syntax
na linha 6:
- matlab
Como .matlab
não é uma extensão para funções e scripts matlab, depois que mudei para - m
, Programas sublimes .m
arquivos na sintaxe MATLAB.