Risposte nei forum create
-
AutoreRisposte
-
::
Si tratta di un problema di codifica del file?
Si, lo sospetto. Hai portato il file da o su piattaforme in cui l’encoding di default non è lo stesso di quello usato per comporre quel documento? E’ possibile che a occhio non si veda la differenza, ma che invece TeX senta che qualche lettera non è stata scritta in modo corretto…
Ciao.
Probabile, ma in questo caso come posso risolvere il problema? Devo cambiare la codifica del file? Quale dovrei usare?
Grazie, Luca.
::
😯 e la graffa come diavolo è sparita da lì?Beh, immagino che debba ammettere una mia disattenzione 😳 , anche se sono certo di non aver mai modificato quel file (sarò sonnambulo?). Visto che l’errore è emerso dopo una installazione del sistema operativo immaginavo che mi mancasse qualche pacchetto.
Grazie mille e scusate della banalità del problema! 🙄
Ciao, Luca.
::Devi dare \renewcommand{\partname}{Libro} al momento giusto, cioè dopo che babel legge i file di inizializzazione.Codice:
\addto\captionsitalian{\renewcommand{\partname}{Libro}}Quindi devo scrivere quella riga di codice dopo aver chiamato babel.
Io scrivevo solo `\renewcommand{\partname}{Libro}` dopo aver chiamato babel e la cosa non era sufficiente.
Grazie mille, Luca.
::
Ciao a tutti.Grazie ai prezioni consigli di fabusdra ho migliorato di molto il mio pacchetto (anche se chiamarlo “pacchetto” mi sembra un po’ esagerato, vista la sua semplicità!).
Ecco il nuovo codice:
`\ProvidesPackage{cartella}[2004/08/12 v0.3 Costruzione cartella 30×60]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Usando il pacchetto cartella.sty il testo viene %
% convertito in cartelle di 30 righe di max 60 battute %
% con un carattere monospazio %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\renewcommand{\rmdefault}{\ttdefault} % Carattere monospazio
\setlength{\parindent}{0pt} % Togli indentazione
\RequirePackage[htt]{hyphenat} % Sillabazione per carattere monospazio
\linespread{1.6} % Interlinea doppia
\RequirePackage[twoside=false, % Imposta oneside
width=32em, % Righe di max 60 battute
vmarginratio=1:1, % Imposta rapporto 1:1 per margini top e bottom
lines=48] % Imposta pagina di 30 righe [48 = 30 x 1.6]
{geometry} % Chiama pacchetto 'geometry'\pagestyle{plain} % Elimina intestazioni
\AtBeginDocument {\sloppy} % Migliora 'a capo' delle righe`
Usando geometry ho proprio le pagine come le volevo. Ora mi basta richiamare il pacchetto cartella.sty ed ottengo il risultato che cercavo.
Mi restano due cose da vedere:
1- Se utilizzo un paccketto che mi cambia il font roman (es. palatino), il carattere monospazio viene cambiato in courier, costringendomi a settare una larghezza di 37em invece di 32em per ottenere la giusta lunghezza della riga. Potrei riprendere il comando \larg che avevo usato nella precedente versione del pacchetto, ma non mi sembra l’ideale. Forse è sufficiente operare con un comando che imposta il font TT non come courier ma sempre come quello usato normalmente
2- Ho provato ad utilizzare nello stesso documento layaureo e cartella, mettendo il secondo dopo il primo. Ma se non commento la riga di layaureo prima di compilare ho un errore: Option clash for package geometry. Immagino che i due pacchetti vadano in conflitto…In ogni caso sono soddisfatto dei risultati, grazie mille!!! 😀
::i pareva di ricordare che nella guida che hai letto ci fosse come passare in giro opzioni alle classi.
Sì, ci dovrebbe essere. Ho letto la guida, ma ammetto che in alcuni punti è risultata alquanto complicata. Mi pare però di capire che nel passare un comando ad una classe, rendo il pacchetto utilizzabile solo per quella classe. Ad esempio, se passo l’opzione a mwbk, poi non potrei utilizzare lo stesso pacchetto su un article o report, giusto? Mi sa che mi conviene fare un po’ prove.
la cosa più semplice che puoi fare cmq è un requirepackage su geometry
Lo penso anche io. Per ora mi ero trovato bene modificando le larghezze e la lunghezza del testo, visto che anocra non mi ero impratichito con geometry. Ma mi rileggerò al guida, magari mi aiuto studiadomi il layaureo e spero di farcela.
Bene, mi sa che ho trovato qualcosa da fare durante le ferie ormai prossime! 😀
Ciao, Luca.
::
Ciao a tutti.Ho modificato il cartella.sty come segue:
`\ProvidesPackage{cartella}[2004/07/30 v0.2 costruzione cartella 30×60]
%% TESTO CARTELLA %%
\renewcommand{\rmdefault}{\ttdefault} % Carattere monospazio
\setlength{\parindent}{0pt} % Togli indentazione
\linespread{1.6} % Interlinea doppia
\RequirePackage[htt]{hyphenat} % Sillabazione per carattere monospazio
\setlength{\textwidth}{32em} % Righe di 60 caratteri DEFAULT
\newcommand{\larg}[1]{\setlength{\textwidth}{#1}}
\pagestyle{plain}
\AtBeginDocument {\sloppy}
`Ho (grazie del consiglio!) utilizzato il \RequirePackage al posto di \usepackage, eliminato le intestazioni fancy (in una 30×60 non mi servono) e fatto in modo di non dover più decommentare la riga \sloppy nel documento di partenza.
Oltre a rendere il pacchetto più aderente allo standard, mi piacerebbe fare in modo che nel momento in cui si usa il pacchetto si attivi in automatico l’opzione oneside, senza doverla specificare nel preambolo del documento. Esiste un comando che faccia ciò?
Grazie mille, Luca.
::
Ho scaricato proprio ieri sera la guida che mi consigli, perché sono conaspev ole che un pacchetto scritto in questo modo non è corretto.
Ma avevo creato il file .sty solo per raggruppare in un semplice comando una serie di righe che avrei dovuo commentare e decommentare all’occorrenza. Non ricordo in quale guida si consigliava di raggruppare dei comandi in questo modo per facilitare le cose.In ogni caso era mia intenzione migliorare il tutto, per questo avevo stampato la guida, ho intenzione di leggerla quanto prima.
Grazie mille, Luca.
::
Ciao a tutti.Riporto il codice che ho utilizzato per passare agevolmente da una formattazione tradizionale ad una 30×60.
Premetto che uso Latex da poco tempo e vi prego di non inorridire per la rozzezza del mio codice.
Questo è il documento .tex di partenza:
`
\documentclass[12pt,a4paper,openany, twoside]{mwbk}%%% Pacchetti base
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[italian]{babel}
\frenchspacing
%\usepackage{newcent} % newcent, palatino, times \larg{37em} !!!%%% Fancy Headings
\usepackage{fancyhdr}
\pagestyle{fancy}
%% Personalizza fancy
\fancyhead{}
\fancyhead[LE]{Luca Di Gialleonardo}
\fancyhead[RE]{P~S~I}
\fancyhead[LO]{\leftmark}
\fancyhead[RO]{\rightmark}
\cfoot{\thepage}
%% Cambia Mark
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter}{#1}}%%% Comandi veloci
\newcommand{\e}[1]{\emph{#1}} % Per creare del testo enfatizzato
\newcommand{\spazio}{\bigskip \noindent}%%%%% Conversione in CARTELLA %%%%%
\addtolength{\headwidth}{1cm}
%% TESTO NORMALE %% Disattiva se 30×60
\usepackage[rilegatura=1cm]{layaureo}
%% TESTO CARTELLA %%
% \usepackage{cartella}
% \larg{37em}%%% Title Page
\title{P~S~I}
\author{Luca Di Gialleonardo}
\date{\small Romanzo}%%%%%%%%%%%%%%%%%%%%%%%%%%%% Inizio Documento %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}% \sloppy % Attivare solo in modalità 30×60 %%%%%%%%%%%%
\frontmatter
\maketitle\tableofcontents
\mainmatter
\include{00prologo}
…
`Con questo preambolo ho un testo standard.
Se voglio passare al 30×60, imposto il oneside (ma solo per semplicità), decommento le righe:
`
\usepackage{cartella}\sloppy
`e commento la riga che attiva il layaureo.
Questo è il contenuto del pacchetto cartella.sty:
`
\ProvidesPackage{cartella}[2004/07/30 v0.1 costruzione cartella 30×60]%% TESTO CARTELLA %%
\renewcommand{\rmdefault}{\ttdefault} % Carattere monospazio
\setlength{\parindent}{0pt} % Togli indentazione
\linespread{1.6} % Interlinea doppia
\usepackage[htt]{hyphenat} % Sillabazione per carattere monospazio
\setlength{\textwidth}{32em} % Righe di 60 caratteri DEFAULT
\newcommand{\larg}[1]{\setlength{\textwidth}{#1}
\setlength{\headwidth}{\textwidth}} % rivedi larghezza
\setlength{\headwidth}{\textwidth} % Correzione larghezza intestazione
`In questo modo ottengo pagine con caratteri monospazio di 60 righe e con un massimo di 30 battute per riga.
Ho dovuto aggiungere il comando \larg perché se utililizzo il pacchetto newcent (ma anche palatino e altri) viene utilizzato il courier come carattere monospazio e la larghezza di 32em della pagina non è più sufficiente per avere righe di 30 battute. Utilizzando questi pacchetti devo decommentare la righa \larg{37em} nel preambolo del documento per correggere il tutto.
Ma ho un dubbio: mi pare di aver capito che l’unità di misura em equivale alla larghezza della lettera m (o M?) nel font di default. Pensavo che settando la larghezza del testo a 30em avrei ottenuto il risultato cercato, ma sbagliavo. Ciò avviene perché la ridefinizione dell’rmdefault, non cambia il font di base?In ogni caso spero di non aver commesso gravi errori e che qualcuno di voi possa darmi buoni consigli per migliorare il codice.
Magari si potrebbe creare un pacchetto come si deve e metterlo a disposizione degli altri, forse non sono l’unico ad avere questa esigenza.Grazie mille a tutti, Luca.
::
Ciao a tutti,automaticamente? se ne impara sempre di nuove…
Già, la cosa ha stupito anche me!
per esempio io ti consiglierei un \sloppy
Avevo dimenticato di dirlo, ma sto utilizzando un \sloppy, che mi rende il codice più semplice.
Ora sono in ufficio, non appena mi sarà possibile posterò i comandi che uso, così vi faccio inorridire un po’ 😳 😯 😀
Magari mi date una mano a migliorarli. 😉A presto, Luca.[/code]
::
Ciao fabustra,hai perfettamente ragione.
Utilizzando nel preambolo
`\renewcommand{\rmdefault}{\ttdefault}`
il testo non viene più giustificato, ma è allineato a sinistra. Mi interessa contare le battute, anche se non ad un livello esatto. L’importante è poter valutare, seppure in modo approssimativo, di quante cartelle 30×60 è composto il testo, magari potendolo anche visualizzare a video. Naturalmente le pagine non avranno esattamente 1800 battute, ma a me basta avere un’idea di massima.
Utilizzando le guide che mi avete consigliato e spulciando qua e là alcuni pacchetti sono riuscito ad ottenere una serie di comandi che mi permettono di convertire il testo in cartelle 30×60 con carattere monospazio. Ho preso questi comandi e li ho messi in un file .sty, creando un pacchetto un po’ rozzo ma efficace.
Mi basta metterlo nel preambolo e commentarlo se voglio il testo normale, decommentarlo se voglio la visualizzazione in cartelle.E’ un modo di fare poco elegante, ma funzoina. Se vi interessa posso postare i comandi, magari mi date qualche dritta in più 🙂
Ciao e grazie, Luca.
-
AutoreRisposte