Nuovo ambiente (semplicissimo)

  • Creatore
    Topic
  • #92270
    samiel
    Partecipante
      Up
      0
      Down
      ::


      Vorrei creare un semplice ambiente per scrivere delle brevi note introduttive.
      ora, il testo è in tondetto, le note introduttive si distinguono per essere redatte in corsivo.
      Ma per evitare di dover mettere \emph{} in ogni capoverso delle introduzioni,
      volevo crearmi un ambiente apposito. Mi serve \emph e non \textit per il vantaggio
      degli \emph annidati, che si sistemano da soli, Ora:
      `\newenvironment{introd}[1]{\emph{#1}}` mi mette in corsivo solo
      la prima lettera dell’ambiente, che comprende innumerevoli capoversi 🙁
      e poi ho l’impressione che l’argomento non serva, visto che lo scopo
      è appunto solo quello di ottenere tutto in corsivo. Come riscrivere quel codice?

      grazie
      m

    Visualizzazione 22 filoni di risposte
    • Autore
      Risposte
      • #92271
        Up
        0
        Down
        ::


        `\newenvironment{introd}{\em}{}`
        Dove hai trovato quella sintassi per [tt]\newenvironment[/tt]?

      • #92272
        samiel
        Partecipante
          Up
          0
          Down
          ::


          dunque bisogna usare il comando, non la dichiarazione?
          però in questo modo non va persa la “correzione italica”
          che invece \emph produce da sé?

          quella sintassi… mah, sono andato per tentativi e (soprattutto) errori…

          m

        • #92273
          Up
          0
          Down
          ::

          samiel” post=91882dunque bisogna usare il comando, non la dichiarazione?
          però in questo modo non va persa la “correzione italica”
          che invece \emph produce da sé?

          Hai provato il comando che ho suggerito?

          samiel” post=91882quella sintassi… mah, sono andato per tentativi e (soprattutto) errori…

          Mi hanno sempre affascinato le persone che provano a indovinare la sintassi di un comando lavorando di fantasia

        • #92274
          Up
          0
          Down
          ::

          samiel” post=91882dunque bisogna usare il comando, non la dichiarazione?
          però in questo modo non va persa la “correzione italica”
          che invece \emph produce da sé?

          quella sintassi… mah, sono andato per tentativi e (soprattutto) errori…

          m

          Quando dico che le guide non vengono lette, poi mi prendo anche parole.
          [tt]\em[/tt] è appunto la dichiarazione, mentre [tt]\emph[/tt] il comando.

          Ciao
          Tommaso

        • #92275
          samiel
          Partecipante
            Up
            0
            Down
            ::

            Quando dico che le guide non vengono lette, poi mi prendo anche parole.
            \em è appunto la dichiarazione, mentre \emph il comando.

            fu un’involontaria inversione… d’altro canto ho problemi di lateralizzazione,
            per individuare destra e sinistra ho sempre bisogno di una pur breve riflessione .-)

            Hai provato il comando che ho suggerito?

            Sì e funziona, ma appunto mi chiedevo che cosa ne è
            in questo caso della “correzione italica” che si salverebbe
            con un ambiente che in qualche modo (meno fantasioso)
            ricorra a \emph, se si può fare…

            m

          • #92276
            Up
            0
            Down
            ::

            samiel” post=91885

            Hai provato il comando che ho suggerito?

            Sì e funziona, ma appunto mi chiedevo che cosa ne è
            in questo caso della “correzione italica” che si salverebbe
            con un ambiente che in qualche modo (meno fantasioso)
            ricorra a \emph, se si può fare…

            Con questo codice
            `\documentclass{article}
            \newenvironment{introd}{\em}{}
            \begin{document}
            \begin{introd}
            testo
            \begin{introd}
            testo
            \begin{introd}
            testo
            \end{introd}
            testo
            \end{introd}
            testo
            \end{introd}
            \end{document}`
            ottengo

            testo testo testo testo testo

            che, se ho capito bene, è proprio quello che chiedevi. Ho inteso male io quello che volevi ottenere?

          • #92277
            samiel
            Partecipante
              Up
              0
              Down
              ::


              Con l’ambiente che mi hai suggerito, ho semplicemente

              \begin{introd}
              testo testo testo testo

              testo \emph{testo} testo testo

              testo testo \emph{testo} testo

              end{introd}

              e funziona, nel senso che l’alternanza dell’«enfasi» è prodotta correttamente
              (non serve annidare l’ambiente stesso).
              Resta la mia incertezza sul fatto che \em produca la corretta correzione italica
              che \emph produce da sè…

            • #92278
              Up
              0
              Down
              ::

              samiel” post=91887Con l’ambiente che mi hai suggerito, ho semplicemente

              \begin{introd}
              testo testo testo testo

              testo \emph{testo} testo testo

              testo testo \emph{testo} testo

              end{introd}

              e funziona, nel senso che l’alternanza dell’«enfasi» è prodotta correttamente
              (non serve annidare l’ambiente stesso).
              Resta la mia incertezza sul fatto che \em produca la corretta correzione italica
              che \emph produce da sè…

              Hai fatto una prova?

              Ciao
              Tommaso

            • #92279
              samiel
              Partecipante
                Up
                0
                Down
                ::


                Certo, ma appunto mi risulta che il comando provveda da solo alla possibile correzione italica,
                mentre la dichiarazione richiede di esplicitarla “a mano”. Ecco perché mi chiedevo nella mia insipienza
                se non fosse possibile creare un ambiente usando \emph

                m

              • #92280
                Up
                0
                Down
                ::

                samiel” post=91889Certo, ma appunto mi risulta che il comando provveda da solo alla possibile correzione italica,
                mentre la dichiarazione richiede di esplicitarla “a mano”. Ecco perché mi chiedevo nella mia insipienza
                se non fosse possibile creare un ambiente usando \emph

                m

                Continuo a non capire di cosa stai parlando: [tt]\emph[/tt] è basato su [tt]\em[/tt], quindi il tuo scetticismo non è fondato. Se non ci credi che [tt]\em[/tt] permetta di fare la “magia” a cui tieni tanto, prova questo codice
                `{\em testo {\em testo}}`

              • #92281
                samiel
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Il mio scetticismo, magari infondato, è basato su cose che ho letto (se non ho frainteso)
                  in rete, ad esempio proprio in questo forum:
                  http://guitex.org/home/it/forum/5-tex-e-latex/75917-pstext

                  In altre parole usa il comando, che provvede
                  da solo alal possibile correzione italica, non la dichiarazione che ti richiede di esplicitare la correzione italica.

                  oppure qui:
                  http://tex.stackexchange.com/questions/25911/what-is-the-difference-between-em-and-emph
                  dove leggo

                  \em is a plain tex command, not something defined by the engine. it requires you to write
                  your own italic correction commands, which \emph works out for you

                • #92282
                  Up
                  0
                  Down
                  ::

                  samiel” post=91891Il mio scetticismo, magari infondato, è basato su cose che ho letto (se non ho frainteso)
                  in rete, ad esempio proprio in questo forum:
                  http://guitex.org/home/it/forum/5-tex-e-latex/75917-pstext

                  In altre parole usa il comando, che provvede
                  da solo alal possibile correzione italica, non la dichiarazione che ti richiede di esplicitare la correzione italica.

                  oppure qui:
                  http://tex.stackexchange.com/questions/25911/what-is-the-difference-between-em-and-emph
                  dove leggo

                  \em is a plain tex command, not something defined by the engine. it requires you to write
                  your own italic correction commands, which \emph works out for you

                  Se tutto è in corsivo, dove dovrebbe agire la correzione per il corsivo (italic correction)? 😕

                  Intendi forse per un [tt]\emph[/tt] annidato? Be’, perché non provi? Scoprirai che funziona benissimo, mettendo la correzione prima (dove serve, cioè).

                  Ciao
                  Enrico

                • #92283
                  Up
                  0
                  Down
                  ::

                  samiel” post=91891Il mio scetticismo, magari infondato, è basato su cose che ho letto (se non ho frainteso)

                  Ok, allora sono io che ho frainteso cosa hai chiesto da un certo punto in poi, a questo punto passo la palla a qualcun altro

                • #92284
                  samiel
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    certo, nei brevi testi che devo scrivere la cosa si limita agli \emph
                    (che sono poche parole e i titoli). vedrò cosa viene fuori inserendo “a mano”
                    la correzione.
                    Così poi posso fare anche gli esercizi 4.1 and 4.2 del Texbook…

                    m

                  • #92285
                    OldClaudio
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      Bene, bene, bene….
                      Così c’è qualcuno che vorrebbe conservare la correzione italica e cita conversazioni su stackexchange oltre che sul nostro forum e altri che sanno come distinguere ed usare i comandi e le dichiarazioni ma non sanno che cosa sia la correzione italica.

                      Stimolato dai vostri messaggi, ho controllato; nella guida tematica Il LaTeX Reference Manual commentato non se ne parla. Visto che i commenti li ho fatti io, bisogna che provveda, anche se Leslie Lamport non ha inserito niente nel suo manuale a questo proposito.

                      Nella Guida GuIT se ne parla nella pagina 348 e si mostra anche nel testo che questa correzione potrebbe essere necessaria anche quando si scrive in tondo.

                      Allora l’ambiente che @samiel vorrebbe creare e che dovrebbe conservare la correzione italica potrebbe essere il seguente:
                      `\newenvironment{\introd}{\em}{\/}`

                      Il comando [tt]\/[/tt] è quello che inserisce la correzione italica fra due caratteri; l’ultimo del testo che lo precede e il primo del testo che segue.

                      [tt]\emph[/tt], come gli altri comandi testuali del tipo [tt]\textrm, \textit, textsc,…[/tt], è costruito in modo da analizzare il primo carattere che segue l’argomento ed eventualmente inserisce la correzione italica come in “…le congiunzioni che contengono la prostesi (per esempio \emph{ed})…” ha la d in corsivo, leggermente separata dalla parentesi chiusa in tondo, in modo tale che non si scontrino; provate a scrivere “…le congiunzioni che contengono la prostesi (per esempio {\em ed})…” e vedrete che la dichiarazione [tt]\em[/tt] non introduce lo spazietto, cosicché la d batte contro la parentesi tonda. Per correggere bisognerebbe mettere [tt]\/[/tt] subito dopo la “d” quando usa la dichiarazione.

                      L’esempio in tondo riportato nella Guida GuIT l’ho dovuto cercare con i lanternino, ma è un caso reale; il simbolo SI del femtofarafd è fF e, anche in matematica, deve essere scritto in tondo; se non si inserisce la correzione italica fra “f” e “F”, le due lettere si scontrano. quindi il simbolo del femtofarad deve venire composto correttamente con [tt]f\/F[/tt] perché le due lettere non si scontrino.

                      Il file metrico .tfm per ogni font contiene per ogni carattere la correzione italica a lui associata; normalmente essa consiste in un allontanamento positivo per quasi tutti i caratteri di un font corsivo o comunque inclinato, mentre per il carattere tondo o comunque diritto è raro che venga specificato un allontanamento. La crenatura è un accostamento, una crenatura negativa è un accostamento negativo, quindi un allontanamento positivo.

                      La correzione italica corrisponde perciò alla misura di quanto il carattere sporge (di solito a destra) dal rettangolo verticale il cui lato sinistro corrisponde al punto di riferimento del carattere, e il lato di destra corrisponde alla larghezza del carattere, larghezza misurata sulla linea di base, non larghezza assoluta.

                      Credo di avere illustrato che cosa sia la correzione italica; fa bene @samiel a preoccuparsene; fa male quando non legge abbastanza la documentazione (vedi anche l’invenzione “casuale” della definizione di un ambiente). @Elrond di solito è un buon lettore della documentazione, ma questo punto gli è sfuggito

                      Detto questo, mi domando perché @samilel desideri un ambiente quando deve usare solo una dichiarazione con le sue graffe di gruppo:
                      `…{\em testo da evidenziare} altro testo non evidenziato`
                      sapendo che deve mettere la correzione italica [tt]\/[/tt] solo se dopo la graffa chiusa non c’è uno spazio ma c’è invece una lettera o un segno di interpunzione alto: parentesi chiusa, punto esclamativo, magari anche interrogativo, due punti, punto e virgola, … ma non me ne vengono in mente altri.

                      Con l’ambiente introd il mark-up è più chiaro? forse sì, ma deve scrivere assai di più che non se usa la dichiarazione [tt]\em[/tt] con le sua parentesi di gruppo.

                    • #92286
                      samiel
                      Partecipante
                        Up
                        0
                        Down
                        ::


                        In Stackexchange c’è anche di più, c’è un tale che ha creato un hack apposta per Linux Libertine:
                        http://tex.stackexchange.com/questions/13340/italic-correction-for-linux-libertine-font
                        Per quanto riguarda il codice
                        `\newenvironment{\introd}{\em}{\/}`
                        forse dopo la correzione non serve, ma probabilmente bisogna valutare caso per caso;
                        voglio dire che il rischio è che si scontrino l’ultima lettera corsiva e la prima tonda (insomma
                        dove inizia l’\emph), mentre mi pare che non possa verificarsi il caso opposto.
                        Non capisco se il codice sopra differenzi il prima e il dopo.
                        Per quello che riguarda l’opportunità di creare un ambiente apposito,
                        il fatto è che (come dicevo brevemente sopra) devo scrivere delle introduzioni
                        a dei testi, che li precedono. Ora, per differenziare il testo è naturalmente in tondetto
                        e queste note introduttive in corsivo (insomma tondetto per il testo antologizzato
                        dell’autore, corsivo per la nota introduttiva del curatore, che poi sono io).
                        Ora, poiché queste note a volte ammontano anche a un paio di pagine
                        con parecchi capoversi, o scrivo
                        ` \emph{testo}

                        \emph{testo}

                        \emph{testo}

                        \emph{testo}
                        .
                        .
                        .`
                        ogni volta, oppure scrivo solo `\begin{}` all’inizio e `\end{}` alla fine.
                        Con una decina di capoversi per introduzione moltiplicata per una ventina di introduzioni, l’ambiente mi pare risultare assai più economico

                        m

                      • #92287
                        Up
                        0
                        Down
                        ::


                        Allora direi che la cosa migliore sarebbe fare chiarezza su questa correzione italica (che io personalmente già conoscevo) e sui modi per ottenerla con LaTeX. E, soprattutto, chiarire se serve davvero e quando serve. Non credo che tutti la usino, e si accontentino della composizione predefinita di pdftex. 🙂

                        Una risposta del tipo di quelle che si leggono su TeX – LaTeX Stack Exchange, per capirci 🙂

                        Ciao
                        Tommaso

                      • #92288
                        OldClaudio
                        Partecipante
                          Up
                          0
                          Down
                          ::


                          Certo, l’ambiente è più economico del comando [tt]\emph[/tt], ma non è più economico della dichiarazione:
                          `
                          {\em Primo capoverso

                          Secondo capoverso

                          Terzo capoverso

                          …}`

                          Per l’uso che ne fai la correzione italica non sembra necessaria, visto che, anche se evidenzi qualcosa in tondo dentro al testo corsivo, è poco probabile che tu debba mettere qualcosa di alto dopo qualcosa di evidenziato; comunque queste evidenziazioni interne, che riguradano poche parole, possono essere tranquillamente fatte con [tt]\emph[/tt]:
                          `{\em Primo capoverso che contiene la \emph{parola} in evidenza.

                          Secondo capoverso che parla della \emph{Weltanshaung} di tradizione ottocentesca.

                          …}`

                          In ogni caso la definizione che ti ho dato per l’ambiente mette la correzione italica alla chiusura dell’ambiente, per cui, volendo lo potresti usare anche all’interno di altro testo evidenziato; mette comunque la correzione italica, ma questa se non serve, non appare se non come talvolta un leggerissimo/impercettibile aumento dello spazio interparola, che compare solo quando l’ultima lettera dell’ambiente è protrude significativamente dalla scatola verticale di cui parlavo nel precedente messaggio.

                          Non ho provato con Libertine, ma mi parrebbe strano che i file .tfm dei Libertine non contengano nessuna informazione relativa all’eventuale correzione italica. Può anche darsi che siano disegnati con una “spalla” (*) sufficientemente larga da non averne bisogno.

                          Nota che la correzione italica non è uno spazio costante inserito con un comando implicito del tipo [tt]\kern[/tt], ma è un valore preso dalle informazioni metriche del font che le dovrebbe contenere sia per l’intera collezione di caratteri sia per ogni singolo carattere.

                          Vale la pena vedere come è specificata la correzione italiaca nei file sorgente METAFONT dei caratteri CM; se si pare il file romanl.mf la prima lettera descritta è la “a” minuscola; senza entrare nei dettagli le prime righe del codice sono:
                          `
                          cmchar “The letter a”;
                          beginchar(“a”,9u#,x_height#,0);
                          bh#:=min(bar_height#,1.14x_height#-bar_height#); define_pixels(bh);
                          italcorr 1/3[bh#,x_height#]*slant+.5stem#-serif_fit#-2u#;
                          `
                          Non ti preoccupare del parametro [tt]bh#[/tt]; la [tt]italcorr[/tt] del carattere che viene descritto, è calcolata in base alla sue forme, lo psessore delle sue aste, dalla presenza o assenza delle grazie, eccetera, quindi è calibrato sul disegno della lettera, non è un valore fisso. Questo valore viene inserito nel file metrico .tfm, e il comando [tt]\/\[/tt] lo recupera e lo usa.

                          Ciao
                          Claudio

                          (*) La “spalla” è lo spazio bianco interno alla larghezza del carattere, che separa il glifo dai bordi sinistro e destro del rettangolo o trapezio ideale che contiene glifo e spalle.
                          I font CM e derivati hanno spalle sia a destra sia a sinistra, (tranne la f tonda che fuoriesce dal suo rettangolo ideale); altri font hanno la spalla solo a destra. La spalla serve per distanziare un carattere dal successivo, sebbene la crenatura contribuisca non poco ad alterare questa distanza. I caratteri mobili in piombo che ho avuto per le mani erano sempre con spalla quasi nulla, nel senso che le grazie arrivavano fino al bordo del blocchetto, ma essendo a bordi inclinati, la spalla risultava solo dalla inclinazione dei bordi del segno in rilievo sulla faccia del blocchetto. Coi caratteri mobili metallici la crenatura era virtualmente impossibile, se non con artifizi di alta acrobazia da parte degli incisori e dei fonditori; la cosa più semplice era preparare dei punzoni che contenessero già due caratteri accostati. Con i caratteri elettronici la crenatura è una banalità. Lo stesso vale per la correzione italica; di solito non necessaria in piombo, perché il carattere normalmente non sporgeva dalla faccia del blocchetto, e facilissima con i font elettronici, purché le informazioni metriche siano complete anche di questo dato; ed è per questo che i font creati apposta per il sistema TeX sono sempre completi, mentre i font commerciali o di produzione “industriale” resi di pubblico domino spessissimo non contengono queste informazioni. I Libertine forse fanno parte di questa categoria, ma se ricordo bene il loro disegno sono tali da non averne bisogno se non in casi eccezionali.

                        • #92289
                          samiel
                          Partecipante
                            Up
                            0
                            Down
                            ::


                            Dopo gli ampi chiarimenti sulla correzione per il corsivo, mi resta un ultimo problema.
                            Se produco le mie introduzioni con {\em capoverso… capoverso…} il greco risulta in un corsivo
                            molto spesso (decisamente più nero del sottile corsivo di EB Garamond), un pugno nell’occhio.
                            Come posso ripristinare il font originario (dritto) che nella fattispecie è il GF Didot?

                            m

                          • #92290
                            OldClaudio
                            Partecipante
                              Up
                              0
                              Down
                              ::


                              Lo scrivi dentro un \emph a sua volta dentro il gruppo complessivo {\em …}
                              [code]{\em Capoverso che contiene la parola greca \emph{τἐχνη} e la sua spiegazione.\par}

                            • #92291
                              samiel
                              Partecipante
                                Up
                                0
                                Down
                                ::


                                Perfetto grazie, con un solo dubbio: funziona anche senza mettere \par alla fine.
                                Ometterlo può procurarmi dei guai?

                                m

                              • #92292
                                OldClaudio
                                Partecipante
                                  Up
                                  0
                                  Down
                                  ::


                                  No, io l’ho messo perch´comunque è bene che per l’uso che ne fai il tutto sia formato da capoversi ben precisi; certo puoi lasciare una riga vuota dopo la graffa chiusa, ma io di solito metto il fine parapgraph esplicito. Lo puoi omettere se ti ricordi di mettere una riga vuota dopola graffa di fine gruppo.

                                • #92293
                                  samiel
                                  Partecipante
                                    Up
                                    0
                                    Down
                                    ::


                                    Io uso sempre la riga bianca se si tratta semplicemente di un capoverso nuovo.
                                    In effetti funzionava tutto anche senza \par

                                    grazie
                                    m

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

                                Go to top