Eu poderia achá-lo colocando a primeira linha do arquivo (vinculado):
vim: ft=markdown
É feio , mas faz o trabalho.
Eu tenho um arquivo de marcação com a extensão .md como "Personal Note.md".
Eu faço um link symbolik (soft) dele pelo comando ln -s
no Linux como "Note".
Eu abro o link com vim , ele rastreia com sucesso o arquivo original e o abre mas não o destaca, é o formato de arquivo de remarcação.
Para observar, ele destaca se eu renomei ou crie o link desde o início com a extensão .md
, mas não é isso que quero fazer, não quero adicionar a extensão para o link criado para mantê-lo menor e neutro no olho do usuário.
Isso é complicado, pois nessa situação você prefere não ter uma extensão em seu symlink, e não há nenhuma maneira confiável que eu saiba para detectar automaticamente um arquivo de remarcação baseado em sua sintaxe (já que afinal ele é destinado a ser humano - legível sem renderização), então ftdetect
está fora da imagem. No entanto, você tem algumas opções.
Se você tende a criar links simbólicos com nome semelhante para arquivos Markdown, é possível adicionar um autocommand
para definir o tipo de arquivo ao ler esses arquivos:
" Your autocmds should be defined inside a group and cleared at the start so
" that they are not defined more than once if you happen to re-source your vimrc.
" See http://learnvimscriptthehardway.stevelosh.com/chapters/14.html
augroup MyAutoCmds
autocmd!
" If you have other files that you always want to use Markdown syntax, add them
" after 'Note' below, comma delimited. Some other ideas could be README, AUTHORS,
" CONTRIBUTING, COPYING, etc
autocmd BufNewFile,BufRead Note setf markdown
augroup END
Ou você pode usar um modeline
. Não acredito que exista uma sintaxe oficial para os comentários do Markdown, mas eu vi a maioria suportar comentários HTML básicos. Então, você pode acrescentar isso ao seu arquivo Markdown:
<!-- vim: set ft=markdown: -->
Veja :h modeline
para os detalhes completos sobre esse recurso. N.B. isso não será exibido no Markdown renderizado, desde que a implementação suporte comentários, o que a maioria dos que eu vi realmente faz.
Acho que infelizmente, sem a extensão, você terá que definir manualmente o syntax-type
to markdown
:set syn=markdown