Eu nunca uso sudo vim /path/to/some.file
; Eu sempre uso sudoedit
. No entanto, isso significa que o vim não vê o caminho correto. Como exemplo, quando abro /etc/http/conf/httpd.conf
, o sudoedit faz uma cópia do httpd.conf e depois usa o vim para abri-lo. Então, em vez de o vim ver esse arquivo, ele vê "/var/tmp/httpdXX3H43AK.conf"
(por exemplo). Isso significa que o sistema de destaque de sintaxe do vim não vê o tipo de arquivo apropriado. Se eu simplesmente abrisse o arquivo sem usar o sudo (e, portanto, sem acesso de gravação), o vim veria o local do arquivo e decidira que a sintaxe que destaca o tipo de arquivo precisa ser apache. No entanto, como não está nesse local, ele não obtém o tipo de sintaxe apache e obtém um tipo de arquivo conf.
Estou procurando uma maneira (uma opção de linha de comando?) Para informar ao vim (e mais especificamente, o destaque da sintaxe) "esse arquivo deve ser tratado como se estivesse nesse outro local". Posso executar manualmente :se syntax=apache
e o destaque está de volta ao que deveria ser. No entanto, isso exige que eu conheça a sintaxe correta e é uma etapa extra que acho que não devo dar. Alguém sabe alguma maneira de usar o sudoedit e fazê-lo usar o local correto do arquivo?
Contexto: CentOS 7.1, versão vim: vim-Enhanced-7.4.160-1.el7.x86_64