%20personalizar%20o%20usu%C3%A1rio%20para%20realce%20de%20sintaxe%20no%20editor%2Fvisualizador%20integrado%20do%20Midnight%20Commander%3F.png)
Recentemente descobri um poder do MC para visualizar/editar certos tipos de arquivos. Por exemplo isto:
shell/.class Ver=%view{ascii} tmp=%p; javap -c ${tmp%%.class}
de~/.mc/bindingsdê uma breve olhada nos métodos/campos da classe Java pressionando F3. Mas é difícil ver quando todos os códigos usam as mesmas cores. Gostaria de ver palavras-chave e tipos destacados de alguma forma.
É possível (e como) personalizar o usuário para realce de sintaxe no editor/visualizador integrado do Midnight Commander (por regex)?
Responder1
Os arquivos relacionados à sintaxe são armazenados em formato /usr/share/mc/syntax
. Esses arquivos são fornecidos pelo sistema de gerenciamento de pacotes. Eles poderiam ser editados como root e deveria funcionar, mas isso seria um hack.
A solução correta é copiar /usr/share/mc/syntax/Syntax
para o seu diretório inicial: ~/.config/mc/mcedit/Syntax
. (Nota: a versão antiga pode usar outro caminho, por exemplo ~/.mc/cedit
:) Este arquivo define associações de tipos de arquivo e, se estiver presente em seu diretório inicial, substituirá o padrão. Portanto, pode ser editado agora.
Por exemplo, se você deseja adicionar um arquivo de sintaxe para qwe
extensões, você deve adicionar estas linhas:
file ..\*\\.qwe$ qwe\sFile
include /home/username/.config/mc/mcedit/qwe.syntax
Observe que include
é necessário um caminho absoluto, caso o arquivo não esteja localizado /usr/share/mc/syntax
(ou também ~/.local/share/mc/mcedit
nas versões mais recentes). Depois disso você deve criar e editar seu qwe.syntax
arquivo com base nos demais.
Responder2
Não posso dizer nada sobre cores, mas a ligação precisa ser atualizada para visualizar os arquivos de classe dentro de um jar:
shell/.class
View=%view{ascii} tmp=%f; xyxy=${tmp##*/}; javap -classpath ${tmp%/*.class} -c ${xyxy%.class}