命令 csvloop 已定义...我如何找到冲突的包?

命令 csvloop 已定义...我如何找到冲突的包?

在此 MWE 中:

\documentclass[12pt]{article}

\usepackage[slovene]{babel}

\usepackage{lipsum}

\usepackage{acronym}

\usepackage{graphicx}

\usepackage{mathpazo}

\usepackage{longtable}
\usepackage{csvsimple}

\usepackage[obeyspaces,spaces]{url}
\usepackage{hyperref}
\usepackage{nameref}

\usepackage{amsmath}
\usepackage{mathtools}

\usepackage{color}
\usepackage{xcolor}
    \definecolor{code_linenumbers_b}{RGB}{215,215,215}
    \definecolor{code_linenumbers}{RGB}{255,255,255}
    \definecolor{code_background}{RGB}{240,240,240}
    \definecolor{code_comments}{RGB}{185,185,185}
    \definecolor{code_borders}{RGB}{7,161,226}
    \definecolor{code_keyword}{RGB}{0,0,0}
    \definecolor{headings}{RGB}{7,161,226}

\usepackage{menukeys}

\setlength{\parindent}{0pt}
\setlength{\parskip}{1em}

\usepackage{mathspec}

\usepackage{titlesec}
    \titleformat*{\section}{\headingfont\Large\bfseries}
    \titleformat*{\subsection}{\headingfont\large\bfseries}
    \titleformat*{\subsubsection}{\headingfont\normalsize\bfseries}

\usepackage[
    paperwidth=210mm,
    paperheight=297mm,
    top=3cm,
    left=2cm,
    right=2cm,
    bottom=2cm,
    footskip=1cm,
    marginparsep=0cm,
    marginparwidth=0cm,
    headheight=1.7cm
]{geometry}

\usepackage{fancyhdr}
    \pagestyle{fancy}
    \fancyhf{}
    \rfoot{Stran \thepage}
    \lhead{Kicad \& Freecad interoperability for electronics}
    \rhead{...}

\usepackage{listings}
    \lstset{
        keepspaces=true,

        frame=l,
        captionpos=b,
        numbersep=3.5mm,
        xleftmargin=0.35cm,
        xrightmargin=0cm,
        framesep=0mm,
        framexleftmargin=2.5mm,
        framerule=0.5mm,

        rulecolor=\color{code_borders},
        fillcolor=\color{code_linenumbers_b},
        backgroundcolor=\color{code_background},

        basicstyle=\ttfamily\color{black},
        keywordstyle=\ttfamily\bfseries\color{code_keyword},
        commentstyle=\ttfamily\itshape\color{code_comments},
        numberstyle=\ttfamily\bfseries\color{code_linenumbers},

        tabsize=3,
        breaklines=true,
        columns=fullflexible,
        showspaces=false,
        breakatwhitespace=true,
        breakautoindent=false
    }

\addto\captionsslovene{\renewcommand{\lstlistingname}{Datoteka}}

\begin{document}
...
\end{document}

如果我保留这些包,\usepackage{csvsimple}我会在编译时收到警告:

! LaTeX Error: Command '\csvloop ' is already defined.

但如果我将其注释掉,编译就会成功。

而且没有任何提示表明哪两个包可能发生了冲突。有人知道是哪两个吗?我该如何解决这个冲突?

答案1

显然,您可以在计算机上的所有软件包文件中搜索,也可以在文档中\csvloop插入一堆,以查看它的定义位置。但这里有一个快速巧妙的技巧应该有效。在文档的最开头放置\show\cvsloop

\outer\def\csvloop{}

当某些东西尝试定义它时,这会导致错误(但不能绝对保证)。

(我从来没想过我会看到 的实际良好用途\outer。)

相关内容