agodemar

Risposte nei forum create

Stai visualizzando 15 risposte – dal 61 al 75 (di 133 totali)
  • Autore
    Risposte
  • in risposta a: Problema TeXnico: parsing di righe #55788
    Up
    0
    Down
    ::


    Continuo in questo filone e pongo il problema del dimensionamento di ciò che viene fuori da \pprows.
    Mettiamo che il materiale trattato da questa macro debba essere composto con un’assegnata giustezza, diciamo \mylinewidth, e debba essere spezzato con un \newpage in modo da entrare verticalmente in uno spazio non superiore ad un’assegnata dimensione, diciamola \myheight.
    Immagino che si debba usare un registro dimensionale come \@tempdima, inizializzarlo e aggiornarlo con un \advance\tempdima\baselineskip man mano che si processano nuove righe.
    L’interruzione di pagina dovrebbe essere data quando \@tempdima>\myheight ma solo se si sta processando una riga vuota. Se l’interruzione dovesse capitare dopo l’inizio di un gruppo di 3 (o 2) ma non alla sua fine:
    `\pprows{pippo}{%
    %…
    Riga 21\\
    Riga 22\\
    Riga 23\\
    \\
    Riga 25\\ <--- interruzione qui Riga 26\\ \\ Riga 28\\ %... } ` Come potrebbe essere gestito il problema?

    in risposta a: Problema TeXnico: parsing di righe #55786
    Up
    0
    Down
    ::


    Come fare per passare alla macro \pprows un parametro da usare nella macro interna \pppr@fix?
    Vorrei poter effettuare la chiamata:
    `\pprows{pippo}{%
    Riga 1\\
    Riga 2\\
    Riga 3\\
    \\
    Riga 5\\
    Riga 6\\
    \\
    Riga 8
    }
    `

    Grazie,
    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55785
    Up
    0
    Down
    ::


    Credo di aver risolto in questo modo:
    `\begin{document}
    \newbox\BigBox
    \setbox\BigBox=\vbox{\hsize=\larghezza
    \pprows{
    Servizio Politiche di Inclusione Sociale\\
    Centro comunale di accoglienza per senza fissa dimora ex dormitorio pubblico Via Giuseppe De Blasiis, 10\\
    Luigi Pratolin\\
    \\
    Servizio Giovani\\
    Sede di Bagnoli Via Cicerone, 18\\
    Gino Viglio Crippa\\
    \\
    Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
    Ufficio provvedimenti autorità giudiziaria minorile\\
    Giuseppe Pace\\
    \\
    Servizio Dipartimentale Consiglio Comunale\\
    Attività connesse alle funzioni ispettive del Consiglio Comunale\\
    Gino Giorgetto\\
    \\
    Servizio Reti Tecnologiche Interne\\
    Rete fonia dati\\
    Luigi Sicilia\\
    \\
    Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
    Ufficio interventi integrativi\\
    Rosaria Dinevoli\\
    \\
    Municipalità 1 – Organi Politici\\
    Commissioni Consiliari: segreteria e conferenza dei Presidenti\\
    Eugenio Izzo Aiazzone\\
    \\
    Direttore della I Municipalità Chiaia — San Ferdinando — Posillipo\\
    Segreteria della direzione\\
    \\
    Servizio Archivi Storici\\
    Referente visite guidate, Real Casa Santa dell'Annunziata: ramo esposti\\
    Lucia Renzulli\\
    \\
    U.O.A. Elaborazione degli Stipendi\\
    Ufficio cessioni e prestiti\\
    Vittoria Cecatiello\\
    \\
    Direttore della Municipalità 1\\
    \\
    Direttore della Municipalità 2\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 3\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 4\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 5\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 6\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 7\\
    Segreteria della direzione\\
    Rosalia Cozzolino
    }
    }

    \Separa{\unvbox\BigBox}
    \end{document}
    `
    Metto tutto il risultato di \pprows in una \vbox che chiamo \BigBox: questo permette alla macro di processare le righe come vorrei. Successivamente, con il comando \unvbox\BigBox estraggo il contenuto per darlo in pasto alla macro \Separa.

    in risposta a: Separare il contenuto di una vbox con un ciclo while #56391
    Up
    0
    Down
    ::


    Grazie Enrico.
    Come si potrebbe integrare questa tua soluzione a quella proposta in questo post:
    http://www.guit.sssup.it/phpBB2/viewtopic.php?p=55230#55230 ?
    In quella situazione si ha la necessità di effettuare prima un parsing con conseguente formattazione delle righe e successivamente una suddivizione del contenuto in scatole di altezza assegnata.

    Ciao,
    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55784
    Up
    0
    Down
    ::


    Grazie Enrico.
    Traggo spunto dalla tua precedente soluzione e dal post http://guit.sssup.it/phpbb/viewtopic.php?t=9713 in cui si parla di suddivisione del materiale all’interno di una vbox.
    A questo punto, come si modifica la macro \pprows in modo da suddividere la lista degli indirizzi in più scatole di assegnata altezza?
    Nel codice seguente:
    `\documentclass{minimal}
    \usepackage{ifthen}
    \usepackage{lipsum}

    \makeatletter
    \newcount\r@wcount
    \newcount\@ddrcount
    \def\pp@sentinel{\hfuzz}
    \newcommand\pprows[1][1]{\begingroup
    \r@wcount=\z@
    \chardef\@ddrnum=#1\relax
    \parindent=\z@\endlinechar=\m@ne\ppr@ws}
    \def\ppr@ws#1{\ppr@w#1\\\hfuzz\\}
    \def\ppr@w#1\\{%
    % controlliamo se siamo alla fine
    \def\temp{#1}%
    \ifx\temp\pp@sentinel
    \expandafter\endgroup
    \else
    \processr@w{#1}\expandafter\ppr@w
    \fi}

    \def\pppr@fix{%
    \ifnum\@ddrcount<\@ddrnum \tom@rk \else \ifnum\@ddrcount=\@ddrnum \ccm@rk \fi \fi \advance\@ddrcount\@ne} \def\processr@w#1{\advance\r@wcount\@ne \ifx\temp\@empty \r@wcount=\z@ \strut\par \else \ifcase\r@wcount\or \pppr@fix\textbf{#1}\par\or \textit{#1}\par\else #1\par \fi \fi} \def\tom@rk{\makebox[0pt][r]{A: }} \def\ccm@rk{\makebox[0pt][r]{E, p.c.: }} \makeatother \newlength{\larghezza} \setlength{\larghezza}{12cm} \newlength{\altezza} \setlength{\altezza}{7cm} \newbox\mybox \newbox\myboxa \newcommand\Separa[1]{% \par\begingroup\vbadness=10000 \setbox\mybox=\vbox{\hsize=\larghezza #1} \loop\ifdim\ht\mybox > \altezza
    \setbox\myboxa=\vsplit\mybox to \altezza
    \vbox{\unvbox\myboxa}\hrule
    \repeat
    \vbox{\unvbox\mybox}\hrule\endgroup
    }

    \begin{document}

    \Separa{\lipsum[1-5]}
    \bigskip

    \Separa{\pprows{%
    Servizio Politiche di Inclusione Sociale\\
    Centro comunale di accoglienza per senza fissa dimora ex dormitorio pubblico Via Giuseppe De Blasiis, 10\\
    Luigi Pratolin\\
    \\
    Servizio Giovani\\
    Sede di Bagnoli Via Cicerone, 18\\
    Gino Viglio Crippa\\
    \\
    Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
    Ufficio provvedimenti autorità giudiziaria minorile\\
    Giuseppe Pace\\
    \\
    Servizio Dipartimentale Consiglio Comunale\\
    Attività connesse alle funzioni ispettive del Consiglio Comunale\\
    Gino Giorgetto\\
    \\
    Servizio Reti Tecnologiche Interne\\
    Rete fonia dati\\
    Luigi Sicilia\\
    \\
    Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
    Ufficio interventi integrativi\\
    Rosaria Dinevoli\\
    \\
    Municipalità 1 – Organi Politici\\
    Commissioni Consiliari: segreteria e conferenza dei Presidenti\\
    Eugenio Izzo Aiazzone\\
    \\
    Direttore della I Municipalità Chiaia — San Ferdinando — Posillipo\\
    Segreteria della direzione\\
    \\
    Servizio Archivi Storici\\
    Referente visite guidate, Real Casa Santa dell'Annunziata: ramo esposti\\
    Lucia Renzulli\\
    \\
    U.O.A. Elaborazione degli Stipendi\\
    Ufficio cessioni e prestiti\\
    Vittoria Cecatiello\\
    \\
    Direttore della Municipalità 1\\
    \\
    Direttore della Municipalità 2\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 3\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 4\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 5\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 6\\
    Segreteria della direzione\\
    Rosalia Cozzolino\\
    \\
    Direttore della Municipalità 7\\
    Segreteria della direzione\\
    Rosalia Cozzolino
    }}
    \end{document}
    `
    ho chiamato \pprows all’interno di \Separa. In questa situazione \pprows non lavora come ci si aspetterebbe.

    Ciao,
    Agostino

    in risposta a: Separare il contenuto di una vbox con un ciclo while #56389
    Up
    0
    Down
    ::


    Rispondo a me stesso, avendo individuato il solito errore di distrazione:
    Il comando \ht determina l’altezza del registro box \mybox. L’uso corretto del comando è:
    `\ht\mybox`

    in risposta a: Problema TeXnico: parsing di righe #55782
    Up
    0
    Down
    ::


    Piccola variante.
    Un esempio realistico di come si possa gestire una lista dei destinatari multipli in una comunicazione formale.
    `\documentclass[a4paper]{article}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}

    \newcommand{\myToMark}{%
    \makebox[0pt][r]{A: }%
    }
    \newcommand{\myCcMark}{%
    \makebox[0pt][r]{E, p.c.: }%
    }

    \makeatletter

    \newcount\r@wcounti
    \newcount\r@wcount
    \def\pp@sentinel{\hfuzz}
    \def\pprows{\begingroup\parindent=\z@\endlinechar=\m@ne\ppr@ws}
    \def\ppr@ws#1{%
    \r@wcounti=\z@\r@wcount=\z@\ppr@w#1\\\hfuzz\\}
    \def\ppr@w#1\\{%
    % incremento contatore esterno
    \advance\r@wcounti\@ne
    % controlliamo se siamo alla fine
    \def\pp@temp{#1}%
    \ifx\pp@temp\pp@sentinel
    \expandafter\endgroup
    \else
    \processr@w{#1}\expandafter\ppr@w
    \fi}

    \def\pppr@fix{%
    \ifcase\r@wcounti\or
    \myToMark{}\or % 1
    \or %2
    \or %3
    \or %4
    \myCcMark{}\or %5
    % …
    \fi}

    \def\processr@w#1{\advance\r@wcount\@ne
    \ifx\pp@temp\@empty
    \r@wcount=\z@ \strut\par
    \else
    \pppr@fix
    \ifcase\r@wcount\or
    \textbf{#1}\par\or
    \textit{#1}\par\else
    #1\par
    \fi
    \fi}
    \makeatother

    \begin{document}

    \pprows{%
    Assessorato alle politiche sociali\\
    Respons. Quart. Vicaria, dott.ssa Rosa Russo\\
    P.zza Vicario, 31bis\\
    \\
    Comando VV. UU.\\
    Com. Luigi Fariello\\
    \\
    Ufficio Stampa\\
    \\
    Comando VV. FF.\\
    Com. ing. Tiberio Sauro\\
    Sede
    }

    \end{document}
    `
    Da notare le macro \myToMark e \myCcMark che appongono le diciture “A: ” e “E p. c.: “, rispettivamente, al primo e al secondo destinatario.

    Ciao,
    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55781
    Up
    0
    Down
    ::


    `\documentclass[a4paper]{article}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}

    \makeatletter
    \newcount\r@wcounti
    \newcount\r@wcount
    \def\pp@sentinel{\hfuzz}
    \def\pprows{\begingroup\parindent=\z@\endlinechar=\m@ne\ppr@ws}
    \def\ppr@ws#1{%
    \r@wcounti=\z@\r@wcount=\z@\ppr@w#1\\\hfuzz\\}
    \def\ppr@w#1\\{%
    % incremento contatore esterno
    \advance\r@wcounti\@ne
    % controlliamo se siamo alla fine
    \def\pp@temp{#1}%
    \ifx\pp@temp\pp@sentinel
    \expandafter\endgroup
    \else
    \processr@w{#1}\expandafter\ppr@w
    \fi}

    \def\pppr@fix{%
    \ifcase\r@wcounti\or
    \textbullet\ \or % 1
    \or %2
    \or %3
    \or %4
    $\star$\ \or %5
    % …
    \fi}

    \def\processr@w#1{\advance\r@wcount\@ne
    \ifx\pp@temp\@empty
    \r@wcount=\z@ \strut\par
    \else
    \pppr@fix
    \ifcase\r@wcount\or
    \textbf{#1}\par\or
    \textit{#1}\par\else
    #1\par
    \fi
    \fi}
    \makeatother

    \begin{document}

    Elenco generico di destinatari:

    \pprows{%
    Assessorato alle politiche sociali\\
    Respons. Quart. Vicaria, dott.ssa Rosa Russo\\
    P.zza Vicario, 31bis\\
    \\
    Comando VV. UU.\\
    Com. Luigi Fariello\\
    \\
    Ufficio Stampa\\
    \\
    Comando VV. FF.\\
    Com. ing. Tiberio Sauro\\
    Sede
    }
    \end{document}
    `

    Grazie.
    Ciao,
    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55779
    Up
    0
    Down
    ::


    Come si potrebbe inserire un contatore che conti i gruppi di righe?
    Potrei voler effettuare delle manipolazioni solo sul primo e sul secondo gruppo di righe, lasciando gli altri all’algoritmo di cui sopra.
    Mi spiego. Se ho:
    `Riga 1\\
    Riga 2\\
    Riga 3\\
    \\
    Riga 5\\
    Riga 6\\
    \\
    Riga 7\\
    \\
    Riga 9\\
    Riga 10\\
    Riga 11
    `
    vorrei anteporre $\bullet$ alla Riga 1 e $\star$ alla Riga 5.

    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55778
    Up
    0
    Down
    ::


    Enrico, sei il solito fenomeno 🙂

    Saluti,
    Agostino

    in risposta a: Problema TeXnico: parsing di righe #55776
    Up
    0
    Down
    ::


    Risposte a tempo di record! 😀
    Grazie!

    Adesso mi chiedo: nel caso in cui si avesse una sequenza non regolare di gruppi di righe, come in questo esempio
    `Questa è una prima riga\\
    Seconda riga\\
    Terza riga\\
    \\
    Quinta riga (quella precedente era vuota)\\
    Sesta riga\\
    \\
    Ottava riga (quella precedente era vuota)\\
    \\
    Decima riga (quella precedente era vuota)\\
    Undicesima riga\\
    Dodicesima riga
    `
    Come si modificherebbe l’algoritmo di Enrico per poter applicare lo stesso schema di formattazione desiderato?
    Chiarisco: la prima riga del gruppo in neretto, la seconda riga (se esiste) in corsivo, la terza riga (se esiste) inalterata.

    Grazie,
    Agostino

    in risposta a: Ipe grafica vettoriale #19722
    Up
    0
    Down
    ::


    Io ho installato ipe con macports senza eccessivi problemi.
    Ho dato:
    `> sudo port selfupdate`
    alla riga di comando del terminale in modo da aggiornare tutte le applicazioni
    (attenzione, questa è un’operazione che di per sé prende un po’ di tempo).
    Poi, nel sito di macports ho cercato tra gli Available Ports i pacchetti correlati
    ad ipe ottenendo la lista che trovate qui: http://www.macports.org/ports.php?by=name&substr=ipe.
    Se ne ricava che è disponibile il port di ipe versione 7.0.10 e di ipe-tools con
    etichetta 20091019.
    Questi due pacchetti dipendono a loro volta dai pacchetti: pkgconfig, qt4-mac,
    cairo, freetype, lua, poppler, py26-pil.
    Le righe di comando:
    `> sudo port install ipe
    > sudo port install ipe-tools
    `
    installano tutto. Attenzione, l’installazione dei pacchetti da cui ipe e ipe-tools dipendono comprende
    la loro compilazione e anche queste operazioni prendono un po’ di tempo (specialmente per qt4-mac) .

    Nota importante:
    Seppure con una versione TeXlive 2010 correttamente installata, per far funzionare
    ipe correttamente è necessario un piccolo accorgimento. Infatti, se si vuole che
    il testo e le formule matematiche all’interno delle figure vengano composte da
    pdflatex senza errori, si dve aggiungere il seguente comando nel preambolo:
    `\pdfobjcompresslevel0`
    Lo si fa attraverso il menu a tendina “Edit” andando alla voce “Document properties”.

    Saluti,
    Agostino

    in risposta a: Lanciare xelatex da riga di comando (con Mac OS X) #54342
    Up
    0
    Down
    ::


    Ecco come si presentava il valore della variabile PATH:
    `[ agodemar MacBook-Pro-di-Agostino-De-Marco ~] echo $PATH
    /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/texbin:/usr/X11/bin
    `
    Cioè, la cartella /usr/texbin era già nel percorso di ricerca ma era preceduta in PATH dalla cartella /opt/local/bin. Quest’ultima è quella aggiunta da macports nel file ~/.profile che si presentava così:
    `# file .profile
    # MacPorts Installer addition on 2010-05-13_at_11:05:12: adding an appropriate PATH variable for use with MacPorts.
    export PATH=/opt/local/bin:/opt/local/sbin:$PATH
    `
    La soluzione di Enrico mette le cose a posto. L’aggiunta della riga:
    `export PATH=/usr/texbin:${PATH}`
    al file ~/.profile permette di invocare da riga di comando l’eseguibile xelatex giusto, essendo questo trovato nell’albero di TeXLive 2010 anziché in quello della vecchia TeXLive installata tramite macports.

    Grazie!

    Agostino

    in risposta a: Lanciare xelatex da riga di comando (con Mac OS X) #54340
    Up
    0
    Down
    ::


    Ho di sicuro l’ultima versione di MacTeX. Ma adesso ricordo di aver dovuto installare una vecchia versione di TeXLive. Questa, infatti, compariva tra le dipendenze di un’applicazione che ho installato tempo fa tramite macports.

    In questi casi che si fa?
    Si può disinstallare la vecchia TeXLive tramite macports?

    A.

    in risposta a: problemi con figure #52733
    Up
    0
    Down
    ::


    Unità di misura tra parentesi tondeeee ! 😉

    Happy TeXing!
    Agostino

Stai visualizzando 15 risposte – dal 61 al 75 (di 133 totali)

Go to top