problemone con l’uso di \input

  • Creatore
    Topic
  • #61751
    Up
    0
    Down
    ::


    Come ho già scritto in passato, mi sto facendo pian piano un libretto che contiene i testi con traduzione di circa 200 cantate di Bach.
    Ho messo ciascuna cantata in un file separato, chiamandolo col numero della cantata. Nel file principale tutte le cantate vengono inserite con un’istruzione del tipo:

    \input{BWV/x/079}

    Adesso mi succede che la compilazione si interrompa. Vado a vedere cosa è successo, e trovo che il file della cantata su cui si è interrotta la compilazione risulta corrotto (a volte è illeggibile, pieno dei caratteri asci non alfanumerici, a volte in parte corrotto e in parte inalterato, a volte ci sono alcune righe leggibili inserite alla fine in sostituzione a ciò che era scritto prima (per esempio ho trovato scritto: /FontDescriptor 27 ).

    Sembra quasi che i file vengano aperti e non chiusi, per cui alla successiva compilazione risultano corrotti. Correggo i file corrotti, faccio ricompilare, tutto funziona, ma alla successiva compilazione si interrompe di nuovo.

    Pensavo fosse il mio disco rigido rovinato, ma a questo punto sospetto che ci sia un qualche errore nel file tex principale. Inoltre mi viene il dubbio che ci sia un limite nell’uso di \input. Adesso sto fondendo pian piano i file singoli in un unico file, in maniera da evitare l’uso di \input, però mi piacerebbe capire cosa sta succedendo.

    Aggiungo che non credo possa essere un virus (ho l’antivirus funzionante)

Visualizzazione 4 filoni di risposte
  • Autore
    Risposte
    • #61752
      Up
      0
      Down
      ::

      Come ho già scritto in passato, mi sto facendo pian piano un libretto che contiene i testi con traduzione di circa 200 cantate di Bach.
      Ho messo ciascuna cantata in un file separato, chiamandolo col numero della cantata. Nel file principale tutte le cantate vengono inserite con un’istruzione del tipo:

      \input{BWV/x/079}

      Adesso mi succede che la compilazione si interrompa. Vado a vedere cosa è successo, e trovo che il file della cantata su cui si è interrotta la compilazione risulta corrotto (a volte è illeggibile, pieno dei caratteri asci non alfanumerici, a volte in parte corrotto e in parte inalterato, a volte ci sono alcune righe leggibili inserite alla fine in sostituzione a ciò che era scritto prima (per esempio ho trovato scritto: /FontDescriptor 27 ).

      Sembra quasi che i file vengano aperti e non chiusi, per cui alla successiva compilazione risultano corrotti. Correggo i file corrotti, faccio ricompilare, tutto funziona, ma alla successiva compilazione si interrompe di nuovo.

      Pensavo fosse il mio disco rigido rovinato, ma a questo punto sospetto che ci sia un qualche errore nel file tex principale. Inoltre mi viene il dubbio che ci sia un limite nell’uso di \input. Adesso sto fondendo pian piano i file singoli in un unico file, in maniera da evitare l’uso di \input, però mi piacerebbe capire cosa sta succedendo.

      Aggiungo che non credo possa essere un virus (ho l’antivirus funzionante)

      \input non scrive mai niente. Il problema è da un’altra parte.

      Ciao
      Enrico

    • #61753
      Up
      0
      Down
      ::

      Il problema è da un’altra parte

      cioè nel mio computer? o può esserci qualche errore nel mio file tex?
      non ci sono limiti al numero di file inseriti con \input?

    • #61754
      Up
      0
      Down
      ::

      Il problema è da un’altra parte

      cioè nel mio computer? o può esserci qualche errore nel mio file tex?
      non ci sono limiti al numero di file inseriti con \input?

      Non so dove possa essere il problema. Di sicuro non è possibile che \input corrompa un file perché si limita a leggerlo.

      Hai qualche macro che scrive su file ausiliari?

      Ciao
      Enrico

    • #61755
      Up
      0
      Down
      ::


      Ho scritto alcune macro in lua per sostituire i caratteri e per fare altre operazioni sui file tirati giù da internet, aprivano e chiudevano i file uno alla volta, ma non ci sono stati problemi, e comunque un volta fatte le varie sostituzioni non le ho più usate. Qusto è il file principale:

      .`
      \documentclass[a4paper, 10pt]{book}
      \usepackage{geometry}
      \geometry{paperwidth=100mm,paperheight=290mm}
      \setlength{\voffset}{-2em}
      \addtolength{\textheight}{+10em}

      \input{BachCantatas_uCmd.tex}

      \newcounter{CDnum}
      \newcounter{CDtrack}

      \begin{document}

      \setcounter{CDnum}{1}
      \setcounter{CDtrack}{1}
      \input{BWV/x/001}
      \input{BWV/x/002}
      \input{BWV/x/003}
      \stepcounter{CDnum}
      \setcounter{CDtrack}{1}
      \input{BWV/x/004}
      \input{BWV/x/005}
      \input{BWV/x/006}

      […]
      \end{document}
      `

      Questo il file con i comandi (chiedo venia se trovi cose ingenue o assurde)
      `

      \usepackage[latin,italian,german]{babel}
      \usepackage{verse}
      \setlength{\leftmargini}{1em} %%% pacchetto verse – regola il rientro della strofa rispetto al margine sinistro standard (nota: leftmargini con la 'i' finale!)
      \addtolength{\vgap}{-0.5em} %%% pacchetto verse – regola il rientro dei versi rientrati con \vin

      \usepackage{pifont} %simboli = stelle, ecc
      \usepackage{bbding} %simboli = stelle, ecc

      \usepackage{textcomp} %%% per i numeri old style
      \usepackage{ifthen}
      \usepackage{fancyhdr}

      %%% intestazione **********************

      \pagestyle{fancy} \fancyhf{}
      \renewcommand{\chaptermark}[1]{}
      \renewcommand{\sectionmark}[1]{}

      \newcommand\combinemarks{\ifthenelse {\equal{\leftmark}{\rightmark}}
      {\rightmark }
      {\rightmark \space – \leftmark}
      }

      \fancyhead{} %%% SERVE A CANCELLARE TUTTI I COMPI STANDARD
      \fancyhead[RO,LE]{\combinemarks}
      \fancyhead[LO,RE]{\tiny CD \theCDnum\normalsize }

      \fancyfoot[LE,RO]{\thepage}
      \renewcommand{\headrulewidth}{0.4pt}

      %%% fine intestazione

      \newcommand\cTitle[2]{\noindent\normalsize \textbf{#1}\newline\scriptsize\textbf{\textsl{#2}}\newline\markboth{#1}{#1}}
      \newcommand\cSection[2]{\noindent \textbf{#1}\hspace{\stretch{1}}\tiny [\theCDtrack\stepcounter{CDtrack}]\scriptsize \newline #2 }
      \newcommand\cVoice[1]{\textsc{#1} }
      \newcommand\chorus[1]{#1}
      \newcommand\cEnd{\\* \vspace{1ex} \newline \vspace{2ex} \hspace{\stretch{1}} \JackStar \hspace{\stretch{1}} \newline }
      \newcommand\cSep{ \space \ding{84} \space }
      \newcommand\cS{ } %{ / }

      \newenvironment{cInf}{\noindent}{}
      \newenvironment{cTrd}{\begin{quote}\em}{\end{quote}\par}
      `

      e questo infine è un file tipico per la singola cantata
      `
      \cTitle{BWV 1}{Wie sch”on leuchtet der Morgenstern}

      \cSection{\oldstylenums{1}. (Coro)}{Corno I/II, Oboe da caccia I/II, Violino concertante I/II, Violino ripieno I/II, Viola, Continuo}

      \begin{verse}
      \chorus{Wie sch”on leuchtet der Morgenstern \\
      Voll Gnad und Wahrheit von dem Herrn, \\
      Die s”u”se Wurzel Jesse! \\
      Du Sohn Davids aus Jakobs Stamm, \\
      Mein K”onig und mein Br”autigam, \\
      Hast mir mein Herz besessen, \\
      Lieblich, \\
      Freundlich, \\
      Sch”on und herrlich, gro”s und ehrlich, reich von Gaben, \\
      Hoch und sehr pr”achtig erhaben.}
      \end{verse}

      \begin{cTrd}
      Quanto bella brilla la stella del mattino\cS piena di grazia e di verit\`a del Signore,\cS la dolce radice di Jesse!\cS tu figlio Davide della stirpe di Giacobbe\cS mio re e mio sposo,\cS mi hai invaso il cuore,\cS amorevolmente, amichevolmente,\cS bello e splendente, grande e leale, ricco di doni,\cS alto e molto magnificamente elevato.
      \end{cTrd}

      \cSection{\oldstylenums{2}. Recitativo T}{Continuo}

      \begin{verse}
      Du wahrer Gottes und Marien Sohn, \\
      Du K”onig derer Auserw”ahlten, \\
      Wie s”u”s ist uns dies Lebenswort, \\
      Nach dem die ersten V”ater schon \\
      So Jahr' als Tage z”ahlten, \\
      Das Gabriel mit Freuden dort \\
      In Bethlehem verhei”sen! \\
      O S”u”sigkeit, o Himmelsbrot, \\
      Das weder Grab, Gefahr, noch Tod \\
      Aus unsern Herzen rei”sen.
      \end{verse}

      \begin{cTrd}Tu, vero figlio di Dio e di Maria,\cS tu, re degli eletti,\cS come ci \`e dolce questa parola di vita,\cS dalla quale i primi padri gi\`a\cS gli anni cos\`i come i giorni contavano,\cS che Gabriele con gioia l\`a\cS in Betlemme annunci\`o!\cS O dolcezza, o pane del cielo!\cS che n\'e la tomba, il periglio o la morte\cS dai nostri cuori strappano.\end{cTrd}

      \cSection{\oldstylenums{3}. Aria S}{Oboe da caccia, Continuo}

      \begin{verse}
      Erf”ullet, ihr himmlischen g”ottlichen Flammen, \\
      Die nach euch verlangende gl”aubige Brust! \\
      Die Seelen empfinden die kr”aftigsten Triebe \\
      Der br”unstigsten Liebe \\
      Und schmecken auf Erden die himmlische Lust.
      \end{verse}

      \begin{cTrd}Empite voi celesti fiamme divine,\cS il petto credente che chiede di voi!\cS Le anime sentono le forti spinte\cS del pi\`u fervido amore\cS e gustano sulla terra il piacere celeste.\end{cTrd}

      \cSection{\oldstylenums{4}. Recitativo B}{Continuo}

      \begin{verse}
      Ein irdscher Glanz, ein leiblich Licht \\
      R”uhrt meine Seele nicht; \\
      Ein Freudenschein ist mir von Gott entstanden, \\
      Denn ein vollkommnes Gut, \\
      Des Heilands Leib und Blut, \\
      Ist zur Erquickung da. \\
      So muss uns ja \\
      Der “uberreiche Segen, \\
      Der uns von Ewigkeit bestimmt \\
      Und unser Glaube zu sich nimmt, \\
      Zum Dank und Preis bewegen.
      \end{verse}

      \begin{cTrd}Un terreno splendore, una luce corporea\cS non muove la mia anima;\cS un raggio di gioia mi \`e venuto da Dio,\cS poich\'e un bene perfetto,\cS il corpo e il sangue del Redentore,\cS \`e qui per consolazione.\cS Perci\`o ci deve\cS la sovrabbondante benedizione,\cS che ci viene dall'eternit\`a\cS e che la nostra fede prende per s\'e,\cS al ringraziamento e alla lode muovere.\end{cTrd}

      \cSection{\oldstylenums{5}. Aria T}{Violino concertante I/II, Violino ripieno I/II, Viola, Continuo}

      \begin{verse}
      Unser Mund und Ton der Saiten \\
      Sollen dir \\
      F”ur und f”ur \\
      Dank und Opfer zubereiten. \\
      \vin Herz und Sinnen sind erhoben, \\
      \vin Lebenslang \\
      \vin Mit Gesang, \\
      \vin Gro”ser K”onig, dich zu loben.
      \end{verse}

      \begin{cTrd}La nostra bocca e il suono delle corde\cS ti devono\cS a poco a poco\cS preparare ringraziamenti e doni.\cS Cuore e sensi sono esaltati\cS per tutta la vita\cS con il canto\cS grande Re, per lodarti.\end{cTrd}

      \cSection{\oldstylenums{6}. Choral}{Corno I e Violino I col Soprano, Corno II, Oboe I e Violino II coll' Alto, Oboe II e Viola col Tenore, Continuo}

      \begin{verse}
      \chorus{Wie bin ich doch so herzlich froh, \\
      Dass mein Schatz ist das A und O, \\
      Der Anfang und das Ende; \\
      Er wird mich doch zu seinem Preis \\
      Aufnehmen in das Paradeis, \\
      Des klopf ich in die H”ande. \\
      Amen! \\
      Amen! \\
      Komm, du sch”one Freudenkrone, bleib nicht lange, \\
      Deiner wart ich mit Verlangen.}
      \end{verse}

      \begin{cTrd}Quanto sono perci\`o sinceramente contento\cS che il mio tesoro \`e l'alfa e l'omega,\cS l'inizio e la fine;\cS Egli pure come suo premio\cS mi accoglier\`a in paradiso,\cS perci\`o io batto le mani.\cS Amen! Amen!\cS Vieni, tu bella corona di gioia, non tardare a lungo,\cS io ti attendo con desiderio.\end{cTrd}

      \begin{cInf}
      \textbf{Besetzung} Soli: S T B, Coro: S A T B, Corno I/II, Oboe da caccia I/II, Violino concertante I/II, Violino ripieno I/II, Viola, Continuo\cSep
      \textbf{Entstehungszeit} 25. M”arz 1725\cSep
      \textbf{Text} 1,6: Philipp Nicolai 1599; 2-5: Umdichtungen eines unbekannten Bearbeiters\cSep
      \textbf{Anlass} Mariae Verk”undigung (25. M”arz)
      \end{cInf}
      \cEnd
      `

      Nel complesso stava venendo tutto benino, anche se da semplice principiante mi sono reso conto che uno dovrebbe pensare bene come strutturare il lavoro, prima di mettersi a scrivere.

    • #61756
      Up
      0
      Down
      ::

      Ho scritto alcune macro in lua per sostituire i caratteri e per fare altre operazioni sui file tirati giù da internet, aprivano e chiudevano i file uno alla volta, ma non ci sono stati problemi, e comunque un volta fatte le varie sostituzioni non le ho più usate. Qusto è il file principale:

      Nel complesso stava venendo tutto benino, anche se da semplice principiante mi sono reso conto che uno dovrebbe pensare bene come strutturare il lavoro, prima di mettersi a scrivere.

      Non vedo nulla di sospetto. Propendo per un file system con problemi abbastanza seri, dacci una controllata. Il fatto che trovi scritto su un file qualcosa che dovrebbe essere in un altro (quella roba “/FontDescriptor 27” è tipica dei pdf) mi pare denoti proprio questo tipo di problemi.

      Ciao
      Enrico

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

Go to top