tipos de arquivos vim e TeX: plaintex vs. tex


24

Abro .texarquivos com o Vim, mas alguns são reconhecidos como filetype=plaintexe outros como filetype=tex. Por que é isso? Qual é o gatilho que reconhece o arquivo como tex, com o destaque que eu quero?

Respostas:


24

Por que alguns .texarquivos são abertos no Vim como filetype=plaintexe outros como filetype=tex? Como a mesma extensão, .texnesse caso, é usada para vários tipos de arquivos ", o Vim tenta adivinhar que tipo de arquivo é", de acordo com a documentação da regra de substituição de tipo de arquivo do Vim .

A seção ft-tex-plugin da documentação do tipo de arquivo Vim lista as regras usadas pelo Vim ( versões 7 e superiores ) para determinar qual tipo de arquivo usar para .texarquivos:

  1. Se a primeira linha do arquivo é %&<format>onde <format>pode ser plaintex, contextou tex, então, o tipo de arquivo está definido para TeX liso, contexto, ou LaTeX, respectivamente.
  2. Se não houver um comando designador de formato na primeira linha, o Vim pesquisará no arquivo palavras-chave para determinar se o tipo de arquivo deve ser definido como context(ConTeXt) ou tex(LaTeX).
  3. Se nenhuma palavra-chave for encontrada, o tipo de arquivo será definido como plaintex(TeX simples).

A última regra é importante. Se você criar um .texarquivo vazio usando um comando como touch myfile.tex, então, quando você o abrir no Vim, o tipo de arquivo será padronizado plaintex, pois o arquivo está em branco.

Você pode alterar o comportamento padrão configurando a variável global tex_flavorem .vimrc:

  • let g:tex_flavor = "plain"
  • let g:tex_flavor = "context"
  • let g:tex_flavor = "latex"

13

Você está usando o plugin do LaTeX-suite? Se sim, então você provavelmente quer

let g:tex_flavor='latex'

no seu .vimrc.


Isso não tem nada a ver com o plugin do LaTeX-suite. Veja a resposta de Matthew Rankin ou :h ft-tex-plugin.
Hotschke

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.