我用Linux Mint使用 gvim_7.3.429 来编辑我的 TeX 文件。最近我在比较两个文件时得到了以下结果:
goswin@mycomp diff oktext.tex bugtext.tex
1,7c1,7
< \documentclass[10pt]{scrartcl}
< \usepackage[utf8]{inputenc}
< \usepackage[T1]{fontenc}
<
< \begin{document}
< Hello world
< \end{document}
---
> \documentclass[10pt]{scrartcl}
> \usepackage[utf8]{inputenc}
> \usepackage[T1]{fontenc}
>
> \begin{document}
> Hello world
> \end{document}
这两个文件肯定是不同的,因为第一个文件编译正确,而第二个文件崩溃并出现以下输出:
goswin@mycomp pdflatex bugtext
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian)
entering extended mode
(./bugtext.tex
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, nohyphenation, ngerman, german, german-x-2009-06-19, ngerman-x-2009-06-19, spanish, galician, catalan, loaded.
! LaTeX Error: Missing \begin{document}.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.1
��%\documentclass[10pt]{scrartcl}
?
! Emergency stop.
我怎样才能知道到底发生了什么?(我需要调试的文件实际上要大得多;我删除了几乎所有的内容,但错误仍然存在。)顺便问一下,为什么它会在我没有告诉它的情况下加载所有这些连字文件?
答案1
由于您正在使用 vim,因此您可以使用
:setlocal nobomb
:wq
看
https://stackoverflow.com/questions/295472/how-do-i-remove-the-bom-character-from-my-xml-file