Csvsimple 带有非英语:错误

Csvsimple 带有非英语:错误

尝试解析带有俄语符号的表格。示例 csv 文件:

Название, Автор, Год
Бесы, Достоевский, 1871

无法使用任何命令从此文件创建表格:\csvloop\csvautotabular{table.csv}\csvautobooktabular{table.csv}。但如果所有内容都是英文 — 则完美无缺。
文件table.csvUTF-8 编码,文档使用\usepackage[utf8]{inputenc}\usepackage[english,russian]{babel}

这些是错误:

! Package csvsimple Error: File 'table.csv' starts with an empty line!.
! Missing \endcsname inserted.
! Extra \endcsname.
! File ended while scanning use of \pgfkeys@temp

在文档中或者 Tex 论坛的其他地方找不到有关此问题的任何信息。

示例 .tex 文件:

\documentclass[a4paper,11pt]{ncc}
\usepackage[english,russian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{csvsimple}
\begin{document}
\csvautotabular{table.csv}
\end{document}

答案1

问题有两种类型。

  1. 第一行也用于为列提供符号名称,但西里尔字符不能出现在命令名称中。也许可以通过不解释第一行的选项来解决此问题。

  2. 西里尔字符似乎很容易混淆csvsimple;您需要为每个条目加上括号。

我的建议是使用 XeLaTeX。

\begin{filecontents*}{\jobname.csv}
Название, Автор, Год
Бесы, Достоевский, 1871
\end{filecontents*}

\documentclass[a4paper,11pt]{ncc}
\usepackage[english,russian]{babel}
\usepackage{fontspec}
\usepackage{csvsimple}

\setmainfont{CMU Serif}

\begin{document}
\csvautotabular{\jobname.csv}
\end{document}

filecontents为 CSV 文件使用了不同的名称,只是为了不破坏我的文件并使示例自成一体。

在此处输入图片描述

相关内容