上下文:如果列和位置图位于同一文档中,则会出现错误

上下文:如果列和位置图位于同一文档中,则会出现错误

如果我在同一个文档中使用\startcolumns ... \stopcolumns和,\placefigure[right]我会收到错误消息\placefigure: Undefined control sequence

\starttext
\startbodymatter
Text
\startcolumns[n=2,rule=on]
Text
\column
Text
\stopcolumns
\placefigure[right,nonumber]{Text}{\externalfigure[Picture.jpg]}
\stopbodymatter
\stoptext

\startcolums如果我删除从到的行,\stopcolumns那就没问题了。另一方面,如果我删除命令right中的位置\placefigure,那也没问题。列和图形位置的组合right会导致错误。有人能帮我吗?

这是日志文件的内容:

open source     > level 1, order 1, name '/usr/share/texmf/tex/context/base/mkiv/cont-yes.mkiv'
system          > 
system          > ConTeXt  ver: 2018.04.04 00:51 MKIV beta  fmt: 2020.1.3  int: english/english
system          > 
system          > 'cont-new.mkiv' loaded
open source     > level 2, order 2, name '/usr/share/texmf/tex/context/base/mkiv/cont-new.mkiv'
close source    > level 2, order 2, name '/usr/share/texmf/tex/context/base/mkiv/cont-new.mkiv'
system          > files > jobname 'Test2', input './Test2', result 'Test2'
fonts           > latin modern fonts are not preloaded
languages       > language 'en' is active
open source     > level 2, order 3, name '/home/oliver/Context/Test2.tex'
fonts           > preloading latin modern fonts (second stage)
fonts           > 'fallback modern-designsize rm 12pt' is loaded
structures      > begin of sectionblock 'bodypart'
columns         > balanced in '1' step(s)
floatblocks     > '1' placed (right)


tex error       > tex error on line 9 in file /home/oliver/Context/Test2.tex: ! Undefined control sequence

<argument> \d_strc_floats_margin 

\strc_floats_mark_as_free ...d_free_offset_left #2
                                                  \d_free_offset_right #3\d_...
\strc_floats_mark_par_as_free ...sides_bottomskip 
                                                  \or \strc_floats_mark_as_f...
\page_sides_push_float_inline ...mark_par_as_free 
                                                  \ifcase \c_page_sides_floa...
\page_sides_place_float ...des_place_float_normal 
                                                  \fi \par \kern -\d_page_si...
\page_sides_handle_float ...age_sides_place_float 
                                                  \page_sides_check_floats_r...
...
l.9 ...nonumber]{Text}{\externalfigure[Picture.jpg]}                                           

 1     \starttext
 2     \startbodymatter
 3     Text
 4     \startcolumns[n=2,rule=on]
 5     Text
 6     \column
 7     Text
 8     \stopcolumns
 9 >>  \placefigure[right,nonumber]{Text}{\externalfigure[Picture.jpg]}
10     \stopbodymatter
11     \stoptext
12     

答案1

当你查看日志文件时,你可以看到你的 ConTeXt 版本来自2018 年 4 月 4 日而前一天内部登记册的名称\d_strc_floats_margin更改为\d_page_sides_margin

system          > ConTeXt  ver: 2018.04.04 00:51 MKIV beta  fmt: 2020.1.3  int: english/english

而两个文件中的寄存器名称均已更改strc-flt.mkvipage-sid.mkiv该文件anch-bck.mkvi被遗忘,并在一周后得到修复。

您可以看到,问题出在日志文件中,其中 TeX 抱怨命令不存在:

tex error       > tex error on line 9 in file /home/oliver/Context/Test2.tex: ! Undefined control sequence

<argument> \d_strc_floats_margin

解决此问题的唯一方法是安装已修复此问题的较新版本的 ConTeXt。

相关内容