使用逐字复制的代码在文本编辑器中复制后不起作用

使用逐字复制的代码在文本编辑器中复制后不起作用

我正在尝试使用verbatim复制用 编写的算法的实现octave。为此,我在 latex 中引入了以下几行

\begin{verbatim}
F = @(z) [z(1) + 2*z(2) - 2; 2*z(2)*z(3)^2 - 2/3; 2*z(2)*z(3)^4 - 2/5];
\end{verbatim}

这会在 pdf 文档中生成一段代码。但是,当我将生成的 pdf 中的代码复制回文本编辑器时,代码不起作用,因为^复制到文本编辑器中的指数符号与文本编辑器中编写的原始代码不同。这就是问题的证据,当我^从复制的代码块中删除并重写符号时,代码可以正常工作。

如何修复该问题?因为类似函数的目标verbatim是在从 latex 文档复制时准备好使用代码,而不必在运行之前对其进行额外编辑。

编辑

我生成了以下新.tex文件并且它可以运行。

\documentclass[a4paper, 12pt]{book}
\begin{document}

\chapter{Questions}
\begin{verbatim}
F = @(z) [z(1) + 2*z(2) - 2; 2*z(2)*z(3)^2 - 2/3; 2*z(2)*z(3)^4 - 2/5];
\end{verbatim}
\end{document}

为什么它在我的主文件中不起作用.tex?它可能来自我正在使用的所有包吗?

\documentclass[a4paper, 12pt]{book}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{mathtools}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\usepackage{url}
\usepackage{framed}
\usepackage{setspace}
\usepackage{times}
\usepackage{multirow}
\usepackage{listings}

\begin{document}
\setlength{\parindent}{0cm}
\renewcommand{\baselinestretch}{0.5}

答案1

如果您times用该包替换该包(已过时)mathptmx,您的问题应该会得到解决。

相关内容