\documentclass[UTF8]{ctexart}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[language=C,extendedchars=false,frame=single]
#include <stdio.h>
int main(){
a = "tes测试中英文混杂t mix of Chi测试ne中英文s混杂e and Eng测试中英文混杂lish";
printf(a);
return 0;
}
\end{lstlisting}
\end{document}
没有正确的断行(出了框框)还可以接受,毕竟可以手动换行
但是仔细一看,里面的内容都错了
原文:Chi测试ne中英文s混杂e
PDF:测试中英文混杂Chinese
上网搜索了关于这个宏包的资料。
只要中文和其他字符之间没有空格,就会产生错位的事情。这应该是一个BUG吧,如上例,在中文和英文之间插入空格显然会影响代码的意思。
所以,有没有替代方案,有没有其他宏包来处理代码块?
\usepackage{listings}
\begin{document}
\begin{lstlisting}[language=C,extendedchars=false,frame=single]
#include <stdio.h>
int main(){
a = "tes测试中英文混杂t mix of Chi测试ne中英文s混杂e and Eng测试中英文混杂lish";
printf(a);
return 0;
}
\end{lstlisting}
\end{document}
没有正确的断行(出了框框)还可以接受,毕竟可以手动换行
但是仔细一看,里面的内容都错了
原文:Chi测试ne中英文s混杂e
PDF:测试中英文混杂Chinese
上网搜索了关于这个宏包的资料。
只要中文和其他字符之间没有空格,就会产生错位的事情。这应该是一个BUG吧,如上例,在中文和英文之间插入空格显然会影响代码的意思。
所以,有没有替代方案,有没有其他宏包来处理代码块?