Menu

#8 scrwfile + scrlayer-notecolumn + \tableofcontents not compatible?

LaTeX 2021-06-01
closed
2021-05-30
2021-05-29
No

Hello,

I'm using the packages scrwfile (for multiple tocs after each chapter), scrlyaer-notecolumn (for putting text into the margin column) and of course \tableofcontents. But somehow this doesn't work anymore since I made a new update of my packages (29.05.2021, MiKTeX, TeXStudio, pdflatex). All notes with e.g. \makenote[marginpar]{...} won't be printed, why? I made an example (which doesn't work):

\documentclass{scrreprt}%
\usepackage{scrlayer-scrpage}%
\usepackage{scrlayer-notecolumn}%
\usepackage{scrwfile}% 1) When I load this AND use \tableofcontents, then \makenote doesn't work anymore (doesn't print anything into the margin column). 

\begin{document}
    \tableofcontents% 2)
    Hello\makenote[marginpar]{I am here.} World.
\end{document}

It would be nice if anybody knows why this happens. Thanks in advance. :D

Michael Labenbacher
michael @ labenbacher . at

1 Attachments

Related

Wiki (Deutsch): Release 3.33
Wiki (English): Release 3.33

Discussion

  • Michael Labenbacher

    In the Attachment main.tex it's correct the example, but of course in the example above the brackets have been deleted......., I meant something like \makenote[marginpar] {I am here}

     

    Last edit: Michael Labenbacher 2021-05-29
  • Markus Kohm

    Markus Kohm - 2021-05-30
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1,7 +1,8 @@
     Hello, 
    
    -I'm using the packages scrwfile (for multiple tocs after each chapter), scrlyaer-notecolumn (for putting text into the margin column) and of course \tableofcontents. But somehow this doesn't work anymore since I made a new update of my packages (29.05.2021, MiKTeX, TeXStudio, pdflatex). All notes with e.g. \makenote[marginpar]{...} won't be printed, why? I made an example (which doesn't work):
    +I'm using the packages `scrwfile` (for multiple tocs after each chapter), `scrlyaer-notecolumn` (for putting text into the margin column) and of course `\tableofcontents`. But somehow this doesn't work anymore since I made a new update of my packages (29.05.2021, MiKTeX, TeXStudio, pdflatex). All notes with e.g. `\makenote[marginpar]{...}` won't be printed, why? I made an example (which doesn't work):
    
    +```latex
     \documentclass{scrreprt}%
     \usepackage{scrlayer-scrpage}%
     \usepackage{scrlayer-notecolumn}%
    @@ -11,6 +12,7 @@
        \tableofcontents% 2)
        Hello\makenote[marginpar]{I am here.} World.
     \end{document}
    +```
    
     It would be nice if anybody knows why this happens. Thanks in advance. :D
    
     
  • Markus Kohm

    Markus Kohm - 2021-05-30
     
  • Markus Kohm

    Markus Kohm - 2021-05-30

    As usual Ulrike's solution works and indeed scrwfile could add a rule for this. Because scrwfile patches the LaTeX kernel the manual should also be changed to recommend to load it even before \documentclass.

    And maybe the paragraph:

    For some time, the simplest solution to this problem has been to use LuaLaTeX instead of pdfLaTeX or XeLaTeX. This eliminates the restriction, and the maximum number of files you can have open for writing is then limited only by the operating system. In reality, you usually so not need to worry about it any more.

    should be changed to be less subtly and more a definite recommendation to use LuaLaTeX instead of scrwfile, to eliminate “! No room for a new \write” errors.

    Thank you for your report.

     
  • Markus Kohm

    Markus Kohm - 2021-05-30
    • labels: --> scrwfile bug
    • assigned_to: Markus Kohm
     
  • Markus Kohm

    Markus Kohm - 2021-05-30
    • status: open --> closed
     
  • Markus Kohm

    Markus Kohm - 2021-05-30

    Fixed in [r3598]

     

    Related

    Commit: [r3598]

  • U_Fischer

    U_Fischer - 2021-05-30

    loading scrwfile before \documentclass errors in latex-dev as \@raw@classoptionslist isn't defined (I will check if we should set it too relax, like \@classoptionslist, but this error with scrwfile too).

     

    Last edit: U_Fischer 2021-05-30
    • Markus Kohm

      Markus Kohm - 2021-05-30

      Thanks.

      \RequirePackage{scrwfile}
      \documentclass{article}
      \usepackage{blindtext}
      \begin{document}
      \tableofcontents
      \blinddocument
      \end{document}
      

      does work with [r3599].

      The main problem was tocbasic. But tocbasic is only needed for \TOCclone. And because \TOCclone does make sense only in the document preamble, this have been fixed by moving \RequirePackage{tocbasic} into \TOCclone. This could also solve problems in using scrwfile with classes or other packages which are incompatible with tocbasic.

       

      Related

      Commit: [r3599]

  • Michael Labenbacher

    Furthermore can anybody try this and see if it also produces two entries '1' into the margin column:

    \RequirePackage{scrwfile}%
    \documentclass{scrreprt}%
    \usepackage{scrlayer-scrpage}%
    \usepackage{scrlayer-notecolumn}%
    
    \begin{document}%
    X\makenote[marginpar]{1}% Should be printed only once, but is done twice now due to using -->
    \tableofcontents%
    \tableofcontents%, Problem when multiple tables...?
    \end{document}%
    

    Ulrike (https://tex.stackexchange.com/) meant that it is an old bug and not related to changes in the hooks in latex because she checked it in texlive 2019 and 2018. Is this intended or a bug? Nonetheless thanks Markus for reminding me that I should just use lualatex, works perfectly (without scrwfile) there. :D

     
    • Markus Kohm

      Markus Kohm - 2021-05-30

      This is a completely different issue and should be reported on its own.

      However I've fixed it in [r3600] and [r3601].

       

      Related

      Commit: [r3600]
      Commit: [r3601]


      Last edit: Markus Kohm 2021-05-30

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.