修改列表源代码

修改列表源代码

我想让学生更难从 PDF 中复制/粘贴代码列表。

如何实现这一点?我希望他们真正理解代码,合上书本,用自己的头脑去写。

目前,lstlisting 设置如下

\lstset{%
    basicstyle=\footnotesize\ttfamily, % Standardschrift
    numbers=left,               % Ort der Zeilennummern
    numberstyle=\tiny,          % Stil der Zeilennummern
    numbersep=5pt,              % Abstand der Nummern zum Text
    tabsize=4,                  % Groesse von Tabs
    extendedchars=true,         %
    breaklines=true,            % Zeilen werden Umgebrochen
    frame=b,         
    showspaces=false,           % Leerzeichen anzeigen ?
    showtabs=false,             % Tabs anzeigen ?
    xleftmargin=17pt,
    showstringspaces=false      % Leerzeichen in Strings anzeigen ?        
    keywordstyle=\color{Red},
    stringstyle=\color{OliveGreen},
    identifierstyle=\color{Blue},
    frame=shadowbox,
    rulesepcolor=\color{Gray},
    escapeinside={\%*}{*)},         % if you want to add a comment within your code
    mathescape=false,
    columns=flexible
}

答案1

使用独立课程并制作仅包含代码的 pdf。现在将其作为图形图像放回您的说明中。虽然有方法可以从图像中提取文本,但初级程序员不太可能知道如何操作。此外,如果您想让使用任何形式的复制 OCR 分析变得更加困难,那么请手动编写代码,然后将其扫描为要包含的图像。作为一名计算机科学讲师,我警告学生,如果他们不亲自学习基础知识,那么这种早期采取的“捷径”将在课程后期变得非常明显并受到惩罚,届时任何补救措施都将非常困难。

答案2

不要给他们 pdf!给他们一张纸;然后他们就被迫输入代码。这就是我与 LaTeX 学生合作的方式。当他们都收到不同的错误和警告消息时,他们就会准备好代码以包含在他们自己的 LaTeX 代码中。

有了showspaces=true它,showstringspaces=true学生们复制代码可能会变得有点困难。

相关内容