Risposte nei forum create
-
AutoreRisposte
-
::
franen” post=73557Torno su una questione che già avevo aperto qui e a cui Claudio aveva dato una risposta precisa e completa, ma che non ha soddisfatto completamente le mie domande sull’argomento.
Il problema è sempre lo stesso, fare in modo che pdfLaTex o chi per lui cerchi al’interno dell’albero locale o personale un file che deve essere letto e, magari, stampato nel documento, il tutto automaticamente.
Quindi se io scrivo ` \input{pippo.tex} `oppure un comando che esegua
` \file_input:n {pippo.tex} `se pippo.tex non è nella cartella di lavoro il programma deve cercarlo negli alberi locale e personale.Ho pensato a queste soluzioni:
1. Usare file con estensione .sty anziché .tex. Il trucco funziona (e la compilazione pare essere anche più rapida, 46 secondi contro 49 per i famosi 1328 capitoli della Bibbia). C’è qualche controindicazione? (nei file non ho “@”, se avesse importanza)2. Usare \file_path_include:n di LaTeX3, ma il problema è definire il percorso rispetto alla cartella di lavoro attuale. Si potrebbe eseguire uno script all’inizio della compilazione che determini il percorso di texmf-local e di texmf (personale), lo salvi in una token list per poi poterlo dare come argomento di \file_path_include:n? Eventuali suggerimenti su come impostare la cosa?
Pagina 27 di kpathsea.pdf ([tt]texdoc kpathsea[/tt]):
Exception to all of the above: If the filename being searched for is absolute or explicitly relative, i.e., starts with ‘[tt]/[/tt]’ or ‘[tt]./[/tt]’ or ‘[tt]../[/tt]’, Kpathsea simply checks if that file exists.
Dunque [tt]\input{./pippo}[/tt] è la risposta.
Ciao
Enrico
::albertobosia” post=73556cito dal texbook a pag 219
`\def\length#1{{\count0=0 \getlength#1\end \number\count0}}
\def\getlength#1{\ifx#1\end \let\next=\relax
\else\advance\count0 by1 \let\next=\getlength\fi \next}`quando poi scrivo \length{ciao mamma} mi compare 9.
vorrei che fosse contato anche lo spazio, senza fare \length{ciao\ mamma}
come posso fare?Quella macro conta i token che non sono spazi, perché usa una macro con argomento e, nella ricerca di argomenti non delimitati, gli spazi sono ignorati. Soluzione “facile”:
`
\newcount\lencount
\def\length{\begingroup\catcode`\ =12 \lengthaux}
\def\lengthaux#1{\lencount=0 \getlength#1\getlength\number\lencount\endgroup}
\def\getlength#1{%
\ifx#1\getlength
\expandafter\gobble
\else
\advance\lencount by 1
\fi
\getlength}
\long\def\gobble#1{}
`
Non è tanto diverso da quello di prima; ho solo usato un contatore riservato (non cambierebbe nulla con [tt]\count0[/tt] invece di [tt]\lencount[/tt]) e una struttura condizionale che evita [tt]\let\next\relax[/tt] ma esegue lo stesso una tail recursion. La vera differenza è il cambiamento di codice di categoria dello spazio.Questo impedisce di dare [tt]\length[/tt] come argomento di un altro comando. Non è che si possa fare moltissimo al riguardo. L’alternativa è di usare una routine più lenta con [tt]\futurelet[/tt].
Versione LaTeX3:
`
\documentclass{article}
\usepackage{xparse}
\ExplSyntaxOn
\NewDocumentCommand{\length}{m}{\length_compute:n {#1}}
\cs_new:Npn \length_compute:n #1
{
\tl_set_rescan:Nnn \l_tmpa_tl { \char_set_catcode_other:N \ } { #1 }
\int_to_arabic:n { \tl_length:N \l_tmpa_tl }
}
\ExplSyntaxOff\length{ciao mamma}
`
In alternativa
`\cs_new:Npn \length_compute:n #1
{
\tl_set:Nn \l_tmpa_tl { #1 }
\tl_replace_all:Nnn \l_tmpa_tl { ~ } { \c_space_token }
\int_to_arabic:n { \tl_length:N \l_tmpa_tl }
}`
Ciao
Enrico
::Marco87″ post=73516Ciao,
ti dico l’ordine che userò io nella mia tesi:
- Frontespizio;
- Colophon;
- Ringraziamenti;
- Indice;
- Indice delle figure;
- Indice delle tabelle;
- Capitoli;
- Appendici;
- Bibliografia.
L’appendice io la metterei comunque e sempre prima della bibliografia, perché potresti citarvi qualche opera. Questa è la mia opinione. Se verrò corretto da qualcuno più esperto di me, ben venga. Comunque, credo che sia questa la consuetudine (vedi l’Arte).
Concordo solo se togli i ringraziamenti. 🙂
Ciao
Enrico
::lord_g” post=73494Salve a tutti, ho un problema nell’inserimento di una pagina scritta in java all’interno della mia tesi. Potete darmi suggerimenti su come risolvere?
`\documentclass [a4paper, 12pt, oneside, openright] {book}
\usepackage[italian]{babel}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{fancyhdr}
\usepackage[svgnames]{xcolor}
\usepackage{listings}
\usepackage[utf8x]{inputenc}\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter.\ #1}{}}
\fancyhf{}
\fancyhead[RE,RO]{\bfseries\thepage}
\fancyhead[LO,LO]{\bfseries\leftmark}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
\addtolength{\headheight}{0.5pt}% Sostituire l'intestazione (predefinita) “Listing” con “Elenco dei codici”
\addto\captionsitalian{%
\renewcommand{\lstlistlistingname}{Elenco dei codici}}\begin{document}
\input{chapters/statodellarte}
\end{document}
`Nella pagina statodellarte ci vado ad inserire il seguente codice:
`
\begin{listings}
\inputminted{java}{source/BookBean.java}
\caption{Esempio di Backing Bean.}
\label{lst:bean}
\end{listings}
`ma mi dà come errore \begin{listings} mentre compilo con pdflatex nomefile.tex. Dove sbaglio?
Ehm, non mi pare che [tt]\inputminted[/tt] sia nel manuale di listings. Forse hai bisogno di [tt]\lstinputlisting[/tt]
Ciao
Enrico
::robitex” post=73490Ciao,
sono curioso: qualcuso sa di cosa si occupa il pacchetto LaTeX3 denominato l3luatex.sty?Definisce [tt]\lua_now:x[/tt] e [tt]\lua_shipout_x:n[/tt], equivalenti di [tt]\directlua[/tt] e [tt]\latelua[/tt]. Poi definisce uno stack per le tabelle di codici di categoria di LuaTeX e macro per definire le tabelle stesse. Fine.
Ciao
Enrico
::pucca” post=73487Grazie a tutti!!!
Ho risolto il problema utilizzando la procedura descritta da Claudio!!
Ne approfitto per chiedere altre cose….:)Ora i problemi presenti nel testo vengono numerati nel modo seguente: Problema 1, Problema 2, etc. Esiste un metodo per numerarli come: Problema 1.1, Problema 1.2,…?
Inoltre, ho difficoltà ad inserire l’insieme dei numeri reali R.
Nel codice ho inserito\mathbb{R}
ma ricevo il seguente messaggio di errore:
! Undefined control sequence. …ciamo un tempo di inizio $t_i \in \mathbb
Grazie ancora!!
Ti prego: in futuro non accavallare domande eterogenee. Il tuo desiderio è esaudito con la dichiarazione
`\newtheorem{problema}{Problema}[section]`
In ogni caso ti sconsiglio il pacchetto theorem. Poi fa’ come ti pare. 🙂Per la seconda questione: [tt]\usepackage{amssymb}[/tt]
Ciao
Enrico
::cfiandra” post=73476
Salve a tutti!!!
In questo periodo sono impegnata a scrivere la tesi e ho trovato questo forum davvero interessante….spero riuscirete a risolvere i miei problemi!!Devo inserire un Problema e numerarlo come fosse un Teorema, ma in realtà devo indicarlo come “Problema”.
Ho provato inserendo\begin{problema}
…
\end{problema}ma ricevo questo messaggio di errore
! LaTeX Error: Environment problema undefined.See the LaTeX manual or LaTeX Companion for explanation.Type H
for immediate help…. \begin{problema} Come posso risolvere il problema? Grazie!
Ciao e benvenuta! 🙂
Un modo per risolvere il tuo problema è definire l’ambiente problema (scusate il gioco di parole 😀 ) nel seguente modo:
`
% da inserirsi nel preambolo
\usepackage{theorem}
\theorembodyfont{\upshape}
\theoremstyle{definition}
\newtheorem{problema}{Problema}% nel documento
\begin{problema}
…
\end{problema}
`Ciao
ClaudioIl pacchetto theorem è certamente obsoleto. O ntheorem o, quello che preferisco, amsthm:
`\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{problema}{Problema}`
Gli altri teoremi, eventualmente, vanno definiti prima di [tt]\theoremstyle{definition}[/tt].Ciao
Enrico
::teomat” post=73467Ho provato il codice e funziona benissimo, ho solo fatto una piccola modifica per avere la lettera ‘n’ nello stesso colore del link:
`
\makeindex
\makeatletter
\let\orig@@index\index
\newcommand\nindex[1]{\orig@@index{#1|innota}}
\newcommand\innota[1]{#1\textcolor{RoyalBlue}{n}}
\usepackage{etoolbox}
\patchcmd{\scr@saved@footnotetext}{\reset@font}{\let\index\nindex\reset@font}{}{}
\makeatother
`Ultima domanda: al momento nell’indice si trova prima l’indicazione 1n e poi 1: sarebbe possibile invertire l’ordine (vale a dire prima il riferimento alla pagina e poi alla nota)?
Grazie in anticipo!
A presto,
MatteoTemo di no.
Ciao
Enrico
::
Sfoglio un libro sull’alluvione del Polesine nel 1951 e mi cade l’occhio sulla pagina 65, con una fotografia che la riempie per metà. Delle diciassette righe di testo, dieci terminano con il trattino di sillabazione. 🙁 Ed è così per tutto il libro; Times New Roman (ça va sans dire) su una giustezza di 13.5 cm. L’unico aggettivo che mi viene in mente è “ridicolo”. L’autore ha attivato la sillabazione sul suo word processor al massimo livello: togliamoci il pensiero. 🙁La sillabazione è un male necessario; se si può evitare, meglio. Ma se l’alternativa è una riga con spazi che paiono voragini bianche, diventa indispensabile rompere una parola. TeX fa in generale un lavoro egregio, purché la giustezza sia sufficiente. Con microtype è ancora meglio, se i parametri sono bene impostati per il carattere in uso. Chiaro che evitare la sillabazione su testo in più colonne (come un giornale, ma anche gli articoli a doppia colonna) è impossibile. Difficilmente TeX arriva a oltre la metà delle righe sillabate in ogni caso, se la lingua e il testo lo permettono: stampare un testo di Kant (in tedesco) su più colonne senza troppe sillabazioni sarebbe un’impresa erculea per via delle molte parole lunghe.
Ciao
Enrico
::DirkPitt” post=73461Ciao
potreste spiegarmi la differenza tra i due comandi in oggetto? Dal manuale di TeX leggo:
\kern
[…] In vertical modes this denotes a vertical space; otherwise it denotes a horizontal space […]
[tt]\hspace[/tt] è un comando di LaTeX che viene tradotto nel comando primitivo [tt]\hskip[/tt]. Invece [tt]\kern[/tt] è un comando primitivo che ha quindi una sintassi diversa da [tt]\hspace[/tt]: occorre dire
`\kern 3pt`
e mettere l’argomento tra graffe darebbe una lunga serie di errori.C’è un’altra differenza fondamentale: esistono skip orizzontali ([tt]\hskip[/tt]) e verticali ([tt]\vskip[/tt]), ma un solo comando [tt]\kern[/tt] che viene interpretato diversamente nei modi orizzontali e verticali; in ogni caso inserisce una spaziatura fissa (uno skip può avere la capacità di contrarsi ed espandersi) che sparisce a fine riga o a fine pagina, ma di per sé non indica un posto lecito dove spezzare una riga o una pagina se non è seguito immediatamente da uno skip; viceversa uno skip orizzontale o verticale è generalmente un posto lecito dove spezzare (riga o pagina). Questa proprietà rende la crenatura ([tt]\kern[/tt]) molto più invitante di uno skip in certe situazioni.
Per esempio il logo [tt]\TeX[/tt] è realizzato con crenature e non con skip; analogamente [tt]\thinspace[/tt] è una crenatura e gli spazi inseriti tra i puntini di sospensione sono crenature, in modo che la riga lì non possa essere spezzata.
Un esempio di crenatura verticale è in [tt]\footnoterule[/tt]: l’uso di [tt]\kern[/tt] evita di creare un punto legale per spezzare la pagina.
Ciao
Enrico
::OldClaudio” post=73458Se usi XeLaTeX, questo è in grado di includere anche immagini .eps, ma lo devono essere per davvero, non solo di nome (o meglio, di estensione). Il fatto che pdfLaTeX e XeLaTeX ammettano fra le estensioni accettabili anche l’estensione .ps è una anomalia dovuta al fatto che talvota file con questa estensione, in realtà dovrebbero avere l’estensione .eps, perché il loro contenuto è davvero conforme alle specifiche del formato incapsulabile.
Di fatto il driver [tt]xdvipdfmx[/tt] che converte il formato [tt].xdv[/tt] chiama [tt]ghostscript[/tt] per trasformare il file EPS in PDF al volo. In parecchi casi ci sono problemi: per esempio non vengono gestiti molto bene i font e le rotazioni.
Ciao
Enrico
::lampadina” post=73447Ciao a tutti,
stavo provando ad inserire una figura con estensione .ps in latex, compilando con xelatex, makeindex, bibtex.
Utilizzando questo codice:
\begin{figure}[ht]
\centering
\includegraphics[width=1\textwidth]{figura55.ps}
\caption{…}
\label{…}
\end{figure}Latex mi da questo errore:
! LaTeX Error: Cannot determine size of graphic in figura55.ps (no BoundingBox)
Con questo codice ho inserito già altre figure (che mi ha convertito in .ps una mia amica) e non ho mai avuto problemi. L’unica cosa che è cambiata è che ho scaricato gsview 4.9 e ho provato a convertire io la figura 😳 . Quando provo ad aprire questa figura gsview mi da questo messaggio:
This software comes with NO WARRANTY: see the file PUBLIC for details.
Displaying non DSC file C:/Users/…/Desktop/figura55.ps
Error: /undefined in II*
Operand stack:Execution stack:
%interp_exit .runexec2 –nostringval– –nostringval– –nostringval– 2 %stopped_push –nostringval– –nostringval– false 1 %stopped_push 1862 1 3 %oparray_pop 1861 1 3 %oparray_pop 1845 1 3 %oparray_pop 1739 1 3 %oparray_pop –nostringval– %errorexec_pop .runexec2 –nostringval– –nostringval– –nostringval– 2 %stopped_push –nostringval–
Dictionary stack:
–dict:1156/1684(ro)(G)– –dict:0/20(G)– –dict:73/200(L)–
Current allocation mode is local
Last OS error: No such file or directorySecondo voi l’errore che mi da Latex potrebbe essere connesso a questo problema???
Per convertire la figura ho usato ImageMagick …
Grazie in anticipo!!!
In che formato era la figura?
Dal momento che XeTeX è in grado di includere direttamente PNG, JPEG e PDF, non mi pare conveniente usare un metodo obsoleto. Usa il formato originale, se è fra questi.
Ciao
Enrico
::repez” post=73441Grazie! la guida con texdoc è identica a quella che ti ho detto io però è in inglese !
`texdoc fancyhdr-it`
Quanto al TeXbook: non è LaTeX. Quindi è perfettamente inutile andare in cerca là di qualcosa che non potrai mai usare (almeno senza studiarti l’intero libro :))
Ciao
Enrico
::repez” post=73398ma se cambiassi semplicemente la codifica dell’ editor mettendola per apple?
Di che ti preoccupi? A parte qualche parola negli schemi dei capitoli, non c’è nulla che richieda applemac. Togli quell’opzione e sostituiscila con utf8. E poi scrivi la tua roba con l’editor impostato a utf8.
Ciao
Enrico
-
AutoreRisposte