我正在尝试添加自定义块,除了已经定义的块之外划痕3
我创建了一个顶层文件自定义区块.sty目前包含
\ProvidesPackage{customblocks}
\RequirePackage{scratch3}
\definecolor{customcolor}{RGB}{100, 50, 200}
\newcommand*\ovalcustom{\scr_ovalbox0{customcolor}}
我只是尽力复制和修改了scratch3.sty定义如下:
\newcommand*\ovalsensing{%
\scr_ifstar
{\scr_ovalbox1{scrsensing}}
{\scr_ovalbox0{scrsensing}}%
}
\def\scr_blocksensing{\scr_normalblock{scrsensing}}
\newcommand*\boolsensing{\scr_boolbox{scrsensing}}
我在序言中导入了我的自定义包
\usepackage{scratch3}
\usepackage{customblocks}
然后我尝试稍后使用它
\ovalcustom{attempting}
但我明白很多 我认为最终导致的错误是
未定义控制序列。
\ovalcustom ->\scr
_ovalbox0{customcolor}
l.10 \item \ovalcustom
{attempting}错误消息顶行末尾的控制序列
从未被 \def 过
我实际上怎样才能在 scratch3 包顶部添加更多块?
答案1
在顶部 scratch3.sty
你会看到一段代码,主要用来做
\catcode`\_11
并在最后将其恢复。
组成_
一个字母,以便将\scr_normalblock
其视为带有名称的命令scr_normalblock
您正在使用范围为_
数学下标的代码,因此
\scr_normalblock
正在\scr _{n} ormalblock
寻找未定义的命令\scr