检查 JabRef 编码

检查 JabRef 编码

我想通过 pandoc 命令行软件将 .tex 文件转换为可以在 MS Word 中打开的格式(.doc、.docx、.rtf 等)。下面附上了一个最小 .tex 文件。尝试转换时,我在标准命令窗口中使用以下命令:

pandoc -o MyFile.tex MyFile.rtf

这将产生以下错误消息: 在此处输入图片描述

“无效的 UTF-8 流”是什么意思?我该怎么办?我正在使用 MikTeX 2.9 和 TexWorks。

我的乳胶文件 MyFile.tex 是这样的:

% !TeX program    = pdflatex
% !TeX encoding   = ISO-8859-1
% !TeX spellcheck = nb_NO

\documentclass[10pt,a4paper,twosided]{article}

\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsthm} 
\usepackage{amssymb}
%\usepackage[dvips]{graphicx}
\usepackage{graphicx}

%\usepackage[french,english]{babel}
\usepackage[english]{babel}
%\usepackage[latin1]{inputenc}

\usepackage[usenames,dvipsnames]{color}
\usepackage{subfigure}
\usepackage{natbib}
\usepackage{dcolumn}

\usepackage{bm}
\usepackage{url}

\usepackage{alltt}
\usepackage{xspace}
\usepackage{enumerate}
\usepackage{textcomp}
\usepackage{etoolbox}
\usepackage{longtable}
\usepackage{pdflscape} 
%\usepackage[absolute,showboxes]{textpos}
\usepackage[absolute]{textpos}

\usepackage{fancyhdr}
\usepackage{array}
\usepackage{tabularx}
\usepackage{xfrac}

\usepackage{fmtcount}
\usepackage{mfirstuc}
\usepackage[width=0.95\textwidth,font={bf,small}]{caption}[2011/08/06]

\usepackage{booktabs}
\usepackage[table]{xcolor}

\usepackage{tikz}
\usepackage{pgfplots}
  \pgfplotsset{compat=newest}
  \pgfplotsset{plot coordinates/math parser=false}

\usepackage{filecontents}
\usepackage[pagewise,displaymath,mathlines]{lineno}
\usepackage{layout}
\usepackage[margin=1in]{geometry}
\usepackage{changepage}
\usepackage{placeins}
\usepackage{paralist}
\usepackage{refcount}

\usepackage[pdftex]{hyperref}


\hypersetup{pdfauthor = Espen Donali}

\hypersetup{pdfdisplaydoctitle=true}
\hypersetup{bookmarks=true}
\hypersetup{pdfpagemode=UseOutlines}
\hypersetup{pdfpagelayout=TwoColumnRight}

\hypersetup{pdfmenubar=true}
\hypersetup{pdftoolbar=true}
\hypersetup{dvips}
\hypersetup{hyperfigures}
\hypersetup{pdfstartview=FitV}

\hypersetup{backref=page}
\hypersetup{pagebackref=true}

\hypersetup{colorlinks=true}
\hypersetup{allcolors=blue}
\hypersetup{linkcolor=blue}
\hypersetup{citecolor=blue}
\hypersetup{urlcolor=blue}
\hypersetup{anchorcolor=red}
\hypersetup{menucolor=red}
\hypersetup{runcolor=red}
\hypersetup{hyperfootnotes=true}



\begin{document}

my test of pandoc latex to word

\end{document}

enter code here

答案1

您已告诉编辑器该文件存储为 latin1 编码

% !TeX encoding   = ISO-8859-1

但是 pandoc 认为它正在读取 UTF-8 编码的文件,因此无法对其进行解码。这些编码对于 ascii 字母是相同的,但对于其他任何内容都不同。

Pandoc 可能有一个选项可以告诉它文件编码,如果没有,您应该让您的编辑器将文件保存为 utf-8。

答案2

Pandoc 使用 UTF-8 字符编码进行输入和输出。如果您的本地字符编码不是 UTF-8,则应通过 iconv 管道输入和输出:

iconv -t utf-8 input.txt | pandoc | iconv -f utf-8

答案3

检查 JabRef 编码

就我而言,我在转换时遇到了类似的错误Pandoc Markdown到 XHTML。罪魁祸首是一组BibTeX 引用哪个贾布雷夫已默认编码ISO8859_1

通过在 JabRef 的菜单中Default encoding:进行设置,可以一劳永逸地改变此默认的 JabRef 行为。UTF8Options > Preferences > General

相关内容