Problemi con multicol

  • Creatore
    Topic
  • #44423
    Up
    0
    Down
    ::


    Spero che l’argomento non sia stato già trattato…
    Devo bilanciare le ultime due colonne dell’indice dei nomi e ho provato ad utilizzare il codice presente nella guida di Pantieri, ma ho subito un problema: caricando il pacchetto multicol mi dà il seguente errore:
    No room for a new \dimen \ch@ck … \else \errmessage {no room for a new #3}
    Riporto di seguito la macro che definisce l’ambiente di makeindex:
    \renewcommand{\edindex}[1]{\index{#1}}
    \newcommand{\formatonota}[1]{\textbf{#1}}
    \newcommand{\nindex}[1]{\index{#1|formatonota}}
    dove \edindex e \nindex sono i nomi che compaiono rispettivamente nel testo e nelle note.
    Il pacchetto multicol è sicuramente caricato in quanto ho la versione completa di MiKTeX: dove sto sbagliando?
    Grazie al solito in anticipo,
    Luca

Visualizzazione 11 filoni di risposte
  • Autore
    Risposte
    • #44424
      Up
      0
      Down
      ::

      Spero che l’argomento non sia stato già trattato…
      Devo bilanciare le ultime due colonne dell’indice dei nomi e ho provato ad utilizzare il codice presente nella guida di Pantieri, ma ho subito un problema: caricando il pacchetto multicol mi dà il seguente errore:
      No room for a new \dimen \ch@ck … \else \errmessage {no room for a new #3}
      Riporto di seguito la macro che definisce l’ambiente di makeindex:
      \renewcommand{\edindex}[1]{\index{#1}}
      \newcommand{\formatonota}[1]{\textbf{#1}}
      \newcommand{\nindex}[1]{\index{#1|formatonota}}
      dove \edindex e \nindex sono i nomi che compaiono rispettivamente nel testo e nelle note.
      Il pacchetto multicol è sicuramente caricato in quanto ho la versione completa di MiKTeX: dove sto sbagliando?
      Grazie al solito in anticipo,
      Luca

      Serve un esempio compilabile.

      Ciao
      Ivan

    • #44425
      Up
      0
      Down
      ::

      Spero che l’argomento non sia stato già trattato…
      Devo bilanciare le ultime due colonne dell’indice dei nomi e ho provato ad utilizzare il codice presente nella guida di Pantieri, ma ho subito un problema: caricando il pacchetto multicol mi dà il seguente errore:
      No room for a new \dimen \ch@ck … \else \errmessage {no room for a new #3}
      Riporto di seguito la macro che definisce l’ambiente di makeindex:
      \renewcommand{\edindex}[1]{\index{#1}}
      \newcommand{\formatonota}[1]{\textbf{#1}}
      \newcommand{\nindex}[1]{\index{#1|formatonota}}
      dove \edindex e \nindex sono i nomi che compaiono rispettivamente nel testo e nelle note.
      Il pacchetto multicol è sicuramente caricato in quanto ho la versione completa di MiKTeX: dove sto sbagliando?
      Grazie al solito in anticipo,
      Luca

      Metti, subito dopo la riga di \documentclass,
      `\usepackage{etex}`
      Ciao
      Enrico

    • #44426
      Up
      0
      Down
      ::


      Grazie Enrico!!!
      Ho caricato il pacchetto, decommentato multicol e… nessun errore. A questo punto, positivamente sorpreso, ho inserito nel preambolo il codice riportato nella guida di Pantieri per bilanciare le colonne dell’ultima pagina dell’indice dei nomi, e con grande soddisfazione funziona tutto alla perfezione. Che dire, se non ancora grazie?
      Confesso che ho provato a curiosare nella tua guida per capire cosa aggiunge in più etex, ma mi sono fatto solo una vaga idea…
      Ciao,
      Luca

      P.S. Grazie comunque anche ad Ivan, e dalla prossima volta proverò ad inserire sempre un es. compilabile!

    • #44427
      Up
      0
      Down
      ::

      Grazie Enrico!!!
      Ho caricato il pacchetto, decommentato multicol e… nessun errore. A questo punto, positivamente sorpreso, ho inserito nel preambolo il codice riportato nella guida di Pantieri per bilanciare le colonne dell’ultima pagina dell’indice dei nomi, e con grande soddisfazione funziona tutto alla perfezione. Che dire, se non ancora grazie?
      Confesso che ho provato a curiosare nella tua guida per capire cosa aggiunge in più etex, ma mi sono fatto solo una vaga idea…
      Ciao,
      Luca

      P.S. Grazie comunque anche ad Ivan, e dalla prossima volta proverò ad inserire sempre un es. compilabile!

      Se usi molti pacchetti, in particolare quelli grafici, rischi di esaurire i 256 registri per interi o dimensioni. Con il pacchetto etex abiliti l’uso dei registri “estesi”: e-TeX ne ha 32768, più che sufficienti per qualsiasi documento.

      Ciao
      Enrico

    • #44428
      robitex
      Amministratore del forum
        Up
        0
        Down
        ::

        Grazie Enrico!!!
        Ho caricato il pacchetto, decommentato multicol e… nessun errore. A questo punto, positivamente sorpreso, ho inserito nel preambolo il codice riportato nella guida di Pantieri per bilanciare le colonne dell’ultima pagina dell’indice dei nomi, e con grande soddisfazione funziona tutto alla perfezione. Che dire, se non ancora grazie?
        Confesso che ho provato a curiosare nella tua guida per capire cosa aggiunge in più etex, ma mi sono fatto solo una vaga idea…
        Ciao,
        Luca

        P.S. Grazie comunque anche ad Ivan, e dalla prossima volta proverò ad inserire sempre un es. compilabile!

        Se usi molti pacchetti, in particolare quelli grafici, rischi di esaurire i 256 registri per interi o dimensioni. Con il pacchetto etex abiliti l’uso dei registri “estesi”: e-TeX ne ha 32768, più che sufficienti per qualsiasi documento.

        Ciao
        Enrico

        …ma pdftex non abilita le funzionalità etex di default?
        non so, ma ipotizzo che la distribuzione di luca.sartorello sia un po’ datata.
        Bye

      • #44429
        Up
        0
        Down
        ::


        Grazie Enrico per le ulteriori delucidazioni, sempre interessanti. Non credo di aver caricato troppi pacchetti, ma ho il sospetto che il responsabile sia ledmac, e proprio nella guida del pacchetto mi pareva di aver letto qualcosa inerente ad un problema di memoria.
        Per robitex: no, ho l’ultima versione di MiKTeX che tengo sempre aggiornata. Piuttosto una curiosità. In Linux, con kile (e con lo stesso file), non mi si presentava il problema, ma non chiedermi perché allora sono passato (spero solo temporaneamente) a MiKTeX in windows, ché sarebbe troopo lungo…
        Ciao,
        Luca

      • #44430
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::

          Grazie Enrico per le ulteriori delucidazioni, sempre interessanti. Non credo di aver caricato troppi pacchetti, ma ho il sospetto che il responsabile sia ledmac, e proprio nella guida del pacchetto mi pareva di aver letto qualcosa inerente ad un problema di memoria.
          Per robitex: no, ho l’ultima versione di MiKTeX che tengo sempre aggiornata. Piuttosto una curiosità. In Linux, con kile (e con lo stesso file), non mi si presentava il problema, ma non chiedermi perché allora sono passato (spero solo temporaneamente) a MiKTeX in windows, ché sarebbe troopo lungo…
          Ciao,
          Luca

          Credo che TeX sia sempre TeX e quindi ci sia stato qualche cambiamento nei pacchetti o nel sorgente da quando usavi una distro sotto linux.

          Ti riporto i messaggi di inizio compilazione di un qualsiasi sorgente (distro TeX Live 2009 sotto windows xp):
          `C:\>pdflatex esempio
          This is pdfTeX, Version 3.1415926-1.40.10 (Web2C 2009)
          entering extended mode
          (./esempio.tex
          LaTeX2e <2009/09/24>
          …ecc
          `
          come vedi esce il messaggio “entering extended mode” quindi etex dovrebbe essere caricato. Forse MiKTeX non lo prevede o forse serve caricare etex comunque.
          bye

        • #44431
          Up
          0
          Down
          ::

          Grazie Enrico per le ulteriori delucidazioni, sempre interessanti. Non credo di aver caricato troppi pacchetti, ma ho il sospetto che il responsabile sia ledmac, e proprio nella guida del pacchetto mi pareva di aver letto qualcosa inerente ad un problema di memoria.
          Per robitex: no, ho l’ultima versione di MiKTeX che tengo sempre aggiornata. Piuttosto una curiosità. In Linux, con kile (e con lo stesso file), non mi si presentava il problema, ma non chiedermi perché allora sono passato (spero solo temporaneamente) a MiKTeX in windows, ché sarebbe troopo lungo…
          Ciao,
          Luca

          Credo che TeX sia sempre TeX e quindi ci sia stato qualche cambiamento nei pacchetti o nel sorgente da quando usavi una distro sotto linux.

          Ti riporto i messaggi di inizio compilazione di un qualsiasi sorgente (distro TeX Live 2009 sotto windows xp):
          `C:\>pdflatex esempio
          This is pdfTeX, Version 3.1415926-1.40.10 (Web2C 2009)
          entering extended mode
          (./esempio.tex
          LaTeX2e <2009/09/24>
          …ecc
          `
          come vedi esce il messaggio “entering extended mode” quindi etex dovrebbe essere caricato. Forse MiKTeX non lo prevede o forse serve caricare etex comunque.
          bye

          Il fatto che esca “extended mode” significa che si sta usando un motore tipografico con le estensioni e-TeX; ma LaTeX, di per sé, non le prevede e usa il classico meccanismo di allocazione con 256 registri a disposizione. Per poter usare i registri più alti, occorre comunque caricare etex: se non ci fosse quel messaggio, non si potrebbe caricare etex! Se con MiKTeX si presenta il problema e su una TeX Live no, significa che i file di configurazione propri di MiKTeX allocano qualche registro per conto loro: così su questa piattaforma si sfora, sull’altra no.

          Ciao
          Enrico

        • #44432
          Up
          0
          Down
          ::


          Grazie al solito per le dotte spiegazioni: ora la nebbia è un po’ meno fitta…
          Ciao,
          Luca

        • #44433
          Up
          0
          Down
          ::

          Credo che TeX sia sempre TeX e quindi ci sia stato qualche cambiamento nei pacchetti o nel sorgente da quando usavi una distro sotto linux.

          Ti riporto i messaggi di inizio compilazione di un qualsiasi sorgente (distro TeX Live 2009 sotto windows xp):
          `C:\>pdflatex esempio
          This is pdfTeX, Version 3.1415926-1.40.10 (Web2C 2009)
          entering extended mode
          (./esempio.tex
          LaTeX2e <2009/09/24>
          …ecc
          `
          come vedi esce il messaggio “entering extended mode” quindi etex dovrebbe essere caricato. Forse MiKTeX non lo prevede o forse serve caricare etex comunque.
          bye

          Cercati il log pdflatex.log e guarda dentro:
          nel mio caso le prime righe dicono:

          `This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009) (INITEX) 17 NOV 2009 09:52
          entering extended mode
          %&-line parsing enabled.
          (/opt/TeXLive2009/tl2009/texmf/web2c/cp227.tcx)
          ***pdflatex.ini
          (/opt/TeXLive2009/tl2009/texmf-dist/tex/latex/latexconfig/pdflatex.ini
          `
          Se poi guardi
          /opt/TeXLive2009/tl2009/texmf-dist/tex/latex/latexconfig/pdflatex.ini

          vedi
          `
          % Thomas Esser, 1998. public domain.
          \input pdftexconfig.tex
          \scrollmode
          \input latex.ltx
          \endinput
          `

          Se c’è etex, bene, altrimenti se non ti piace puoi sempre modificare il formato:

          `

          % latex-tds.ini
          % 2008/08/08 v1.1
          % Copyright 2007, 2008 Heiko Oberdiek
          %
          % This file is part of project `latex-tds'.
          %
          % It may be distributed and/or modified under the
          % conditions of the LaTeX Project Public License, either version 1.3
          % of this license or (at your option) any later version.
          % The latest version of this license is in
          % http://www.latex-project.org/lppl.txt
          % and version 1.3c or later is part of all distributions of LaTeX
          % version 2005/12/01 or later.
          %
          % This work has the LPPL maintenance status `maintained'.
          %
          % The Current Maintainer of this work is Heiko Oberdiek.
          %
          % See `readme.txt' for a list of all files belonging to the
          % project `latex-tds' and additional information.
          %
          % 2007/10/17 v1.0
          % 2008/08/08 v1.1: Packages `ifvtex', `ifxetex', and `pdfescape' added.
          %
          \input pdftexconfig %
          \pdfoutput=1 %
          \scrollmode
          \let\SavedDump\dump
          \let\dump\relax
          \input latex.ltx %
          \errorcontextlines=\maxdimen
          \RequirePackage{keyval}
          \RequirePackage{url}
          \RequirePackage{infwarerr}[2007/09/09]
          \RequirePackage{atbegshi}[2007/09/09]
          \RequirePackage{auxhook}[2007/04/06]
          \RequirePackage{etexcmds}[2007/09/09]
          \RequirePackage{ifpdf}[2007/09/09]
          \RequirePackage{ifvtex}[2007/09/09]
          \RequirePackage{ifxetex}
          \RequirePackage{intcalc}[2007/09/27]
          \RequirePackage{bigintcalc}[2007/09/27]
          \RequirePackage{kvoptions}[2007/10/11]
          \RequirePackage{kvsetkeys}[2007/09/29]
          \RequirePackage{bitset}[2007/09/28]
          \RequirePackage{refcount}[2006/02/20]
          \RequirePackage{pdfescape}[2007/11/11]
          \expandafter\def\csname ver@thumbpdf.sty\endcsname{0000/00/00}
          \let\dump\SavedDump
          \let\SavedDump\UNDEFINED
          \dump
          \endinput
          `

        • #44434
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Sì, il problema risiede nel meccanismo che usa LaTeX per allocare i registri (contatori, lunghezze, ecc.)
            Se si allocano “a mano”, si salta il controllo di LaTeX sul fatto che il numero di quel registro sia superiore a 255 o inferiore a 256, indipendentemente dal pacchetto etex; questo serve appunto per modificare il comando di allocazione con le sue verifiche.
            La soluzione di Luigi, inventata da Heiko Oberdiek è la solita magia di Heiko; forse è persino un po’ troppo, ma funziona e aggiunge la formato molto di più della semplice correzione delle verifiche sui registri.

          • #44435
            Up
            0
            Down
            ::

            Sì, il problema risiede nel meccanismo che usa LaTeX per allocare i registri (contatori, lunghezze, ecc.)
            Se si allocano “a mano”, si salta il controllo di LaTeX sul fatto che il numero di quel registro sia superiore a 255 o inferiore a 256, indipendentemente dal pacchetto etex; questo serve appunto per modificare il comando di allocazione con le sue verifiche.
            La soluzione di Luigi, inventata da Heiko Oberdiek è la solita magia di Heiko; forse è persino un po’ troppo, ma funziona e aggiunge la formato molto di più della semplice correzione delle verifiche sui registri.

            Creare il formato in quel modo non amplia il numero di registri (provato un minuto fa). Occorrere aggiungere la chiamata di etex e, naturalmente, creare il formato dando l’opzione -etex alla riga di comando.

            Ciao
            Enrico

        Visualizzazione 11 filoni di risposte
        • Devi essere connesso per rispondere a questo topic.

        Go to top