我在eclipse中有一个git repo项目,我一直在使用doxygen(v1.8.4)进行记录。 如果我运行乳胶制作项目的新克隆,它运行良好,PDF制作。 但是,如果我然后运行doxy构建,完成OK,那么然后尝试运行latex make,它就失败了
! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding `utf8'.
See the inputenc package documentation for explanation.
Type H <return> for immediate help.
...
我尝试通过将DOXYFILE_ENCODING
设置为ISO-8859-1
而不改变结果来切换doxyfile的编码...我该如何解决这个问题?感谢。
编辑:我认为只有的doxy构建才能正常运行。它没有显示任何错误,但它应该,例如运行DOT并构建大约10个图。控制台输出表示运行点,但它并没有像生成图表那样生成图形(n / x)...
答案 0 :(得分:3)
简短回答:因此,通过缓慢的消除过程,我发现这是由一个文件中的单个撇号引起的,该文件似乎已经构建并且没有错误!
答案很长:首先我使用项目属性将编码从默认的Cp1252翻转到UTF-8。然后我开始逐个删除文件,直到每次删除后重建和重新生成,直到make成功运行。我重新添加了所有文件,但删除了最近删除的文件中的内容并测试了make - 以确认它是此文件而仅此文件导致了该问题。制作好了。所以我将内容粘贴回空文件,并开始删除文件中较小和较小的部分,每次重新重建和重新制作,直到我留下一个没有撇号的好制作和一个坏的... ...我只是重新输入撇号(因为这会强制它成为UTF-8字符)并成功!!这样一个烦人的错误!
答案 1 :(得分:0)
老兄,你做得很难。为什么不使用python为你做的工作:
f = open(fn,"rb")
data = f.read()
f.close()
for i in range(len(data)):
ch = data[i]
if(ch > 0x7F): # non ASCII character
print("char: %c, idx: %d, file: %s"%(ch,i,fn))
str2 = str(data[i-30:i+30])#.decode("utf-8")
print("txt: %s" % (str2))