lyx_mirror/lib/doc/attic/it_Customization.lyx

11870 lines
222 KiB
Plaintext
Raw Normal View History

#LyX 2.3 created this file. For more info see http://www.lyx.org/
\lyxformat 544
\begin_document
\begin_header
\save_transient_properties true
\origin /systemlyxdir/doc/attic/
\textclass scrbook
\begin_preamble
% DO NOT ALTER THIS PREAMBLE!!!
%
% This preamble is designed to ensure that this document prints
% out as advertised. If you mess with this preamble,
% parts of this document may not print out as expected. If you
% have problems LaTeXing this file, please contact
% the documentation team
% email: lyx-docs@lists.lyx.org
\usepackage{ifpdf} % part of the hyperref bundle
\ifpdf % if pdflatex is used
% set fonts for nicer pdf view
\IfFileExists{lmodern.sty}
{\usepackage{lmodern}}{}
\fi % end if pdflatex is used
% the pages of the TOC is numbered roman
% and a pdf-bookmark for the TOC is added
\let\myTOC\tableofcontents
\renewcommand\tableofcontents{%
\frontmatter
\pdfbookmark[1]{\contentsname}{}
\myTOC
\mainmatter }
\end_preamble
\options bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
\use_default_options false
\begin_modules
logicalmkup
\end_modules
\maintain_unincluded_children false
\begin_local_layout
Format 35
InsetLayout Flex:MenuItem
LyxType charstyle
LabelString menu
LatexType command
LatexName menuitem
Font
Family Sans
EndFont
Preamble
\newcommand*{\menuitem}[1]{{\sffamily #1}}
EndPreamble
End
# In case we need to do with sans...
#InsetLayout CharStyle:Code
#Font
#Family Sans
#EndFont
#Preamble
#\renewcommand{\code}[1]{{\sffamily #1}}
#EndPreamble
#End
\end_local_layout
\language italian
\language_package default
\inputencoding auto
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures true
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize 12
\spacing single
\use_hyperref true
\pdf_title "LyX Configuration Manual"
\pdf_author "LyX Team"
\pdf_subject "LyX-documentation Customization"
\pdf_keywords "LyX, documentation, customization"
\pdf_bookmarks true
\pdf_bookmarksnumbered true
\pdf_bookmarksopen true
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks true
\pdf_backref false
\pdf_pdfusetitle false
\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
2014-03-23 14:45:15 +00:00
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
2014-03-23 14:45:15 +00:00
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
2014-03-23 14:45:15 +00:00
\justification true
\use_refstyle 0
\use_minted 0
\index Indice
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 1
\math_indentation default
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 2
\paperpagestyle headings
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict true
\end_header
\begin_body
\begin_layout Title
Personalizzazione di \SpecialChar LyX
: Caratteristiche per l'utente avanzato
\end_layout
\begin_layout Author
dal \SpecialChar LyX
Team
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
\noindent
Questa guida è aggiornata da
\noun on
Mike Ressler
\noun default
, mike.ressler@alum.mit.edu e mantenuta in italiano da
\noun on
Claudio Coco,
\noun default
lacocio@libero.it.
Potete inviare commenti o segnalare errori ad uno di loro.
\end_layout
\end_inset
\begin_inset Newline newline
\end_inset
traduzione italiana a cura di Lino Muoio
\end_layout
\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents
\end_inset
\end_layout
\begin_layout Chapter
Introduzione
\end_layout
\begin_layout Standard
Questo manuale illustra le caratteristiche di personalizzazione presenti
in \SpecialChar LyX
.
Verranno di seguito discussi temi come le scorciatoie da tastiera, le opzioni
di anteprima sullo schermo, le opzioni di stampa, i comandi da inviare
a \SpecialChar LyX
attraverso il \SpecialChar LyX
Server, l'internazionalizzazione, l'installazione di
nuove classi di testo \SpecialChar LaTeX
e layouts di \SpecialChar LyX
ecc.
Ovviamente non ci possiamo augurare di prendere in considerazione tutto
quello che è possibile cambiarei nostri sviluppatori aggiungono nuovi
funzioni più velocemente di quanto riusciamo a documentarema andremo a
spiegare le personalizzazioni più comuni e possibilmente cercheremo di
darvi qualche indicazione per quelle più complesse.
\end_layout
\begin_layout Standard
\SpecialChar LyX
1.1.6 introduce una nuova interfaccia utente per le personalizzazioni che
possono essere richiamate attraverso
\family sans
\bar under
E
\bar default
dit\SpecialChar menuseparator
\bar under
P
\bar default
references
\family default
.
Questo non rende obsoleta la seguente trattazione circa i files di configurazio
ni di \SpecialChar LyX
, ma si spera invece che semplifichi considerabilmente l'adattamento
di \SpecialChar LyX
alle
\shape slanted
vostre
\shape default
necessità.
\end_layout
\begin_layout Chapter
File di configurazione di \SpecialChar LyX
\end_layout
\begin_layout Standard
Questo capitolo ha lo scopo di aiutare ad orientarsi all'interno dei file
di configurazione di \SpecialChar LyX
.
Prima di continuare a leggere questo capitolo, dovreste trovare dove si
trova la directory delle librerie di \SpecialChar LyX
usando
\family sans
\bar under
H
\bar default
elp\SpecialChar menuseparator
\bar under
V
\bar default
ersion.
\family default
Questa direcotry è il posto in cui \SpecialChar LyX
mette i suoi files di configurazione
generale, che chiameremo
\family typewriter
\SpecialChar LyX
Dir
\family default
nel prosieguo del documento.
\end_layout
\begin_layout Section
\size larger
Cosa c'è in
\family typewriter
\size default
\SpecialChar LyX
Dir
\family default
\size larger
?
\end_layout
\begin_layout Standard
\family typewriter
\SpecialChar LyX
Dir
\family default
e le sue sottodirectory contiene numerosi files che possono essere usati
per la personalizzazione del comportamento di \SpecialChar LyX
.
Nuovo in \SpecialChar LyX
1.1.6 è la possibiltà di richiamare questi files dall'interno dello
stesso \SpecialChar LyX
attraverso il menu
\family sans
\shape smallcaps
\bar under
E
\shape default
\bar default
dit \SpecialChar menuseparator
\family default
\family sans
\bar under
P
\bar default
references
\family default
.
La maggior parte delle personalizzazioni che si effettuano sono possibili
attraverso questo menu.
Tuttavia, molti altri aspetti principali di \SpecialChar LyX
possono essere personalizzati
modificando gli altri file nella directory
\family typewriter
\SpecialChar LyX
Dir
\family default
.
Questi sono divisi in differenti categorie, descritte nelle seguenti sottosezio
ni.
\end_layout
\begin_layout Subsection
Files generati automaticamente
\end_layout
\begin_layout Standard
Questi files vengono generati quando configurate \SpecialChar LyX
.
Contengono vari valori predefiniti che vengono fissati mediante una procedura
di ispezione.
In generale, non è una buona idea modificarli, dato che potrebbero essere
sovrascritti in qualsiasi momento.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
lyxrc.defaults
\family default
\series default
contiene i valori di default per vari comandi.
Se non gradite alcuni dei valori assegnati, potete reimpostarli usando
la nuova voce
\family sans
\shape smallcaps
\bar under
E
\shape default
\bar default
dit \SpecialChar menuseparator
\family default
\family sans
\bar under
P
\bar default
references
\family default
.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
packages.lst
\family default
\series default
contiene la lista dei pacchetti che sono stati riconosciuti da \SpecialChar LyX
.
Non è normalmente usata dal programma, ma le informazioni estratte, ed
anche di più sono rese disponibili attraverso
\family sans
\bar under
H
\bar default
elp \SpecialChar menuseparator
L
\bar under
a
\bar default
\SpecialChar TeX
\begin_inset space ~
\end_inset
Configuration.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
textclass.lst
\family default
è la lista delle classi di testo che sono stati trovate nella vostra directory
\family typewriter
layout/
\family default
, insieme alla classe di documento LateX associata e relativa descrizione.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
doc/\SpecialChar LaTeX
Config.lyx
\family default
è generata automaticamente durante la configurazione dal file
\family typewriter
\SpecialChar LaTeX
Config.lyx.in
\family default
.
Ogni stringa del form
\begin_inset Quotes eld
\end_inset
@chk_foo@
\begin_inset Quotes erd
\end_inset
verrà sostituito con
\begin_inset Quotes eld
\end_inset
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
no
\begin_inset Quotes erd
\end_inset
a seconda di dove sia stato trovato il pacchetto
\family typewriter
foo
\family default
.
\end_layout
\begin_layout Subsection
Directories
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
bind/
\family default
\series default
questa directory contiene i files con l'estensione
\family typewriter
.bind
\family default
che definiscono i tasti di scelta rapida usati in \SpecialChar LyX
.
Se esiste una versione internazionalizzata del bindfile chiamato
\family typewriter
$LANG_xxx.bind
\family default
, questo sarà usato per primo.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
clipart/
\family default
\series default
contiene immagini Postscript® che possono essere inclusi nei documenti.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
doc/
\family default
\series default
contiene i files di documentazioni di \SpecialChar LyX
(incluso quello che state ora leggendo).
Il file
\family typewriter
\SpecialChar LaTeX
Config.lyx
\family default
è particolarmente speciale, come già detto.
Se esiste una versione internazionale del documento di aiuto con
\family typewriter
$LANG_
\family default
preposto al nome, quello sarà usato per primo.
Guardare il capitolo
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:i18n"
\end_inset
per i dettagli.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
examples/
\family default
contiene files di esempio che spiegano come usare alcune caratteristiche.
Nel file browser premere il pulsante
\family sans
Example
\family default
per raggiungerlo.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
images/
\family default
contiene files di immagine che sono usati nel menu
\family sans
Document
\family default
.
In aggiunta, vi sono contenute anche le icone idividuali usate nella toolbar
e nella schermata che viene mostrata all'avvio di \SpecialChar LyX
.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
kdb/
\family default
contiene i files di keymapping della tastiera.
Guardare il capitolo
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:keymap"
\end_inset
per i dettagli.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
layouts/
\family default
contiene i files di classi di testo descritti nel capitolo
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:textclass"
\end_inset
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
scripts/
\family default
contiene alcuni files che dimostrano le capacità dell'insieme
\family sans
External
\begin_inset space ~
\end_inset
Template.
\family default
Riferirsi a
\family sans
Help\SpecialChar menuseparator
External\SpecialChar menuseparator
Material
\family default
per ulteriori informazioni.
[
\emph on
Nota dell'autore: se questo file è incorporato in un altro dei documenti
standard, non sarà reperibile in questa locazione—AL
\emph default
].
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
templates/
\family default
contiene i files templates standard di \SpecialChar LyX
descritti nel Capitolo
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:templates"
\end_inset
.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
tex/
\family default
contiene alcuni files .cls distribuiti con \SpecialChar LyX
.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
ui/
\family default
contiene i files con estensione
\family typewriter
.ui
\family default
che definiscono l'interfaccia utente di \SpecialChar LyX
.
Cioè i files definiscono quali oggetti appaiono in quali menu e quelli
che appaiono nella toolbar.
Riferirsi al Capitolo
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:ui"
\end_inset
per i dettagli.
\end_layout
\begin_layout Subsection
Files che non volete modificare
\end_layout
\begin_layout Standard
Questi files sono usati internamente da \SpecialChar LyX
e generalmente non avete bisogno
di modificarli a meno che non siate sviluppatori.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
CREDITS
\family default
\series default
questo file contiene la lista degli sviluppatori di \SpecialChar LyX
.
Si può accedere a questo file attraverso il menu
\family sans
\bar under
H
\bar default
elp\SpecialChar menuseparator
Cr
\bar under
e
\bar default
dits.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
chkconfig.ltx
\family default
\series default
questo è uno script \SpecialChar LaTeX
usato durante il processo di configurazione.
Non va lanciato direttamente.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\series medium
configure
\family default
\series default
questo è lo script usato per riconfigurare \SpecialChar LyX
.
Crea files di configurazione nella directory in cui è lanciato.
\end_layout
\begin_layout Subsection
Altri files che necessitano di una riga o due di spiegazioni...
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
encodings
\family default
???
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
external_templates
\family default
questo file contiene i template disponibili nella nuova funzione
\family sans
External
\begin_inset space ~
\end_inset
Template
\family default
.
Riferirsi a
\family sans
\bar under
H
\bar default
elp\SpecialChar menuseparator
External
\begin_inset space ~
\end_inset
\bar under
M
\bar default
aterial
\family default
per ulteriori informazioni.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
language
\family default
questo file contiene una lista di tutti i linguaggi correntemente supportati
da \SpecialChar LyX
.
\end_layout
\begin_layout Section
\size larger
La vostra directory di configurazione
\end_layout
\begin_layout Standard
Anche se si usa \SpecialChar LyX
come utente non privilegiato, è possibile voler cambiare
la configurazione per un uso personale.
La directory
\family typewriter
UserDir
\family default
contiene tutti i files della vostra configurazione personale.
E' questa la directory descritta come come
\begin_inset Quotes eld
\end_inset
user directory
\begin_inset Quotes erd
\end_inset
in
\family sans
\bar under
H
\bar default
elp\SpecialChar menuseparator
\bar under
V
\bar default
ersion.
\family default
Questa directory è usata come mirror di
\family typewriter
\SpecialChar LyX
Dir
\family default
, il che significa che ogni file in
\family typewriter
UserDir
\family default
è un sostituto del corrispondente file in
\family typewriter
\SpecialChar LyX
Dir
\family default
.
Ogni file di configurazione descritto nelle sezioni precedenti può essere
posizionato sia nelle grandi directory di sistema, in quel caso agirà su
tutti gli utenti, sia nella vostra directory locale per un uso di carattere
personale.
\end_layout
\begin_layout Standard
Per rendere chiare le cose, si forniscono alcuni esempi:
\end_layout
\begin_layout Itemize
Per personalizzare il comportamento di \SpecialChar LyX
prima della versione 1.1.6, l'utente
doveva copiare il file
\family typewriter
\SpecialChar LyX
Dir/lyxrc.example
\family default
in
\family typewriter
UserDir/lyxrc
\family default
e modificarlo direttamente.
La nuova versione di \SpecialChar LyX
legge ancora questo file, se presente in
\family typewriter
UserDir
\family default
, ma ogni cambiamento successivo fatto usando il nuovo menu
\family sans
\bar under
E
\bar default
dit\SpecialChar menuseparator
\bar under
P
\bar default
references
\family default
sono salvate nel nuovo file
\family typewriter
preferences
\family default
.
In seguito
\family typewriter
lyxrc
\family default
non sarà più letto e potrà essere rimosso.
\end_layout
\begin_layout Itemize
Quando si riconfigura attraverso
\family sans
\bar under
O
\bar default
ptions\SpecialChar menuseparator
\bar under
R
\bar default
econfigure
\family default
\SpecialChar LyX
lancia configure ed i files risultanti sono scritti nella vostra directory
di configurazione locale
\family sans
(vedere la sezione
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:autodetected"
\end_inset
\family default
per avere una lista dei settaggi di\SpecialChar menuseparator
questa sezione).Questo significa che
ogni classe di testo addizionale che potreste aver aggiunto alla directory
\family typewriter
UserDir/layouts
\family default
sarà aggiunta alla lista delle classi nel menu
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument.
\end_layout
\begin_layout Itemize
Similmente, se avete installato alcune classi di documento \SpecialChar LaTeX
nella vostra
home directory, che \SpecialChar LaTeX
può trovare nel vostro path
\family typewriter
TEXTINPUTS
\family default
, queste verranno mostrate nella lista delle vostre classi di testo.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
come pure se voi o \SpecialChar LyX
abbiate un file
\family typewriter
.layout
\family default
per esso, naturalmente.
\end_layout
\end_inset
\end_layout
\begin_layout Itemize
Se acquisite della documentazione aggiornata dal sito ftp di \SpecialChar LyX
e non potete
installarla perchè non avete i permessi di amministratore sul vostro sistema,
potete semplicemente copiare i files in
\family typewriter
UserDir/doc/
\family default
e saranno raggiungibili attraverso il menu
\family sans
\bar under
H
\bar default
elp
\family default
!
\end_layout
\begin_layout Section
Lanciare \SpecialChar LyX
con configurazioni multiple
\end_layout
\begin_layout Standard
La libertà di configurazione della relativa directory locale può non essere
sufficiente se volete avere più di una configurazione a vostra disposizione.
Ad esempio, vorreste poter usare differenti scorciatoie da tastiera o settaggi
della stampante in tempi diversi.
Potete ottenere questo attraverso più directory che verranno richiamate
al run-time.
\end_layout
\begin_layout Standard
Richiamando \SpecialChar LyX
con lo switch da riga di comando
\family typewriter
-userdir
\family default
<
\emph on
some directory
\emph default
> permette al programma di leggere la configurazione da quella directory
e non dalla directory di default (potete scegliere la directory di default
lanciando \SpecialChar LyX
senza lo switch descritto sopra).
Se questa directory non esiste, \SpecialChar LyX
può crearla per voi proprio come fa per
la directory di default la prima volta che si lancia il programma.
Potete modificare le opzioni di configurazione in questa
\family typewriter
Userdir
\family default
addizionale esattamente come fareste per la directory di default.
Queste directory sono completamente indipendenti (ma continuate a leggere).
Notare che settare la variabile ambientale
\family typewriter
LYX_USERDIR_VER
\family default
allo stesso valore ha esattamente lo stesso effetto.
\end_layout
\begin_layout Standard
Avere molte configurazioni richiede anche più manutenzione: se volete aggiungere
un nuovo layout a
\family typewriter
Userdir/layouts
\family default
che volete disponibile per tutte le vostre configurazioni, dovete aggiungerlo
ad ogni directory separatamente.
Potete evitare questo col seguente trucco: dopo che \SpecialChar LyX
ha creato la directory
addizionale, la maggior parte delle sottodirectory (vedi sotto) sono vuote.
Se volete che la nuova configurazione faccia da mirror ad una esistente,
sostituite la sottodirectory vuota con un link simbolico alla relativa
sottodirectory di una configurazione esistente.
Fate attenzione tuttavia alla sottodirectory
\family typewriter
doc/
\family default
dato che contiene un file generato dallo script di configurazione (accessibile
anche attraverso
\family sans
\bar under
O
\bar default
ptions\SpecialChar menuseparator
\bar under
R
\bar default
econfigure
\family default
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:autodetected"
\end_inset
) che è specifico per ogni configurazione.
\end_layout
\begin_layout Chapter
Il
\lang english
Preferences dialog
\end_layout
\begin_layout Section
Usare il popup per la prima volta
\end_layout
\begin_layout Standard
Storicamente, è possibile personalizzare il comportamento di \SpecialChar LyX
attraverso
la modifica del contenuto del file
\family typewriter
UserDir/lyxrc.
\family default
Questo è cambiato in \SpecialChar LyX
1.1.6 perchè ora esiste un menu
\family sans
\bar under
E
\bar default
dit\SpecialChar menuseparator
\bar under
P
\bar default
references
\family default
per semplificare il processo di semplificazione.
\family typewriter
UserDir/lyxrc
\family default
verrà ancora letto fino a quando non si usa il nuovo menu per la prima
volta.
Successivamente, ogni cambiamento sarà salvato in un nuovo file,
\family typewriter
preferences,
\family default
e
\family typewriter
lyxrc
\family default
non sarà più letto.
Potrà così essere rimosso.
\end_layout
\begin_layout Standard
Il nuovo file
\family typewriter
UserDir/preferences
\family default
conterrà solo i cambiamenti che sono stati fatti nel comportamento di base,
alcuni dei quali sono ben codificati in \SpecialChar LyX
ed altri sono contenuti nel file
di sistema
\family typewriter
\SpecialChar LyX
Dir/lyxrc.defaults.
\family default
Notate che in entrambi i files le righe che iniziano con
\begin_inset Quotes eld
\end_inset
#
\begin_inset Quotes erd
\end_inset
sono solo commenti e non sono interpretati.
Tuttavia, solo gli amministratori di sistema dovrebbero editare
\family typewriter
\SpecialChar LyX
Dir/lyxrc.
\family default
Gli utenti dovrebbero usare la voce
\family sans
\bar under
E
\bar default
dit\SpecialChar menuseparator
\bar under
P
\bar default
references
\family default
per creare e modificare il loro file personale
\family typewriter
UserDir/preferences.
\end_layout
\begin_layout Standard
Speriamo che il menu
\family sans
\bar under
E
\bar default
dit\SpecialChar menuseparator
\bar under
P
\bar default
references
\family default
sia ampiamente autoesplicativo.
A quasi tutti i comandi sono stati associati dei commenti, così da non
crearvi particolari difficoltà ad effettuare modifiche a vostro piacimento.
Prima di analizzare alcuni dei comandi più importanti di seguito, vogliamo
fare un avvertimento: L'applicazione di alcuni dei cambiamenti (es.
fonts dello schermo) hanno effetto istantaneo.
Altri (es.
cambiamenti nel file associazioni) non l'avranno.
Abbiate pazienza; questo è un work-in-progress.
Se nulla sembra accadere come cambiamento salvate i cambiamenti e riavviate
\SpecialChar LyX
.
\end_layout
\begin_layout Section
Schermo & Fonts
\end_layout
\begin_layout Standard
Il carattere usato per visualizzare i vostri documenti sullo schermo di
\SpecialChar LyX
è molto importante, dato che leggerete tutti i documenti con questo carattere.
Inoltre è importante che il carattere sia leggibile ed abbia il miglior
aspetto possibile.
Il \SpecialChar LyX
team ha provato a fornire il migliore carattere predefinito, ma dato
che praticamente tutti i sistemi X11 sono differenti, è molto probabile
che il carattere predefinito sia sub-ottimale per il vostro sistema.
Fortunatamente è possibile ovviare a tale situazione, ma prima di chiarirvi
le modalità secondo le quali procedere, sarebbe bene che sapeste qualcosa
di più sui font in quanto la loro scelta nasce da un compromesso tra le
vostre preferenze e le capacità del sistema col quale lavorate.
\end_layout
\begin_layout Standard
Notate che questa sezione tratta solo dei caratteri visibili sullo
\emph on
schermo
\emph default
all'interno della finestra di \SpecialChar LyX
.
I caratteri che appaioni sulla
\emph on
carta
\emph default
in uscita dalla stampante sono indipendenti da questi e sono determinati
dalla classe del documento.
Consultate la
\emph on
Guida dell'utente
\emph default
per imparare a cambiare il carattere della versione stampata del vostro
documento.
\end_layout
\begin_layout Standard
Di base, i caratteri che appaiono sullo schermo sono di due tipi differenti:
caratteri scalabili e caratteri bitmap non scalabili.
La distinzione può sembrare leggermente arbitraria, dato che i font non-scalabi
li sono generalmente scalabili nella maggior parte dei moderni renderers
di font.
La differenza sta nella
\emph on
qualità
\emph default
dello scaling, e nella
\emph on
velocità
\emph default
con cui essi vengono visualizzati.
Da ciò ne deriva l'importanza di capire dove sia bene usare l'uno o l'altro
tipo di font.
\end_layout
\begin_layout Standard
I caratteri scalabili sono costruiti a partire dai
\emph on
contorni
\emph default
di ciascun glifo (cioè carattere) presente nel font.
Questo significa che ogni glifo è definito attraverso curve matematiche
che bene si adattano allo scaling di qualsiasi dimensione.
Il renderer di font ha quindi il compito di interpretare tale definizione
e generare una piccola figura composta di pixels in relazione alla grandezza
ed al glifo richiesto dal programmatore.
Ne segue che l'aspetto dei font scalabili risulta buono per ogni dimensione,
più realisticamente per quasi tutte le dimensioni.
Infatti i fonts scalabili sono definiti in modo astratto e di conseguenza
può essere difficile ottenere un buon rendering per taglie piccole, dove
ogni pixel deve essere perfettamente calcolato per ottenere una buona immagine.
Tale operazione è tecnicamente attuabile mediante la definizione matematica,
ma per consentire un rendering ragionevolmente veloce, si preferisce raggiunger
e un compromesso, con il risultato è che i font scalabili sono più difficili
da leggere per le piccole dimensioni.
\end_layout
\begin_layout Standard
I font bitmap invece sono definiti da grafica bitmap sin dall'inizio, così
appaiono buoni per ogni dimensione richiesta.
tuttavia, non scalano bene, perchè per scalare un glifo, ogni pixel è allargato
in più pixel.
E' quanto accade se cercate di allargare una fotografia in
\emph on
xv
\emph default
o in qualsiasi altro programma di manipolazione.
Per ridurre questo effetto, i font bitmap sono forniti in varie dimensioni
prestabilite, in genere da 8 pixel a 34 pixel o più in relazione ai possibili
utilizzi.
Il vantaggio derivante dall'uso di font bitmap è che per visualizzare ogni
glifo non sono necessari calcoli complessi, così da rendere i font bitmap
più velocemente rappresentabili sullo schermo rispetto ai font scalari.
Lo svantaggio consiste nel fatto che le dimensioni non comprese in quelle
predefinite, devono essere ottenute raddoppiando i pixel, e conseguentemente
l'aspetto non è dei migliori.
\end_layout
\begin_layout Standard
Se ne conclude quindi che i font bitmap sono generalmente i migliori per
le piccole taglie, dove disponibili, mentre i font scalabili sono da preferire
per grandi dimensioni.
La logica conclusione sarebbe quella di usare i font bitmap per le piccole
dimensioni, ed i font scalabili per le dimensioni superiori.
Sfortunatamente questa non è una buona idea, dato che i font bitmap e i
font scalabili non sono stati progettati per essere usati insieme ed il
risultato derivante dal loro contemporaneo utilizzo sarebbe piuttosto sgradevol
e.
La soluzione ottimale è dunque quella di provare entrambi gli schemi e
scegliere tra i due quello che meglio si adatta alle proprie esigenze.
\end_layout
\begin_layout Standard
Di default, Lyx usa i font bitmap non-scalabili.
Per i font serif, è usato
\emph on
times
\emph default
, per i font sans serif, è usato
\emph on
helvetica
\emph default
, mentre
\emph on
curier
\emph default
è usato come font monospazio stile macchina da scrivere.
\end_layout
\begin_layout Standard
In seguito descriveremo cosa fare se in \SpecialChar LyX
il testo non ha un bell'aspetto.
Partiremo con i parametri più importanti: DPI e lo zoom dei fonts.
\end_layout
\begin_layout Subsection
Settaggi DPI e Zoom di Font
\end_layout
\begin_layout Standard
\SpecialChar LyX
automaticamente prova a scalare i fonts in modo da farli sembrare il più
possibile uguali a quelli che verranno stampati, a meno del cosiddetto
fattore di zoom.
\end_layout
\begin_layout Standard
Per far funzionare su ogni sistema, questo meccanismo sfrutta i settaggi
dei DPI (dots per inch) dello schermo.
Il settaggio dei DPI del vostro sistema è rilevato automaticamente da \SpecialChar LyX
attraverso le informazioni che fornisce il server X.
Potete controllare cosa rileva \SpecialChar LyX
circa i DPI, lanciando \SpecialChar LyX
in questo modo:
\family typewriter
lyx -dbg 2.
\family default
\end_layout
\begin_layout Standard
Su molti sistemi, X non è settato correttamente, quindi dovrete verificare
la correttezza dei settaggi manualmente.
Lanciate
\begin_inset Quotes eld
\end_inset
\family typewriter
xdpyinfo
\family default
\family typewriter
| more
\family default
\begin_inset Quotes erd
\end_inset
e scrivete quali sono i DPI per la risoluzione che usate (che dovrebbe
essere simile a quella che \SpecialChar LyX
rileva).
E' il numero menzionato come
\begin_inset Quotes eld
\end_inset
risoluzione
\begin_inset Quotes erd
\end_inset
.
Inserite poi anche il numero di pixel che avete in larghezza ( il primo
numero sotto
\begin_inset Quotes eld
\end_inset
dimensioni
\begin_inset Quotes erd
\end_inset
).
\end_layout
\begin_layout Standard
Dopodichè prendete il buon vecchio righello e misurate la larghezza visibile
dell'immagine su vostro monitor.
Convertite queste misure in pollici, se usate un righello in centimetri,
dividendo per 2.54.
Ora è possibile determinare il corretto settaggio DPI per il vostro schermo,
dividendo il numero dei pixels della larghezza per la larghezza dell'immagine
sullo schermo del monitor.
Se questo numero è superiore a, per esempio, 5 DPI rispetto al valore autodeter
minato, dovrete correggere l' X setup, o almeno dire a \SpecialChar LyX
che il valore di
DPI è diverso da quello rilevato.
\end_layout
\begin_layout Standard
Se non potete correggere l'X setup (che sarebbe la soluzione migliore perchè
ne beneficerebbero altri programmi oltre a \SpecialChar LyX
), è possibile comunicare a
\SpecialChar LyX
il corretto settaggio DPI attraverso il menu
\family sans
Preferences.
\family default
\end_layout
\begin_layout Standard
Se il testo è troppo piccolo o troppo grande per il vostro gusto, dovrete
cercare di rimendiare attraverso lo zoom sul carattere.
Questo settaggio è usato per scalare la grandezza del punto del testo.
Se il vostro DPI è corretto, e lo zoom del carattere è settato a 100, questo
significa che \SpecialChar LyX
proverà a mostrare il testo esattamente alla stessa grandezza
della pagina stampata.
Se il fattore di zoom viene settato a 200, il testo visualizzato sarà il
doppio di quello che si vedrà sulla pagina stampata.
Naturalmente questo accadrà solo se \SpecialChar LyX
riesce a trovare ed usare un carattere
che abbia una grandezza appropriata.
Ma, dato che \SpecialChar LyX
è comunque un sistema WYSIWYM, questa limitazione, eventuale,
è improbabile.
\end_layout
\begin_layout Standard
Il valore di default dello zoom è 150 dato che un monitor è generalmente
più grande che un pezzo di carta, ma dovreste comunque provare a modificarlo
tramite il comando
\family sans
Font
\begin_inset space ~
\end_inset
Zo\SpecialChar endofsentence
default nel menu Preferences
\family default
per trovare una grandezza che vi soddisfi.
Quando avete trovato un settaggio che possa andare bene per voi (tip: usate
il bottone
\family sans
\bar under
A
\bar default
pply
\family default
per lasciare la finestra aperta mentre fate esperimenti), potete poi rendere
questi settaggi come default usando il comando
\family sans
\bar under
S
\bar default
ave
\family default
.
\end_layout
\begin_layout Standard
Mentre è spesso possibile trovare una grandezza adatta al testo sullo schermo,
questo non necessariamente vuol dire, che i fonts siano i migliori ottenibili
dal proprio sistema.
Per aiutarvi ad avere il massimo dal vostro sistema, potete usare i comendi
di definizione dei font per raffinare l'aspetto del testo più in dettaglio.
\end_layout
\begin_layout Subsection
Comandi di definizione dei Fonts
\end_layout
\begin_layout Standard
Come menzionato, \SpecialChar LyX
usa fonts bitmap non scalabili di default.
Per i fonts serif, è usato
\emph on
times
\emph default
, per i fonts sans serif è usato
\emph on
helvetica
\emph default
, mentre
\emph on
courier
\emph default
è usato come font del tipo monospazio/macchina da scrivere.
\end_layout
\begin_layout Standard
Potete cambiarli attraverso il menu
\family sans
Preferences
\family default
.
Il numero dei fonts disponibili varia a seconda dei sistemi, ma il programma
\family typewriter
xfontsel
\family default
dovrebbe essere reperibile ovunque.
Usate questo programma per trovare i fonts adatti.
Quando avete trovato un font che vi piace, provate ad inserire i primi
due elementi del nome (chiamati
\begin_inset Quotes eld
\end_inset
fndry
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
fmly
\begin_inset Quotes erd
\end_inset
in
\family typewriter
xfontsel
\family default
) nel campo appropriato nel menu
\family sans
Preferences
\family default
e premere
\family sans
\bar under
A
\bar default
pply
\family default
.
\SpecialChar LyX
poi riformatterà il vostro documento usando il nuovo font, e se il font
vi piace, dovreste salvarlo con
\family sans
\bar under
S
\bar default
ave
\family default
.
Un punto di partenza per un nuovo font è vedere se il font scalabile
\begin_inset Quotes eld
\end_inset
utopia
\begin_inset Quotes erd
\end_inset
è disponibile.
Tip: potete vedere se un font è scalabile o bitmap controllando i campi
\begin_inset Quotes eld
\end_inset
resx
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
resy
\begin_inset Quotes erd
\end_inset
in
\family typewriter
xfontsel
\family default
.
Se il valore 0 è disponibile, il font è scalabile.
Se il valore 0 non è disponibile, il font è bitmap.
\end_layout
\begin_layout Standard
Prima che proviate a modificare un font bitmap perchè la larghezza più grande
sembra
\begin_inset Quotes eld
\end_inset
bloccata
\begin_inset Quotes erd
\end_inset
, dovreste provare a selezionare il bottone
\begin_inset Quotes eld
\end_inset
Usa fonts scalabili
\begin_inset Quotes erd
\end_inset
.
Questo è utile solo se usate fonts bitmap, perchè solo questi non scalano
perfettamente.
Se definite questo flag, \SpecialChar LyX
userà solo le grandezze fisse del carattere disponibi
li, e questo garantisce che tutti i fonts bitmap sembrino buoni.
(Potete vedere quale grandezze individuali del carattere son o disponibili
con il comando
\family typewriter
xlsfonts
\family default
.
Provate
\family typewriter
man xlsfonts
\family default
).
Tuttavia il prezzo da pagare è che la differenza tra la grandezza del font
sullo schermo e la grandezza del font sulla carta sarà più grande perchè
\SpecialChar LyX
dovrà accontentarsi della grandezza più vicina disponibile, e non proverà
a scalare la grandezza per adeguarsi.
Inoltre, c'è il ridchio che alcune grandezze differenti da un punto di
vista logico, come
\family sans
Large
\family default
e
\family sans
Larger
\family default
, saranno mappate come lo stesso font sullo schermo, rendendo difficile
identificare le differenze sullo schermo.
Abbiamo deciso di non usare i fonts scalabili di default a causa di questi
effetti, ma dato che \SpecialChar LyX
è un sistema WYSIWYM, a molte persone piace comunque
usare i flag, pur sapendo che la grandezza del carattere sullo schermo
potrebbe non essere veritiera.
Ma ricordate che questo flag crea una differenza solo se usate font bitmap.
I font scalabili, come ora potete capire, non verranno toccati da questo
tipo di problema.
\end_layout
\begin_layout Standard
Un'ultima annotazione su questo flag: dovete sapere che non c'è nulla di
sbagliato nell'usare fonts scalabili e bitmap contemporaneamente per differenti
scopi.
Per esempio, è abbastanza comune usare lo scalabile
\begin_inset Quotes eld
\end_inset
Utopia
\begin_inset Quotes erd
\end_inset
per il testo serif, assieme alla versione bitmap di
\begin_inset Quotes eld
\end_inset
Helvetica
\begin_inset Quotes erd
\end_inset
.
E potete tranquillamente selezionare
\begin_inset Quotes eld
\end_inset
Usa fonts scalabili
\begin_inset Quotes erd
\end_inset
senza problemi: sarà solo applicato al font Helvetica.
\end_layout
\begin_layout Standard
Qualche volta gli artefatti introdotti dall'uso del flag possono essere
eliminate usando il comando fine-detail che definisce a quali grandezze
di punto corrispondono le differenti grandezze logiche dei caratteri.
Lanciate \SpecialChar LyX
con
\family typewriter
lyx -dbg 513
\family default
per vedere come funziona concretamente e provate ad aggiustare le voci
corrispondenti nel menu
\family sans
Preferences
\family default
fino a quando i risultati vi soddisfano.
Questo è difficile da fare, perchè \SpecialChar LyX
usa i settaggi DPI e quelli di zoom
del font per calcolare l'esatta grandezza del font sullo schermo da chiedere
al server X.
Se non riuscite ad ottenere risultati soddisfacenti con la tecnica dello
\begin_inset Quotes eld
\end_inset
sbaglia e riprova
\begin_inset Quotes erd
\end_inset
, potete rendere il processo più trasparente se settate assieme i DPI e
lo zoom a 100, anche se si sa che non è corretto.
questo naturalmente renderà i font scalabili non perfetti, quindi fate
attenzione.
\end_layout
\begin_layout Subsection
Codifica dei Fonts
\end_layout
\begin_layout Standard
Di default, \SpecialChar LyX
userà dei font per scrivere un testo Western European, inclusi
tutti i tipi di inglese.
Viene definito attraverso il cosiddetto
\emph on
font
\emph default
\emph on
encoding
\emph default
.
Se volete usare Lyx per scivere ad esempio un testo in Eastern European,
Cirillico oppure ogni altro linguaggio non coperto dallo standard ISO-8859-1
di codifica dei caratteri, potete definirne uno differente con il settaggio
del valore
\family typewriter
\backslash
screen_font_encoding
\family default
.Questo richiede che siano installati speciali fonts.
Potete usare
\family typewriter
xfontsel
\family default
per queste modifiche: controllate i campi
\begin_inset Quotes eld
\end_inset
rgstry
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
encdng
\begin_inset Quotes erd
\end_inset
per valori ISO-8859-X diversi da ISO-8859-1, e quindi cercate quello che
contiene i caratteri della lingua prescelta.
Se non lo trovate è ancora possibile definirlo nel file
\family typewriter
lyxrc
\family default
.Altrimenti bisogna ricercarlo sul Web.
\end_layout
\begin_layout Standard
Quando settate \SpecialChar LyX
per l'uso di una codifica differente, dovrete considerare
i cambiamenti nei fonts della finestra pop-up di \SpecialChar LyX
.
Per esempio il menu
\family sans
Table
\begin_inset space ~
\end_inset
of
\begin_inset space ~
\end_inset
Contents
\family default
non sarà comprensibile fino a quando non dite a \SpecialChar LyX
di usare un font differente.
Di default, il menu font è settato su
\family typewriter
-*-helvetica-medium-r
\family default
\emph toggle
, ma spesso helvetica non è disponibile nella codifica dei font di cui avete
bisogno.
\end_layout
\begin_layout Standard
Inoltre potete cambiare questo font con il comando
\family typewriter
\backslash
screen_font_emenu
\family default
\emph toggle
.
\end_layout
\begin_layout Standard
Come potete vedere, ci sono alcune opzioni che possono essere usate per
affinare l'aspetto dei vostri fonts.
Questo non dovrebbe spaventarvi dal maneggiare coi settaggi, poichè dopo
tutto, vi augurate di usare molto \SpecialChar LyX
in futuro.
E contrariamente ai veri word processors WYSIWYG, dove siete costretti
ad usare fonts che hanno un aspetto buono sia sul video che sulla carta,
\SpecialChar LyX
vi da la possibilità di usare fonts che sono disegnati per essere visti
sullo schermo, se siete abbastanza fortunati da averli.
\end_layout
\begin_layout Standard
Nella versione di \SpecialChar LyX
, proveremo a supportare il font renderer
\family typewriter
T1Lib
\family default
\emph toggle
che fornisce un testo con effetto
\emph default
\emph on
anti-aliased
\emph default
\emph toggle
.
Questo significa che ogni glifo è costituito da molte ombre colorate piuttosto
che da soli due colori, creando un effetto di alta risoluzione.
Questo non renderà solo il testo più leggibile sullo schermo, ma permetterà
anche a \SpecialChar LyX
di avvicinare i fonts visti sullo scermo a quelli che verranno
stampati, dato che sarà ad esempio possibile settare un valore di 14.4 punti
al contrario di ora che è possibile solo scegliere il valore arrotondato
14.
\end_layout
\begin_layout Section
Bindings
\end_layout
\begin_layout Standard
Le associazioni sono usate per assegnare una funzione ad un tasto.
Molti file con associazioni precompilate sono disponibili: un set di associazio
ni CUA (simile ai tipici insiemi di assegnazioni di tastiera PC e CDE),
un set Emacs di associazioni, per quelli di noi che segono la cosiddetta
\begin_inset Quotes eld
\end_inset
One True Way
\begin_inset Quotes erd
\end_inset
e rifiutano di sottostare agli standards,
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Sto scherzando, ovviamente!
\end_layout
\end_inset
come pure associazioni speciali (broadway e hollywood) ed altri linguaggi
(Francese, Tedesco, ecc..)
\end_layout
\begin_layout Standard
Se, tuttavia, volete personalizzare le associazioni secondo i vostri specifici
gusti, allora copiate il file della directory
\family typewriter
\SpecialChar LyX
Dir/bind/
\family default
che meglio si adatta nella vostra
\family typewriter
UserDir/bind/
\family default
e modificatelo.
Non dimenticate di caricare questo nuovo file in \SpecialChar LyX
attraverso il menu
\family sans
Preferences
\family default
(per il momento dovete riavviare \SpecialChar LyX
per rendere effettivi i cambiamenti).
\end_layout
\begin_layout Standard
\SpecialChar LyX
supporta l'internazionalizzazione dell'interfaccia utente (vedere il Capitolo
\shape italic
\emph on
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:i18n"
\end_inset
)
\shape default
\emph default
.
Se il vostro
\emph on
locale
\emph default
\shape italic
\emph on
viene settato con la variabile d'ambiente
\shape default
\emph default
\family typewriter
$LANG
\family default
, \SpecialChar LyX
proverà ad usare i bindfile preponendo
\family typewriter
$LANG_
\family default
al loro nome.
Ad esempio, potete mettere una copia tradotta di alcuni bindfile nella
vostra directory
\family typewriter
bind/
\family default
personale e \SpecialChar LyX
li userà automaticamente.
[
\emph on
Nota dell'autore: non sono sicuro se è ancora vero ma forse qualcuno che
utilizza questo metodo potrebbe testarlo—AL
\emph default
].
\end_layout
\begin_layout Standard
La sintassi dei files
\family typewriter
.bind
\family default
è la seguente:
\end_layout
\begin_layout Standard
\family typewriter
\backslash
bind <key combination> <lyx-function>
\end_layout
\begin_layout Standard
Sia le combinazioni di tasti che la lyx-function (inclusi gli argomenti)
devono essere racchiusi tra le
\begin_inset Quotes eld
\end_inset
doppie virgolette
\begin_inset Quotes erd
\end_inset
.
Tutte le funzioni di \SpecialChar LyX
sono elencate nella
\emph on
Guida di Riferimento.
\end_layout
\begin_layout Section
User Interface
\begin_inset CommandInset label
LatexCommand label
name "sec:ui"
\end_inset
\end_layout
\begin_layout Standard
L'aspetto del menu e della toolbar può essere cambiato attraverso il menu
\family sans
Preferences
\family default
.
Basta semplicemente cambiare il file
\family typewriter
.ui
\family default
in
\family typewriter
\SpecialChar LyX
Dir/ui/
\family default
.
Per il momento esiste solo un file,
\family typewriter
default.ui
\family default
, ma sentitevi liberi di sperimentare.
Copiate il file che create nella directory
\family typewriter
UserDir/ui/
\family default
e andate! Notate che, per il momento, dovete riavviare \SpecialChar LyX
per rendere effettivi
i cambiamenti.
\end_layout
\begin_layout Standard
La sintassi dei files
\family typewriter
.ui
\family default
è la seguente: date uno sguardo a
\family typewriter
default.ui
\family default
.
Le righe riferite alla barra dei menu,
\family typewriter
menu
\family default
e
\family typewriter
toolbar
\family default
devono terminare con un esplicito
\family typewriter
end
\family default
.
Possono poi contenere dei sottomenu, oggetti, separatori, icone e nel caso
del menu
\begin_inset Quotes eld
\end_inset
file
\begin_inset Quotes erd
\end_inset
, una riga
\family typewriter
lastfiles.
\family default
Un piccolo avvertimento.
I
\family typewriter
sottomenu
\family default
possono essere inseriti in un
\family typewriter
menubar
\family default
o
\family typewriter
menu
\family default
, ma sono sempre definiti come
\family typewriter
menus
\family default
non come
\family typewriter
submenu
\family default
.
\end_layout
\begin_layout Section
Convertitori, Formati e Visualizzatori
\end_layout
\begin_layout Standard
\SpecialChar LyX
ha un nuovo e potente meccanismo per convertire da e verso ogni formato
di file utilizzando programmi esterni.
Prendiamo un paio di formati, ad es.
\family typewriter
\SpecialChar LaTeX
\family default
e
\family typewriter
PDF
\family default
.
Ora definiamo un convertitore da un formato all'altro.
Nel nostro esempio ci sono due possibili meccanismi.
\end_layout
\begin_layout Enumerate
Una conversione diretta, da \SpecialChar LaTeX
a PDF usando pdflatex
\end_layout
\begin_layout Enumerate
Una via più contorta attraverso formati e convertitori intermedi: \SpecialChar LaTeX
a DVI
(usando latex) a PostScript® (usando dvips) a PDF (usando ps2pdf)
\end_layout
\begin_layout Standard
\SpecialChar LyX
sceglierà sempre la via più veloce, così dovrete specificare due differenti
nomi di Format per i files
\family typewriter
.pdf
\family default
per poterli usare entrambi.
Entrambi sono inclusi di default nel menu
\family sans
Preferences
\family default
.
Date un'occhiata e poi createne dei vostri!
\end_layout
\begin_layout Standard
Inoltre, ogni Format può essere visto con un Viewer associato ad esso.
Ad esempio, potreste voler usare
\family typewriter
ghostview
\family default
per esaminare i files PostScript®.
\end_layout
\begin_layout Standard
[
\emph on
Nota dell'autore: Questa sezione probabilmente ha bisogno di essere espansa,
ma sostituisce completamente la prossima.
In più, non sono sicuro di quanto importanti siano ancora le sezioni Stampante
e Cambiare Colori.
La sezione Ascii-Export è ancora importante, sebbene ha bisogno di essere
usata per differenziare l'approccio lyxrc da quello del menu Preference.
— AL
\emph default
].
\end_layout
\begin_layout Section
Anteprima sullo schermo
\end_layout
\begin_layout Standard
Oltre alla normale visualizzazione dei documenti attraverso \SpecialChar LyX
, è possibile
avere un'anteprima del vostro documento nella forma in cui apparirà sulla
carta dopo stampato.
Di default \SpecialChar LyX
usa
\family typewriter
xdvi
\family default
per l'anteprima dei files .
\family typewriter
dvi
\family default
(l'output di \SpecialChar LaTeX
).
\end_layout
\begin_layout Standard
\SpecialChar LyX
può anche usare
\family typewriter
dvips
\family default
per convertire i files
\family typewriter
.dvi
\family default
in .
\family typewriter
ps
\family default
e
\family typewriter
ghostview
\family default
per l'anteprima.
Si possono usare numerose opzioni nel file
\family typewriter
lyxrc
\family default
per personalizzare queste caratteristiche.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
view_dvi_command
\family default
\series default
Permette di rimpiazzare
\family typewriter
xdvi
\family default
con altri
\family typewriter
.dvi
\family default
previewer, o per passare argomenti a
\family typewriter
xdvi
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
view_ps_command
\family default
\series default
Permette di rimpiazzare
\family typewriter
ghostview
\family default
con il vostro Post
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
-
\end_layout
\end_inset
Script previewer preferito, oppure per passare argomenti a
\family typewriter
ghostview
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
view_pspic_command
\family default
\series default
Definisce il programma usato per ottenere anteprime a tutto schermo delle
figure PostScript®.
Non è possibile includere alcuna opzione in questo tipo di settaggio.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
ps_command
\family default
\series default
Definisce il programma per usare le figure PostScript all'interno di un
documento \SpecialChar LyX
.
Non è possibile includere nessuna opzione.
Se viene definita una stringa vuota (""), \SpecialChar LyX
non processerà nessuna figura.
Questo può essere utile se avete una macchina lenta e lavorate con molte
figure.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
default_papersize
\family default
\series default
Setta la grandezza della carta usata da \SpecialChar LyX
per fare l'anteprima dei documenti.
Il valore di default è la carta USletter.
Se \SpecialChar LaTeX
è configurato per usare una differente grandezza di default, potrete
cambiare questo settaggio.
\end_layout
\begin_layout Section
Opzioni ASCII-Export
\end_layout
\begin_layout Standard
Ci sono alcuni comandi che possono essere usati per
\begin_inset Quotes eld
\end_inset
ripulire
\begin_inset Quotes erd
\end_inset
i files di testo esportati in ASCII.
Notate che \SpecialChar LyX
automaticamente riconosce ed usa il miglior settaggio per il
vostro sistema sin dalla fase di installazione, ma è possibile modificarli
se non vi piacciono.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\backslash
plaintext_roff_command
\family default
Questo comando vi permette di settare il comando per produrre migliori
tabelle ASCII con i comandi UNIX
\family typewriter
groff/troff/nroff
\family default
(referirsi alle relative man pages per ulteriori informazioni).
Non definirlo per niente dice a \SpecialChar LyX
di usare il formattatore interno (inferiore).
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
\backslash
plaintext_linelen
\family default
Con questo comando potete settare la lunghezza di default della riga dell'outpu
t di un file ASCII.
Settarlo a 0 significa righe infinite.
Il Default è 75 caratteri.
\end_layout
\begin_layout Standard
Examples:
\end_layout
\begin_layout LyX-Code
# This let's you generate ASCII tables with latin1
\begin_inset Newline newline
\end_inset
# characters, using the groff formatter
\begin_inset Newline newline
\end_inset
#
\begin_inset Newline newline
\end_inset
\backslash
plaintext_roff_command groff -t -ms -Tlatin1"
\begin_inset Newline newline
\end_inset
\begin_inset Newline newline
\end_inset
# This let's you generate ASCII tables using the
\begin_inset Newline newline
\end_inset
# nroff formatter
\begin_inset Newline newline
\end_inset
#
\backslash
plaintext_roff_command "nroff"
\begin_inset Newline newline
\end_inset
# This sets the line length to 80 characters
\begin_inset Newline newline
\end_inset
#
\begin_inset Newline newline
\end_inset
\backslash
plaintext_linelen 80
\end_layout
\begin_layout Section
Stampante
\end_layout
\begin_layout Standard
Ci sono una serie di comandi che vi aiutano a settare il comando della stampante
da \SpecialChar LyX
.
Normalmente si usano solo alcuni di questi, ma vengono riportati tutti
per questione di completezza.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
printer
\family default
\series default
Questo valore definisce il nome di default della vostra stampante.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_command
\family default
\series default
Questo valore definisce quale comando \SpecialChar LyX
deve essere usato per stampare il
vostro documento.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_evenpage_flag
\family default
\series default
Questo valore definisce quale flag del comando di stampa comporterà la
stampa delle sole pagine pari.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_oddpage_flag
\family default
\series default
Questo valore definisce quale flag del comando di stampa si occuperà di
stampare solo le pagine dispari.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_reverse_flag
\family default
\series default
Con questo comando, potete definire quale comando di stampa si occuperà
di stampare le pagine in ordine inverso.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_landscape_flag
\family default
\series default
Questo comando definisce quale flag è settata quando si richiede di stampare
il proprio documento in landscape.
se il documento è stampato in portrait, nessuna opzione è passata.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_to_printer
\family default
\series default
Se specificate un esplicito nome per la stampante, dovrete preporre questo
nome con un flag dalla linea di comando della stampante.
Questo comando definisce quale flag dovrebbe apparire prima del nome della
stampante.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_to_file
\family default
\series default
Se volete stampare su un file, dovrete utilizzare un flag prima del nome
del file.
Questo comando vi permette di definire come apparirà questo flag.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_file_extension
\family default
\series default
Quando stampate su un file, con questo comando potete definire quale estensione
potrà avere il file stampato.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_extra_options
\family default
\series default
Con questo comando potete definire una serie di flags che saranno inseriti
nel comandi di stampa dopo gli altri flags.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_spool_cmd
\family default
\series default
Se si specifica qualcosa in questo comando, \SpecialChar LyX
stamperà in due fasi: Prima
sarà eseguito il programma specificato nel comando
\family typewriter
\backslash
print_command
\family default
con le direttive per stampare su un file.
Poi, il comando specificato con
\family typewriter
\backslash
print_spool_cmd
\family default
sarà eseguito col file di uotput col precedente comando sulla riga di comando,
e, se specificato, la direttiva (
\family typewriter
\backslash
print_to_printer
\family default
) per mandare l'output ad una stampante definita prima del nome del file.
\end_layout
\begin_layout Standard
Tutto sommato, speriamo che questo vi permetta di stampare i vostri documenti
senza problemi.
\end_layout
\begin_layout Subsection
Changing Colors
\end_layout
\begin_layout Standard
E' possibile cambiare i colori dello schermo usando il nuovo menu
\family sans
Preferences
\family default
.
Alternativamente, se vi sentite particolarmente perversi potete usare la
funzione associabile
\family typewriter
set-color
\family default
(vedere la
\emph on
Guida di Riferimento
\emph default
).
L'input avrà il seguente formato:
\end_layout
\begin_layout Standard
\family typewriter
set-color \SpecialChar LyX
Name X11Color
\end_layout
\begin_layout Standard
Di seguito è presentata una lista (parziale) delle funzioni e dei colori
di default:
\end_layout
\begin_layout Standard
\begin_inset VSpace 0.3cm
\end_inset
\end_layout
\begin_layout Standard
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="3">
<features tabularvalignment="middle">
<column alignment="center" valignment="top" width="0pt">
<column alignment="center" valignment="top" width="0pt">
<column alignment="center" valignment="top" width="0pt">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
Nome \SpecialChar LyX
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
Scopo
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
Colore di default (X11)
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
background
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
text background
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
black
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
foreground
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
text foreground
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
linen
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
latex
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
\SpecialChar LaTeX
code
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
DarkRed
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
math
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
Mathed formulae
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
DarkBlue
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
mathline
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
fraction Lines, brackets, etc.
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
Blue
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
mathbag
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
AntiqueWhite
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
mathframe
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
black
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
selection
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
selection background
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\lang english
LightBlue
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Standard
\begin_inset VSpace 0.3cm
\end_inset
\end_layout
\begin_layout Standard
La lista completa si trova correntemente solo nel file sorgente LColor.cpp
\end_layout
\begin_layout Section
\SpecialChar TeX
\end_layout
\begin_layout Standard
Alcuni siti
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
\emph on
come la mia macchina da ufficio Dave johnson
\end_layout
\end_inset
hanno ancora la versione 2.09 di \SpecialChar LaTeX
.
Sebbene non possiamo immaginare perchè questo dovrebbe essere ancora il
default dato che la versione 2.09, essendo questa obsoleta dal 1994, dovremo
comunque continuare a riferirci con \SpecialChar LyX
a tale ambiente.
Non bisogna
\emph on
pensare
\emph default
però ad un
\begin_inset Quotes eld
\end_inset
fixing
\begin_inset Quotes erd
\end_inset
di \SpecialChar LyX
per girare sotto \SpecialChar LaTeX
2.09.
Aggiornare il vostro \SpecialChar LaTeX
sarà più facile, ed è comunque la soluzione migliore.
Molti grandi sistemi dovrebbero avere, anche se di default hanno la 2.09,
una versione disponibile di \SpecialChar LaTeX
2, ma forse l'eseguibile potrebbe avere un
altro nome.
Potete cambiare il nome del comando \SpecialChar LaTeX
appropriato, come ad esempio
\begin_inset Quotes erd
\end_inset
\family typewriter
\emph toggle
lyxrc
\family default
\emph default
\begin_inset Quotes eld
\end_inset
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
\emph on
come la mia macchina da ufficio Dave johnson
\end_layout
\end_inset
con la linea:
\end_layout
\begin_layout LyX-Code
\backslash
latex_command latex2e
\end_layout
\begin_layout Standard
nel vostro file
\family typewriter
lyxrc
\family default
.
Al momento dell'installazione, \SpecialChar LyX
proverà a rilevare automaticamente se questo
settaggio è necessario, quindi normalmente, non ve ne dovrete preoccupare.
\end_layout
\begin_layout Section
I settaggi autorilevati
\end_layout
\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
name "sec:autodetected"
\end_inset
Ci sono numerosi oggetti che sono rilevati quando lanciate
\family sans
\bar under
O
\bar default
ptions
\bar under
\SpecialChar menuseparator
R
\bar default
econfigure.
\family default
In questa sezione elencheremo quelle che si riferiscono a
\family typewriter
lyxrc
\family default
.
Quello che segue, tutte le chiamate
\family typewriter
*_command
\family default
sono sono settete a
\begin_inset Quotes eld
\end_inset
niente
\begin_inset Quotes erd
\end_inset
se non viene stato trovato il comando opportuno.
In questo caso, la corrispondente funzione non è disponibile.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
latex_command
\family default
\series default
è settato su un processore \SpecialChar LaTeX2e
valido (programmi testati sono
\family typewriter
latex
\family default
e
\family typewriter
latex2e
\family default
).
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
ps_command
\family default
\series default
è settato su
\family typewriter
gs
\family default
se avete Ghostscript installato.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
view_ps_command
\family default
\series default
è settato su
\family typewriter
gv
\family default
o
\family typewriter
ghostview
\family default
se sono stati trovati nel sistema (
\family typewriter
\backslash
view_pspic_command
\family default
è settato per usare lo stesso programma).
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
plaintext_roff_command
\family default
\series default
usa
\family typewriter
groff
\family default
oppure
\family typewriter
nroff
\family default
+
\family typewriter
tbl
\family default
, a seconda di quello disponibile.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
chktex_command
\family default
\series default
è settato su
\family typewriter
chktex
\family default
con in più una serie di opzioni.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
fax_command
\family default
\series default
è settato su
\family typewriter
fax
\begin_inset space ~
\end_inset
send
\family default
o
\family typewriter
sendfax
\family default
, che dipende da che packetto fax e stato trovato.
Le necessarie opzioni del commando vengono anche aggiunti.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_spool_command
\family default
\series default
viene settato to
\family typewriter
lp
\family default
su sistmi (chiamati System V) che hanno questo commando e
\family typewriter
lpr
\family default
altrimenti (sistemi BSD).
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
print_spool_printerprefix
\family default
\series default
viene settato a
\family typewriter
-d o su -p
\family default
a seconda della presenza di
\family typewriter
lp
\family default
o
\family typewriter
lpr
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
\backslash
font_encoding
\family default
\series default
è settato su
\family typewriter
T1
\family default
se i fonts
\family typewriter
ec
\family default
sono rilevati e \SpecialChar LaTeX
ha un supporto interno per questi fonts.
Potete settarli manualmente se avete i cosiddetti fonts
\family typewriter
dc
\family default
.
\end_layout
\begin_layout Section
Il resto
\end_layout
\begin_layout Standard
Ci sono molti altri comandi
\family typewriter
lyxrc
\family default
che possono essere usati per personalizzare il comportamento di \SpecialChar LyX
.
Abbiamo attualmente ancora necessità di documentarli in questa sede, ma
ancora, il file
\family typewriter
lyxrc.example
\family default
è riccamente commentato, così consigliamo di dare un'occhiata per avere
un'idea di quello che potete personalizzare.
Potete infine tentare la fortuna nella
\emph on
Guida di RIferimento,
\emph default
ma non ci sono garanzie dato che è molto difficile tenerla aggiornata.
\end_layout
\begin_layout Chapter
Il Server \SpecialChar LyX
\end_layout
\begin_layout Section
Introduzione
\end_layout
\begin_layout Standard
Il server \SpecialChar LyX
è un metodo implementato in \SpecialChar LyX
che abilita altri programmi a parlare
con \SpecialChar LyX
, a chiamare comandi \SpecialChar LyX
e ad ottenere informazioni sullo stato interno
di \SpecialChar LyX
.
E' uno strumento principalmente indirizzato ad utenti esperti, che dovrebbero
trovarlo utile.
\end_layout
\begin_layout Section
Iniziare il Server \SpecialChar LyX
\end_layout
\begin_layout Standard
Il server \SpecialChar LyX
lavora attraverso l'uso di un paio di canali.
Queste sono di solito locate nella vostra directory home e si chiamano
\begin_inset Quotes eld
\end_inset
\family typewriter
.lyxpipe.in
\family default
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
\family typewriter
.lyxpipe.out
\family default
\begin_inset Quotes erd
\end_inset
.
I programmi esterni vanno a scrivere in
\family typewriter
.lyxpipe.in
\family default
e legge i dati da
\family typewriter
.lyxpipe.out
\family default
.
L'inizio di questi canali può essere specificato nel file
\family typewriter
lyxrc
\family default
aggiungendo una linea del tipo:
\end_layout
\begin_layout LyX-Code
\backslash
serverpipe "/home/myhome/.lyxpipe"
\end_layout
\begin_layout Standard
\SpecialChar LyX
aggiungerà '
\family typewriter
.in
\family default
' and '
\family typewriter
.out
\family default
' per creare i canali.
La precedente riga ha inoltre l'effetto di attivare il server \SpecialChar LyX
.
se uno dei canali già esiste, \SpecialChar LyX
assumerà che c'è un altro processo \SpecialChar LyX
in esecuzion
e e non lascerà partire il server.
Per avere molti processi \SpecialChar LyX
con rispettivi servers in contemporanea, dovete
cambiare il
\family typewriter
lyxrc
\family default
tra gli inizi dei programmi.
\end_layout
\begin_layout Standard
Se state sviluppando un programma client, potreste trovare utile abilitare
una modalità di debugging dal server \SpecialChar LyX
.
Potete farlo facendo partire \SpecialChar LyX
con
\family typewriter
lyx -dbg 8192.
\end_layout
\begin_layout Standard
Attenzione: se \SpecialChar LyX
va in crash, non può gestire la rimozione dei canali, e
quindi bisognerà farlo manualmente.
Se \SpecialChar LyX
parte e i canali sono già esistenti, non farà partire alcun server.
\end_layout
\begin_layout Standard
Potete trovare degli esempi completi scritti in C nella distribuzione dei
codici come
\family typewriter
development/server_monitor.c
\family default
.
\end_layout
\begin_layout Section
Comunicazione normale
\end_layout
\begin_layout Standard
Per assegnare una chiamata \SpecialChar LyX
, il client scrive una riga di codice ASCII nel
canale di input.
Questa linea ha il seguente formato:
\end_layout
\begin_layout Quote
LYXCMD:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
argument
\end_layout
\begin_layout Standard
In questo caso
\emph on
clientname
\emph default
è un nome che il client può scegliere arbitrariamente.
Il suo unico uso è che \SpecialChar LyX
gli risponderà se questi manda una risposta - così
un client può mandare risultati da differenti richiedenti.
\end_layout
\begin_layout Standard
\emph on
function
\emph default
è la funzione che volete che \SpecialChar LyX
esegua.
E' lo stesso dei comandi che dovreste usare in minibuffer.
\end_layout
\begin_layout Standard
\emph on
argument
\emph default
è un argomento opzionale rilevante solo per alcune funzioni ( ad esempio
\begin_inset Quotes eld
\end_inset
auto-inserimento
\begin_inset Quotes erd
\end_inset
che inserisce l'argomento come testo nella posizione del cursore.)
\end_layout
\begin_layout Quote
La risposta da \SpecialChar LyX
arriverà nel canale di output e sarà del tipo
\end_layout
\begin_layout Quote
INFO:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
data
\end_layout
\begin_layout Standard
Dove
\emph on
clientname
\emph default
e
\emph on
function
\emph default
sono richiamati dalla richiesta di comando, mentre
\emph on
data
\emph default
è un'informazione più o meno utile a seconda dell'esecuzione del comando.
Alcuni comandi restituiscono informazioni circa lo stato interno di \SpecialChar LyX
, come
il
\begin_inset Quotes eld
\end_inset
font-state
\begin_inset Quotes erd
\end_inset
, mentre altri restituiscono risposte
\begin_inset Quotes eld
\end_inset
vuote
\begin_inset Quotes erd
\end_inset
.
Questo significa che l'esecuzione del comando ha avuto fine.
\end_layout
\begin_layout Standard
In caso di errori, la risposta da \SpecialChar LyX
avrà questa forma
\end_layout
\begin_layout Quote
ERROR:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
error message
\end_layout
\begin_layout Standard
dover l'
\emph on
error message
\emph default
dovrebbe contenere la spiegazione del perchè il comando è fallito.
\end_layout
\begin_layout Standard
Esempi:
\end_layout
\begin_layout LyX-Code
echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
\end_layout
\begin_layout LyX-Code
echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
\begin_inset Newline newline
\end_inset
read a <~/.lyxpipe.out
\begin_inset Newline newline
\end_inset
echo $a
\end_layout
\begin_layout Section
Notifica
\end_layout
\begin_layout Standard
\SpecialChar LyX
può notificare ai clients gli eventi asincroni.
Correntemente lo farà soltanto se l'utente assegna una sequenza di tasti
alla funzione
\begin_inset Quotes eld
\end_inset
notifica
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Standard
Il formato della stringa che \SpecialChar LyX
manda è:
\end_layout
\begin_layout Quote
\family typewriter
NOTIFY:
\family default
\emph on
key-sequence
\end_layout
\begin_layout Standard
dove
\emph on
key-sequence
\emph default
è la rappresentazione stampata della sequenza di tasti premuta dall'utente.
\end_layout
\begin_layout Standard
Questo meccanismo può essere usato per estendere il set di comandi \SpecialChar LyX
ed implement
are macro: assegnare una sequenza di tasti a
\begin_inset Quotes eld
\end_inset
notifica
\begin_inset Quotes erd
\end_inset
, lanciare un client che ascolta sul canale d'uscita, fornisce il comando
relativo alla sequenza e inizia una funzione che può usare le chiamate
e le richieste di \SpecialChar LyX
per assegnare un comando o una serie di comandi a \SpecialChar LyX
.
\end_layout
\begin_layout Section
Il Protocollo Server \SpecialChar LyX
semplice
\end_layout
\begin_layout Standard
Lyx implementa un semplice protocollo che può essere usato per la gestione
delle sessioni.
Tutti i messaggi sono della forma:
\end_layout
\begin_layout Quote
LYXSRV:
\emph on
clientname
\emph default
:
\emph on
protocol message
\end_layout
\begin_layout Standard
dove
\emph on
protocol message
\emph default
può essere
\begin_inset Quotes eld
\end_inset
hello
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
bye
\begin_inset Quotes erd
\end_inset
.
Se
\begin_inset Quotes eld
\end_inset
hello
\begin_inset Quotes erd
\end_inset
è ricevuto da un client, \SpecialChar LyX
ritornerà indietro per informare il client che
sta ascoltando il suo messaggio, mentre
\begin_inset Quotes eld
\end_inset
bye
\begin_inset Quotes erd
\end_inset
mandato da \SpecialChar LyX
informa i clients che \SpecialChar LyX
sta chiudendo.
\end_layout
\begin_layout Chapter
Internazionalizzare \SpecialChar LyX
\begin_inset CommandInset label
LatexCommand label
name "chap:i18n"
\end_inset
\end_layout
\begin_layout Standard
\SpecialChar LyX
supporta l'uso di interfacce tradotte.
L'ultima volta che abbiamo controllato, \SpecialChar LyX
forniva testi in 14 linguaggi
diversi oltre l'inglese di base.
Il linguaggio scelto è definito linguaggio
\emph on
locale
\emph default
.
(per ulteriori letture sui settaggi locali, riferirsi alla documentazione
del vostro sistema operativo.
Per Linux, le manual page di locale(5) sono un ottimo punto di partenza).
\end_layout
\begin_layout Standard
Notate che queste traduzioni funzionano, ma contengono alcuni difetti.
In particolare, tutti i menu di pop-up sono stati progettati in inglese,
questo significa che alcune traduzioni potrebbero essere troppo grandi
rispetto allo spazio ad esse assegnate in fase di progettazione.
Questo è solo un problema di visualizzazione che non causa molti problemi.
Inoltre, potrete notare che che molte delle traduzioni non definiscono
le scorciatoie per tutto.
A volte , molto semplicemente, non ci sono abbastanza lettere disponibili.
Altre volte, il traduttore non lo ha ancorafatto.
Cercheremo di ovviare a questi inconvenienti nelle prossime versioni di
\SpecialChar LyX
.
\end_layout
\begin_layout Section
Selezionare un linguaggio alternativo per l'interfaccia utente
\end_layout
\begin_layout Standard
Questa possibilità è disabilitata di default, ciò significa che il testo
sarà in inglese.
Per abilitare un linguaggio alternativo bisogna settare la variabile ambientale
appropriata.
Usate
\family typewriter
"setenv LANG xx"
\family default
per le interfacce di classe csh o
\family typewriter
"export LANG=xx"
\family default
per la classe sh.
Sostituite le
\family typewriter
xx
\family default
con il codice di due lettere del linguaggio che volete.
Ad esempio
\family typewriter
no
\family default
è Norvegiese.
\end_layout
\begin_layout Standard
Evidenetemente vorrete mettere la linea appropriata in
\family typewriter
~/.Xsession
\family default
or
\family typewriter
~/.xinitrc
\family default
in modo che la traduzione sia attivata di default.
Ricordate che se \SpecialChar LyX
è configurato e compilato con
\begin_inset Quotes eld
\end_inset
\family typewriter
--disable-nls
\family default
\begin_inset Quotes erd
\end_inset
,questo non funzionerà.
\end_layout
\begin_layout Section
Usare scorciatoie per linguaggi alternativi
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
begin{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Standard
Una causa principale di inconsistenza nelle versioni tradotte di \SpecialChar LyX
è il fatto
che tutte le scorciatoie da tastiera per le funzioni del menu sono basate
sulla versione inglese del testo Ad esempio, l'entrata nel menu
\family sans
M-f t
\family default
aprirà il popup nuovo-file-da-template.
Questo è semplice da cambiare, come tutte le scorciatoie delle operazioni
del menu definite nel file unico
\family typewriter
\SpecialChar LyX
Dir/bind/menus.bind
\family default
.
Ogni utente può avere la propria copia di questo file nella propria directory
privata
\family typewriter
~/.lyx/bind
\family default
, che avrà precedenza rispetto agli altri file di sistema.
In questa copia privata ognugno può facilmente cambiare le definizioni,
ad esempio per la versione tedesca avremo
\family sans
M-f t
\family default
in
\family sans
M-d v
\family default
(per
\family sans
Date\SpecialChar menuseparator
Vorlage).
\family default
Per alcuni linguaggi, gli esempi per adattare i files
\family typewriter
menus.bind
\family default
si possono trovare in
\family typewriter
\SpecialChar LyX
Dir/bind/
\series bold
xx
\series default
_menus.bind
\family default
\family sans
(
\family default
\series bold
xx
\series default
è il codice del linguaggio).
Questi, se esistono (e se il vostro settaggio locale è
\family typewriter
$LANG=
\series bold
xx
\family default
\series default
), saranno automaticamente usati da \SpecialChar LyX
.
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
end{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Standard
Dovete fare attenzione a che le nuove definizioni per le scorciatoie non
coincidano con altre prima definite.
Ad esempio, l'associazione
\family sans
M-d v
\family default
genererà un errore per quelli che usano
\family typewriter
(x)emacs.bind
\family default
, dove
\family sans
M-d
\family default
è unito a
\family typewriter
word-delete-forward
\family default
.
\end_layout
\begin_layout Standard
Dalla versione 1.0 di \SpecialChar LyX
, i nomi tradotti per i menu top level (tradotti nei
files
\begin_inset Quotes eld
\end_inset
po
\begin_inset Quotes erd
\end_inset
) sono usati dal meccanismo di assegnazione, quindi il menu
\emph on
tradotto
\emph default
deve essere usato nel
\family typewriter
menus.bind
\family default
tradotto.
\end_layout
\begin_layout Section
Tradurre \SpecialChar LyX
\end_layout
\begin_layout Subsection
Tradurre l'interfaccia grafica utente (messaggi di testo).
\end_layout
\begin_layout Standard
\SpecialChar LyX
usa la libreria GNU gettext per gestire l'internazionalizzazione dell'interfacc
ia.
Per far parlare a \SpecialChar LyX
il vostro linguaggio preferito in tutti i menu e le
caselle di diagolo, avete bisogno di un po-file per quel determinato linguaggio.
Quando questo è reperibile, dovrete creare da questi un mo-file ed installarlo.
Tutti i passaggi necessari ad eseguire questa operazione sono spiegati
nella documentazione di GNU gettext, ma, in breve, questo è quello che
dovete fare (
\series bold
xx
\series default
rappresenta il codice del linguaggio):
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
begin{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Itemize
Copiare
\family typewriter
LYX-SOURCE-DIR/po/lyx.pot
\family default
in
\series bold
xx
\family typewriter
\series default
.po
\family default
(se
\family typewriter
lyx.pot
\family default
non esiste, può essere rifatto con
\family typewriter
make lyx.pot
\family default
in quella directory, oppure potete usare un po-file esistente per altri
linguaggi come se fosse un template).
\end_layout
\begin_layout Itemize
Editare
\family typewriter
xx.po
\family default
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Raccomandiamo di usare Emacs per fare questo, dato che la distribuzione
gettext include un appropriato supporto.
\end_layout
\end_inset
.
Per alcune etichette di menu, ci sono anche scorciatoie da tastiera che
dovrebbero essere tradotte.
Questi tasti sono segnati dopo un `
\family typewriter
|
\family default
', e dovrebbero essere tradotti in relazione alle parole e alle frasi del
linguaggio
\series bold
xx
\series default
.
C'è uno strumento chiamato
\family typewriter
scgen.pl
\family default
scritto in Prolog in
\family typewriter
LYX-SOURCE-DIR/development/tools/
\family default
che può essere utile per creare determinate scorciatoie.
Notate che XForms (almeno la versione 0.86) non può manipolare altro che
scorciatoie di caratteri di 7 bit.
Dovreste inoltre aggiungere delle informazioni all'inizio del nuovo file
po come il vostro indirizzo email ecc, cosi gli altri sanno dove possono
rintracciarvi.
\end_layout
\begin_layout Itemize
Create
\series bold
xx
\family typewriter
\series default
.mo
\family default
.
Questo può essere fatto con
\begin_inset Newline newline
\end_inset
\family typewriter
msgfmt -o
\family default
\series bold
xx
\family typewriter
\series default
.mo <
\family default
\series bold
xx
\family typewriter
\series default
.po
\end_layout
\begin_layout Itemize
Copiare ilfile mo nella vostra directory locale, precisamente nella dirctory
dei messaggi dell'applicazione per il linguaggio
\series bold
xx
\series default
, e, sotto il nome
\family typewriter
lyx.mo
\family default
\begin_inset Newline newline
\end_inset
(es.
\family typewriter
/usr/local/share/locale/
\family default
\series bold
xx
\family typewriter
\series default
/LC_MESSAGES/lyx.mo
\family default
)
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
end{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Standard
Aggiungere un nuovo file po alla
\emph on
distribuzion
\emph default
e di \SpecialChar LyX
comprende il cambiamento degli script di configurazione ed oltre,
ma per come lavora gettext, attualmente non avete bisogno di codice \SpecialChar LyX
per
tradurlo—se si ha
\family typewriter
lyx.pot
\family default
(o un file po esistente), bastano gli strumenti di gettext.
\end_layout
\begin_layout Standard
Se avete scritto un file di traduzione per un linguaggio che attualmente
\SpecialChar LyX
non supporta, ritenetevi liberi di introdurlo magari mandando una patch.
In questo caso vi raccomandiamo di leggere il README della directory
\family typewriter
LYX-SOURCE-DIR/po/
\family default
per ulteriori informazioni.
\end_layout
\begin_layout Subsection
Tradurre la documentazione.
\end_layout
\begin_layout Standard
La documentazione online (nel menu
\family sans
Help)
\family default
può (e dovrebbe!) essere tradotto.
Se ci sono versioni tradotte della documentazione disponibile
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Ad Aprile 1999, quasi tutti i documenti sono stati tradotti in tedesco.
Il tutorial è stato tradotto in francese, polacco, portoghese e svedese,
con altre traduzioni in corso.
La libreria dei documenti tradotti cresce rapidamente.
\end_layout
\end_inset
, e il locale è adeguatamente settato, queste saranno usate automaticamente
da \SpecialChar LyX
.
\SpecialChar LyX
cerca di tradurre le versioni come
\family typewriter
\SpecialChar LyX
Dir/doc/
\series bold
xx
\series default
_DocName.lyx
\family default
, dove
\family typewriter
\series bold
xx
\family default
\series default
indica il linguaggio settato dalla variabile ambientale
\family typewriter
$LANG
\family default
.
Se non c'è nulla, sarà mostrato il linguaggio di default ovvero l'inglese.
Notate che le versioni tradotte devono avere gli stessi nomi dei files
come gli originali (
\family typewriter
DocName
\family default
di cui sopra).
Se ve la sentite di tradurre la documentazione (un buon modo per leggersi
la documentazione originale BTW!), ci sono alcune cose che dovreste fare:
\end_layout
\begin_layout Itemize
Controllare la pagina web delle traduzioni The \SpecialChar LyX
Developer's Web Site
\begin_inset Flex URL
status collapsed
\begin_layout Plain Layout
http://www.devel.lyx.org
\end_layout
\end_inset
.
In questo modo potete trovare (se ce ne sono) i documenti tradotti e quelli
da tradurre.
Inoltre troverete un responsabile organizzatore (se c'è) che vi aiutera
nella vostra opera.
Se non c'è un organizzatore fateci sapere se siete interessati.
\end_layout
\begin_layout Standard
Una volta che iniziate a tradurre ci sono alcune cose che dovete ricordare:
\end_layout
\begin_layout Itemize
Unirvi al team di documentazione! Ci sono informazioni su come farlo in
\family typewriter
Intro.lyx
\family default
(
\family sans
Help\SpecialChar softhyphen
paese.
Inventare una vostra propria terminologia potrebbe solo creare confusione
al lettore.
\family default
\family sans
\emph on
(
\family default
Attenzione! La tipografia da assuefazione!
\family sans
)
\end_layout
\begin_layout Itemize
Fate una copia del documento.
Questo sarà la vostra copia di lavoro.
Potrete inoltre usarla come vostra copia personale tradotta mettendola
nella vostra directory
\family typewriter
~/.lyx/doc/
\family default
.
\end_layout
\begin_layout Itemize
Qualche volta il documento originale (dal team \SpecialChar LyX
) viene aggiornato.
Usate lo strumento CVSweb reperibile presso il sito dello sviluppatore
per vedere i cambiamenti avvenuti
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Alternativamente, potete procurarvi una copia dell'ultima versione del documento
inglese che avete tradotto.
\end_layout
\end_inset
.
In questo modo potrete facilmente vedere le parti del documento che vanno
aggiornate.
\end_layout
\begin_layout Itemize
Se per caso trovate un errore nel documento originale, correggetelo e comunicate
al documentation team i cambiamenti! (non avete dimenticato di unirvi al
documentation team vero?).
\end_layout
\begin_layout Section
Supporto Tastiere Internazionali
\end_layout
\begin_layout Standard
\emph on
Nota dell'editore: la seguente sezione è a cura di Ivan Schreter.
Necessita di essere corretta in relazione al nuovo Documentation Style
ed al fine di utilizzare le caratteristiche della versione 1.0.
Il tutto va inoltre unito con le sezioni successive.-jw
\end_layout
\begin_layout Subsection
Definire una propria Mappa della Tastiera: Formato File Keymap
\end_layout
\begin_layout Standard
Diamo uno sguardo al file di definizione della tastiera più da vicino.
E' un file di testo ASCII che definisce
\end_layout
\begin_layout Itemize
key-to-key or key-to-string translations
\end_layout
\begin_layout Itemize
dead keys
\end_layout
\begin_layout Itemize
dead keys exceptions
\end_layout
\begin_layout Standard
Per definire una traduzione tasto a tasto o tasto a stringa, usare questo
comando:
\end_layout
\begin_layout Quotation
\family typewriter
\backslash
kmap
\family default
\family typewriter
key
\family default
\family typewriter
outstring
\end_layout
\begin_layout Standard
dove
\family typewriter
key
\family default
è il tasto che deve essere tradotto e
\family typewriter
outstring
\family default
è la stringa che deve essere inserita nel documento.
P er definire i tasti morti, usare:
\end_layout
\begin_layout Quotation
\family typewriter
\backslash
kmod
\family default
\family typewriter
key
\family default
\family typewriter
deadkey
\end_layout
\begin_layout Standard
dove
\family typewriter
key
\family default
è il tasto della tastiera e
\family typewriter
\emph on
deadkey
\family default
\emph default
\emph toggle
è il nome del tasto morto.
Sono supportati i seguenti tasti morti (le scorciatoie sono tra parentesi):
\end_layout
\begin_layout Quotation
\emph on
Name
\begin_inset space \hfill{}
\end_inset
Example
\end_layout
\begin_layout Quotation
acute (acu)
\begin_inset space \hfill{}
\end_inset
áéíóú
\end_layout
\begin_layout Quotation
grave (gra)
\begin_inset space \hfill{}
\end_inset
àèìòù
\end_layout
\begin_layout Quotation
macron (mac)
\begin_inset space \hfill{}
\end_inset
ō
\end_layout
\begin_layout Quotation
tilde (til)
\begin_inset space \hfill{}
\end_inset
ñÑ
\end_layout
\begin_layout Quotation
underbar (underb)
\begin_inset space \hfill{}
\end_inset
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
b o
\end_layout
\end_inset
\end_layout
\begin_layout Quotation
cedilla (ced)
\begin_inset space \hfill{}
\end_inset
çÇ
\end_layout
\begin_layout Quotation
underdot (underd)
\begin_inset space \hfill{}
\end_inset
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
d o
\end_layout
\end_inset
\end_layout
\begin_layout Quotation
circumflex (circu)
\begin_inset space \hfill{}
\end_inset
âêîôû
\end_layout
\begin_layout Quotation
circle (circl)
\begin_inset space \hfill{}
\end_inset
ÅůŮ
\end_layout
\begin_layout Quotation
tie (tie)
\begin_inset space \hfill{}
\end_inset
\backslash
t oo
\end_layout
\begin_layout Quotation
breve (bre)
\begin_inset space \hfill{}
\end_inset
ă
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
u o
\end_layout
\end_inset
\end_layout
\begin_layout Quotation
caron (car)
\begin_inset space \hfill{}
\end_inset
čšž
\end_layout
\begin_layout Quotation
hungarian umlaut (hug)
\begin_inset space \hfill{}
\end_inset
őű
\end_layout
\begin_layout Quotation
umlaut (uml)
\begin_inset space \hfill{}
\end_inset
äöü
\end_layout
\begin_layout Quotation
dot (dot)
\begin_inset space \hfill{}
\end_inset
ż
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
.s
\end_layout
\end_inset
\end_layout
\begin_layout Standard
Dato che in molte tastiere internazionali ci sono delle eccezioni alle funzioni
di alcuni tasti morti, potete definirli usando
\end_layout
\begin_layout Quotation
\family typewriter
\backslash
kxmod
\family default
\family typewriter
deadkey key outstring
\end_layout
\begin_layout Standard
Ad esempio, sulle tastiere slovacche se immettete
\begin_inset Quotes eld
\end_inset
caron-o
\begin_inset Quotes erd
\end_inset
, verrà scritto
\begin_inset Quotes erd
\end_inset
circumflex-o
\begin_inset Quotes erd
\end_inset
, così dovrete cambiare
\end_layout
\begin_layout Quotation
\family typewriter
\backslash
kxmod
\family default
\family typewriter
caron o "
\backslash
^o"
\end_layout
\begin_layout Standard
per farlo funzionare correttamente.
Inoltre, dovrete definire come eccezione i tasti morti su i e j , per rimuovere
il punto prima di inserire un accento.
Lo cambierò appena possibile in quanto non ho ancora avuto il tempo.
\end_layout
\begin_layout Standard
Circa i caratteri, backslash non è presente, quindi per inserirlo avete
bisogno del doppio backslash.
Inoltre virgolette e # hanno differenti significati.
# segna i commenti, le virgolette iniziano e finiscono i comandi in stile
\SpecialChar LaTeX
.
Per immettere le virgolette dovete usare
\family typewriter
\backslash
"
\family default
, per
\family typewriter
#
\family default
, usare
\family typewriter
\backslash
#
\family default
.
\end_layout
\begin_layout Standard
Se create un file di descrizione della tastiera che va bene per la vostra
lingua, vi prego di mandarmelo, in modo che io possa includerlo nella prossima
distribuzione delle mappe di tastiera.
\end_layout
\begin_layout Standard
Molte parole chiave saranno presenti nelle future distribuzioni come:
\end_layout
\begin_layout Itemize
\family typewriter
\backslash
kinclude filename
\family default
\emph on
\begin_inset space \hfill{}
\end_inset
\family typewriter
\emph default
include
\family default
un altro file
\end_layout
\begin_layout Itemize
\family typewriter
\backslash
kprog program
\family default
\emph on
\begin_inset space \hfill{}
\end_inset
\family typewriter
\emph default
define
\family default
un programma esterno di traduzione della tastiera
\end_layout
\begin_layout Standard
Inoltre dovrebbe apparire nel file
\family typewriter
lyxrc
\family default
di default (ad esempio un'opzione
\family typewriter
\backslash
kinclude
\family default
per includere la tastiera di default).
\end_layout
\begin_layout Section
Materiale sulle tastiere internazionali
\begin_inset CommandInset label
LatexCommand label
name "sec:keymap"
\end_inset
\end_layout
\begin_layout Standard
Le prossime due sezioni descrivono la sintassi dei file
\family typewriter
.kmap
\family default
e
\family typewriter
.cdef
\family default
nel dettaglio.
queste sezioni dovrebbero aiutarvi a disegnare la vostra mappa di caratteri
se quelle che avete non vi soddisfano.
\end_layout
\begin_layout Subsection
Il File .kmap
\end_layout
\begin_layout Standard
Un file
\family sans
.
\family typewriter
kmap
\family default
mappa le pressioni dei tasti sia di caratteri che di stringhe.
Come suggerisce il nome, esso setta la mappa della tastiera.
Il file
\family sans
.
\family typewriter
kmap
\family default
contiene delle parole chiavi come
\family typewriter
kmap,kmod,ksmod
\family default
, e
\family typewriter
kcomb
\family default
qui di seguito descritte.
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
kmap
\family default
Mappa il carattere rispetto a una stringa
\end_layout
\begin_layout LyX-Code
\backslash
kmap
\family roman
\emph on
char
\family default
\emph default
\family roman
\emph on
string
\end_layout
\begin_layout Standard
Questo mapperà
\emph on
char
\emph default
in
\emph on
string
\emph default
.
Notate che in
\emph on
string
\emph default
, le due virgolette (") e il backslash (
\backslash
) devono essere evitate con un precedente backslash (
\backslash
).
\end_layout
\begin_layout Standard
Un esempio di
\family sans
kmap
\family default
che serve affinchè il simbolo
\family sans
/
\family default
venga generato dal tasto
\family sans
&
\family default
è:
\end_layout
\begin_layout LyX-Code
\backslash
kmap & /
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family typewriter
kmod
\family default
Specifica un carattere accentato
\end_layout
\begin_layout LyX-Code
\backslash
kmod
\family roman
\emph on
char accent allowed
\end_layout
\begin_layout Standard
Questo farà sì che il carattere
\emph on
char sia accentato sul carattere ammesso
\emph default
.
Questo è un meccanismo di tasto morto
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Il termine tasto morto si riferisce ad un tasto che non produce un carattere
da solo, ma soltanto quando è seguito da un altro tasto.
Ad esempio, si può riprodurre un carattere tedesco con un umlaunt come
\family roman
\emph on
ä
\emph default
.
\end_layout
\end_inset
.
\end_layout
\begin_layout Standard
Se premete
\emph on
char
\emph default
e poi una altro tasto non in
\emph on
allowed (non permesso)
\emph default
avrete un
\emph on
char
\emph default
seguito da un altro tasto, non abilitato.
Ricordate che un Backspace cancella un tasto morto, così se premete
\emph on
char
\emph default
\family sans
\emph on
Backspace
\family default
\emph default
, il cursore non andrà una posizione indietro, bensì cancellerà l'effetto
che il
\emph on
char
\emph default
dovrebbe avere sul tasto successivo.
\end_layout
\begin_layout Standard
Il seguente esempio specifica che il carattere ' dovrà essere un accento
acuto, abilitato sui caratteri a, e, i, o, u, A, E, I, O, e U:
\end_layout
\begin_layout LyX-Code
\backslash
kmod ' acute aeiouAEIOU
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
ksmod Specifica un'eccezione al carattere accentato
\end_layout
\begin_layout LyX-Code
\backslash
kxmod
\family roman
\emph on
accent char result
\end_layout
\begin_layout Standard
Questo definisce un'eccezione per l'
\emph on
accent
\emph default
sul
\emph on
char
\emph default
.
L'
\emph on
accent
\emph default
deve essere stato assegnato ad un tasto con una precedente dichiarazione
\family typewriter
\backslash
kmod
\family default
e
\emph on
char
\emph default
non deve appartenere al set degli accenti (
\emph on
accent
\emph default
) abilitati
\emph on
(allowed)
\emph default
.
Quando immettete la sequenza del carattere accentato (
\emph on
accent char sequence)
\emph default
, il risultato (
\emph on
result)
\emph default
viene prodotto.
Se non esiste una dichiarazione nel file
\family typewriter
.kmap
\family default
e voi immettete l'
\emph on
accent char
\emph default
, avrete un'
\emph on
accent_key char
\emph default
dove
\emph on
accent_key
\emph default
è il primo argomento della dichiarazione
\family typewriter
\backslash
kmod
\family default
declaration.
\end_layout
\begin_layout Standard
La seguente procedura di comandi fa in modo che venga generato äi immettendo
acute-i ('i):
\end_layout
\begin_layout LyX-Code
\backslash
kxmod acute i "
\backslash
\backslash
'{
\backslash
\backslash
i}"
\end_layout
\begin_layout Labeling
\labelwidthstring 00.00.0000
\family sans
kcomb
\family default
Combina due caratteri accentati
\end_layout
\begin_layout LyX-Code
\backslash
kcomb
\family roman
\emph on
accent1 accent2 allowed
\end_layout
\begin_layout Standard
Questo effetto ha qualcosa di esoterico.
Infatti vi permette di combinare l'effetto di
\emph on
accent1
\emph default
e
\emph on
accent2
\emph default
(in quell'ordiner!) su caratteri abilitati
\emph on
(allowed)
\emph default
.
I tasti per
\emph on
accent1
\emph default
e
\emph on
accent2
\emph default
devono essere stati settati con un comando
\family typewriter
\backslash
kmod
\family default
in un punto precedente del file.
\end_layout
\begin_layout Standard
Consideriamo questo esempio dal file
\family typewriter
greek.kmap
\family default
:
\end_layout
\begin_layout LyX-Code
\backslash
kmod ; acute aeioyvhAEIOYVH
\backslash
kmod : umlaut iyIY
\backslash
kcomb acute umlaut iyIY
\end_layout
\begin_layout Standard
Questo vi permette di premere
\family sans
;:i
\family default
ed ottenere l'effetto di
\family typewriter
\backslash
'{
\backslash
"{i}}
\family default
.
Un backspace in questo caso cancella l'ultimo tasto morto, così se premete
\family sans
;: Backspace i
\family default
avrete
\family typewriter
\backslash
'{i}
\family default
.
\end_layout
\begin_layout Subsection
Il file .cdef
\end_layout
\begin_layout Standard
Dopo la mappatura fatta con
\family typewriter
.kmap,
\family default
il file
\family typewriter
.cdef
\family default
mappa le stringhe che i symboli generano rispetto ai caratteri del font
corrente.
La corrente distribuzione di \SpecialChar LyX
include almeno i files
\family typewriter
iso8859-1.cdef
\family default
e
\family typewriter
iso8859-2.cdef
\family default
.
\end_layout
\begin_layout Standard
In generale il file
\family typewriter
.cdef
\family default
è una sequenza di dichiarazioni di questa forma:
\end_layout
\begin_layout LyX-Code
\family roman
\emph on
char_index_in_set
\family default
\emph default
\family roman
\emph on
string
\end_layout
\begin_layout Standard
Ad esempio, per mappare
\family sans
\backslash
'{e}
\family default
sul corrispondente carattere nel set iso-8859-1 (233), si usa la seguente
dichiarazione
\end_layout
\begin_layout LyX-Code
233 "
\backslash
\backslash
'{e}"
\end_layout
\begin_layout Standard
con
\family typewriter
\backslash
\family default
e
\family typewriter
"
\family default
estranei alla stringa.
Notate che lo stesso carattere può essere applicato a più di una stringa.
Nel file
\family typewriter
iso-8859-7.cdef
\family default
avete
\end_layout
\begin_layout LyX-Code
192 "
\backslash
\backslash
'{
\backslash
\backslash
\backslash
"{i}}"
\begin_inset Newline newline
\end_inset
192 "
\backslash
\backslash
\backslash
"{
\backslash
\backslash
'{i}}"
\end_layout
\begin_layout Standard
Se \SpecialChar LyX
non trova una mappatura per la stringa prodotta dalla pressione del
tasto o da una sequenza con tasti morti, controllerà se assomiglia ad un
carattere accentato e proverà a disegnare un accento sul carattere sullo
schermo.
\end_layout
\begin_layout Subsection
Tasti morti
\end_layout
\begin_layout Standard
C'è un altro modo per aggiungere il supporto a caratteri internazionali,
ed è quello che usa la tecnica dei cosiddetti tasti morti.
Un tasto morto lavora in combinazione con una lettera per produrre un carattere
accentato.
In questa sezione spieghiamo come si crea un semplice tasto morto per far
vedere come funziona.
\end_layout
\begin_layout Standard
Supponiamo di avere bisogno di un carattere circonflesso,
\begin_inset Quotes eld
\end_inset
^
\begin_inset Quotes erd
\end_inset
.
Si potrebbe associare il tasto ^ [a.k.a.
\family sans
\begin_inset space ~
\end_inset
Shift-
\family default
6] al comando \SpecialChar LyX
\family typewriter
accent-circumflex
\family default
nel vostro file
\family typewriter
lyxrc
\family default
.
Ora, se digitate il tasto ^ seguito da una lettera, la lettera avrà un
accento circonflesso su di essa.
Per esempio, la sequenza
\begin_inset Quotes eld
\end_inset
^e
\begin_inset Quotes erd
\end_inset
produce la lettera e con ^.
Se provate a digitare
\begin_inset Quotes eld
\end_inset
^t
\begin_inset Quotes erd
\end_inset
, tuttavia, \SpecialChar LyX
segnalerà con un beep che l'operazione non è possibile dato
che la t non ha mai accento.
Premere
\family sans
Spazio
\family default
dopo un deadkey produrrà un accento semplice.
Attenzione a quest'ultimo punto! Se associate un tasto ad un deadkey, dovrete
riassociare il carattere su quel tasto ad un altro tasto ancora.
\end_layout
\begin_layout Standard
Un altro modo comune di associare tasti morti è quello di usare
\family sans
Meta-
\family default
,
\family sans
Ctrl-
\family default
, e
\family sans
Shift-
\family default
in combinazione con un accento come
\begin_inset Quotes eld
\end_inset
\family sans
~
\family default
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
\family sans
,
\family default
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
\family sans
^
\family default
\begin_inset Quotes erd
\end_inset
.
Un'altra tecnica consiste nell'uso di
\family typewriter
xmodmap
\family default
e
\family typewriter
xkeycaps
\family default
per settare il tasto speciale
\family typewriter
Mode_Switch
\family default
.
Il
\family typewriter
Mode_Switch
\family default
si comporta in alcuni casi proprio come lo
\family sans
Shift
\family default
e permette di associare tasti a caratteri accentati.
Potete inoltre convertire tasti semplici in tasti morti associandoli ad
oggetti del tipo
\family typewriter
usldead_cedilla
\family default
e successivamente, associando questo tasto simbolico al corrispondente
comando \SpecialChar LyX
.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Nota da
\noun on
John Weiss
\noun default
: Questo è esattamente quello che faccio nei miei files
\family typewriter
~/.lyx/lyxrc
\family default
e
\family typewriter
~/.xmodmap
\family default
.
Ho il mio tasto
\family sans
Scroll
\begin_inset space ~
\end_inset
Lock settato come Mode_Shift
\family default
e un sacco di questi tasti simbolici
\family sans
\begin_inset Quotes eld
\end_inset
usldead_
\family typewriter
*
\family sans
\begin_inset Quotes erd
\end_inset
\family default
che consentono di ottenere cose del tipo
\family sans
Scroll
\begin_inset space ~
\end_inset
Lock
\family default
-
\family sans
^
\family default
e
\family sans
Scroll Lock-~
\family default
.
Questo è il modo in cui genero i miei caratteri accentati.
\end_layout
\end_inset
Potete fare pressocchè tutto con il tasto
\family typewriter
Mode_Switch
\family default
: uno dei tasti
\family sans
Ctrl-
\family default
, una funzione libera, ecc.
Come per i comandi \SpecialChar LyX
che producono accenti, consultate il
\emph on
Manuale di Riferimento
\emph default
\emph toggle
per l'accento acuto.
Troverete lì la lista completa.
\end_layout
\begin_layout Subsection
Salvare la vostra configurazione di Linguaggio
\end_layout
\begin_layout Standard
Potete editare il vostro file
\family typewriter
lyxrc
\family default
in modo che il linguaggio da voi preferito sia configurato e caricato automatic
amente allo startup di \SpecialChar LyX
.
Questa sezione descrive i comandi
\family typewriter
lyxrc
\family default
da specificare:
\end_layout
\begin_layout Itemize
default, primary, and secondary keymaps
\end_layout
\begin_layout Itemize
character set
\end_layout
\begin_layout Standard
Guardate il vostro file
\family typewriter
lyxrc
\family default
per i vari esempi su come configurarlo.
In particolare, potete settare una keymap così:
\end_layout
\begin_layout LyX-Code
\backslash
kbmap true
\end_layout
\begin_layout LyX-Code
\backslash
kbmap_primary german
\end_layout
\begin_layout LyX-Code
\backslash
kbmap_secondary american
\end_layout
\begin_layout LyX-Code
\end_layout
\begin_layout Standard
e una font-mapping (
\family typewriter
.cdef
\family default
file) in questo modo:
\end_layout
\begin_layout LyX-Code
\backslash
screen_font_encoding iso8859-2
\end_layout
\begin_layout Chapter
Installare Nuove Classi di Documento, Layouts e Templates
\begin_inset CommandInset label
LatexCommand label
name "chap:textclass"
\end_inset
\end_layout
\begin_layout Standard
In questo capitolo si descrivono le procedure per creare ed installare nuovi
layouts di \SpecialChar LyX
e files template, come anche si procederà ad illustrare la
corretta installazione di nuove classi di documento \SpecialChar LaTeX
.
Alcune definizioni: una classe di documento è un file \SpecialChar LaTeX
(che di solito hanno
estensione in
\family typewriter
.cls
\family default
o
\family typewriter
.sty
\family default
) che descrive il formato di un documento come un articolo, report, prestampa
di giornale, ecc.
e tutti i comandi di cui si ha bisogno per realizzare quel formato.
Un file layout è un file \SpecialChar LyX
che corrisponde ad una classe di documento \SpecialChar LaTeX
e
che dice a \SpecialChar LyX
come
\begin_inset Quotes eld
\end_inset
disegnare
\begin_inset Quotes erd
\end_inset
le cose sullo schermo in modo da rendere le cose il più possibile vicine
alla pagina finale stampata.
Più precisamente, un file layout descrive una
\begin_inset Quotes eld
\end_inset
textclass
\begin_inset Quotes erd
\end_inset
che è il costrutto interno che \SpecialChar LyX
usa per fare il rendering dello schermo.
\begin_inset Quotes eld
\end_inset
Layout
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
textclass
\begin_inset Quotes erd
\end_inset
possono a volta essere usate come sinonimi, ma è meglio riferirsi al file
come il layout, e all'oggetto residente nella memoria di \SpecialChar LyX
come textclass.
Un file template è semplicemente un documento \SpecialChar LyX
che contiene un set di righe
predefinite per una data classe di documento che sono generalmente richiesti
per quella classe.
I templates sono in particolare utili per cose come i manoscritti di giornale
che devono essere processati elettronicamente.
\end_layout
\begin_layout Section
Installare un nuovo pacchetto \SpecialChar LaTeX
\end_layout
\begin_layout Standard
Alcune installazioni possono non includere un pacchetto \SpecialChar LaTeX
che vorreste usare
in \SpecialChar LyX
.
Ad esempio, vorreste avere Foil\SpecialChar TeX
, un pacchetto comune (e molto potente)
per preparare slides o grafici per capiprogetto.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Vedere il manuale
\emph on
Additional \SpecialChar LyX
Features
\emph default
per ulteriori informazioni su Foil\SpecialChar TeX
\end_layout
\end_inset
Ecco di seguito tutti i passaggi necessari per avere il pacchetto e lanciarlo
se si usa una recente versione di te\SpecialChar TeX
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Questa procedura è definitivamente valida per la versione v1.0 e tutte le
versioni beta v0.9.
Commenti sul funzionamento per le versioni v.04 sono graditi, anche se è
comunque preferibile aggiornarsi alla versione v1.0.x.
\end_layout
\end_inset
o altre distribuzioni basate su web2c.
\end_layout
\begin_layout Enumerate
Procurarsi il pacchetto da CTAN o simili.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Vedere il manuale
\emph on
Inventory of your \SpecialChar LaTeX
configuration
\emph default
per i dettagli su cosa è CTAN e dove possono essere trovate le classi di
documento supportate.
\end_layout
\end_inset
\end_layout
\begin_layout Enumerate
Leggere il file
\family typewriter
texmf.cnf
\family default
(che di solito risiede nella directory
\family typewriter
$TEXMF/web2c
\family default
, sebbene possiate lanciare
\family typewriter
kpsewhich texmf.cnf
\family default
per localizzarlo).
Questo descrive come aggiungere una directory locale
\family typewriter
texmf
\family default
; seguire le istruzioni.
Avete bisogno di inserire il nome della vostra directory locale
\family typewriter
texmf
\family default
in
\family typewriter
texmf.cnf
\family default
.
Sotto Linux,
\family typewriter
/usr/local
\family default
è una posizione logica dove installare software che non è presente nelle
normali distribuzioni, così dovete usare
\family typewriter
/usr/local/texmf
\family default
.
Di solito dovete modificare solo due cose:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
Settare
\family typewriter
TEXMFLOCAL
\family default
sulla directory che avete scelto; es.
\begin_inset Newline newline
\end_inset
\family typewriter
TEXMFLOCAL = /usr/local/texmf
\end_layout
\begin_layout Enumerate
Assicuratevi che
\family typewriter
TEXMF
\family default
includa la variabile
\family typewriter
TEXMFLOCAL
\family default
variable; es.
\begin_inset Newline newline
\end_inset
\family typewriter
TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
\end_layout
\end_deeper
\begin_layout Enumerate
Create la vostra directory locale
\family typewriter
texmf
\family default
(es.
\family typewriter
/usr/local/texmf
\family default
).
Dovete seguire la struttura dell'esistente directory
\family typewriter
texmf
\family default
(ad esempio, i pacchetti latex dovrebbero andare sotto
\family typewriter
/usr/local/texmf/tex/latex/
\family default
).
\end_layout
\begin_layout Enumerate
Installare il pacchetto.
Ad esempio, vogliamo scompattare l'archivio Foil\SpecialChar TeX
e creare
\family typewriter
/usr/local/texmf/tex/latex/foiltex
\family default
.
La directory
\family typewriter
foiltex
\family default
contiene vari files.
\end_layout
\begin_layout Enumerate
Lanciare:
\family typewriter
texhash
\family default
.
Questo dovrebbe creare
\family typewriter
/usr/local/texmf/ls-R
\family default
tra le altre.
\end_layout
\begin_layout Enumerate
Dall'interno di \SpecialChar LyX
, fate:
\family sans
\bar under
O
\bar default
ptions\SpecialChar menuseparator
\bar under
R
\bar default
econfigure
\family default
.
Riavviate \SpecialChar LyX
.
\end_layout
\begin_layout Standard
Ora dovreste vedere il vostro nuovo pacchettoad esempio
\family sans
slides (Foil\SpecialChar TeX
)
\family default
—sotto
\family sans
Layout\SpecialChar menuseparator
Document
\family default
, campo
\family sans
Class
\family default
.
Notate che ci sono modi più semplici per installare pacchetti: potete aggiunger
e un link alla nuova directory del pacchetto nella directory di sistema
\SpecialChar LaTeX
(
\family typewriter
$TEXMF/tex/latex
\family default
, non dimenticate di lanciare dopo
\family typewriter
texconfig
\family default
), o qualche volta basta semplicemente settare la variabile ambientale $TEXINPUT
S per includere un nuovo pacchetto.
Tuttavia, la procedura formale descritta in
\family typewriter
texmf.cnf
\family default
è garantito che funzioni, così dovreste provare a seguirla fino a che se
ne ha la possibilità (che potrebbe perdersi se non si ha accesso da superuser).
\end_layout
\begin_layout Section
Layouts
\end_layout
\begin_layout Standard
Questa sezione descrive come scrivere ed installare i propri files di layout
di \SpecialChar LyX
(anche detti textclass), utilizzando la textclass
\family typewriter
article
\family default
come esempio.
I files
\family typewriter
.layout
\family default
descrivono quali stili di paragrafi sono disponibili per una data classe
di documenti e come \SpecialChar LyX
dovrebbe mostrarli.
Proveremo qui a fornire un'accurata descrizione del processo; tuttavia,
ci sono così tanti tipi di documenti supportati dalle classi \SpecialChar LaTeX
da renderci
impossibile fornire una descrizione esaustiva dell'argomento e delle possibilit
à che si possono manifestare.
\end_layout
\begin_layout Standard
Quando programmate di scrivere un nuovo layout, è estremamente utile guardare
prima i layout di esempio distribuiti con \SpecialChar LyX
.
Se usate una classe di documento \SpecialChar LaTeX
particolarmente bella che può essere
di interesse anche per altre persone e che abbia un buon corrispondente
layout in \SpecialChar LyX
, siete liberi di mandarcelo in modo da poterlo inserire nella
distribuzione.
\end_layout
\begin_layout Standard
Tutte le righe di codice di questo paragrafo sono case-insensitive; ciò
significa che
\family typewriter
Style
\family default
,
\family typewriter
style
\family default
e
\family typewriter
StYle
\family default
sono lo stesso comando.
I possibili valori sono scritti tra parentesi dopo il nome della caratteristica.
Il valore di default se una caratteristica non è specificata nella descrizione
della textclass è scritto in
\family typewriter
\emph on
corsivo
\family default
\emph default
.
Se l'argomento è un tipo di dati come
\begin_inset Quotes eld
\end_inset
string
\begin_inset Quotes erd
\end_inset
o
\begin_inset Quotes eld
\end_inset
float
\begin_inset Quotes erd
\end_inset
, il valore di default è scritto come
\family typewriter
float=default
\family default
.
\end_layout
\begin_layout Subsection
Supportare nuove classi di documento
\end_layout
\begin_layout Standard
Ci sono tre situazioni che potete incontrare se volete supportare una nuova
classe di documento \SpecialChar LaTeX
.
I due tipi più semplici coinvolgono classe (.cls) e style (.sty) \SpecialChar LaTeX2e
.
Se siete sfortunati potreste incappare nella terza situazione di supportare
un file di stile \SpecialChar LaTeX
2.09.
Il processo di creazione di un file di layout per queste tre situazioni
è simile; tuttavia un passo in più è richiesto per permettere a \SpecialChar LyX
di usare
\SpecialChar LaTeX
2.09.
\end_layout
\begin_layout Subsection
File sty LaTex2e
\end_layout
\begin_layout Standard
Se la vostra nuova classe di documento è sotto forma di style file, usato
in aggiunta ad uno esistente, la classe di documento supportata, inizia
copiando il layout della classe esistente nella vostra directory locale.
A causa della mancanza di esempi assumeremo che il file style si chiami
\family sans
myclass.sty
\family default
e sarà usato con
\family sans
report.cls
\family default
con una classe standard.
\end_layout
\begin_layout LyX-Code
cp report.layout ~/.lyx/layouts/myclass.layout
\end_layout
\begin_layout Standard
Poi editiamo
\family typewriter
myclass.layout
\family default
e cambiamo la linea:
\end_layout
\begin_layout LyX-Code
\backslash
Declare\SpecialChar LaTeX
Class{report}
\end_layout
\begin_layout Standard
in modo da avere
\end_layout
\begin_layout LyX-Code
\backslash
Declare\SpecialChar LaTeX
Class[report, myclass.sty]{report (myclass)}
\end_layout
\begin_layout Standard
Poi aggiungiamo:
\end_layout
\begin_layout LyX-Code
Preamble
\backslash
usepackage{myclass}EndPreamble
\end_layout
\begin_layout Standard
presso l'inizio del file.
\end_layout
\begin_layout Standard
Lanciamo \SpecialChar LyX
e selezioniamo
\family sans
\bar under
O
\bar default
ptions\SpecialChar menuseparator
\bar under
R
\bar default
econfigure
\family default
.
Riavviamo \SpecialChar LyX
e proviamo a creare un nuovo documento.
Dovreste vedere
\family sans
\begin_inset Quotes eld
\end_inset
report (myclass)
\begin_inset Quotes erd
\end_inset
\family default
come una classe di documento opzione nel men
\family sans
u
\family default
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument
\family default
.
E' probabile che alcuni dei comandi di sezionamento ed altri differiscano
dal modo di lavorare delle classi base
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
\family typewriter
Report
\family default
nell'esempio
\end_layout
\end_inset
, così potrete giocare con i settaggi per le differenti sezioni se vorrete.
In seguito l'argomento sarà ripreso.
\end_layout
\begin_layout Subsection
File cls \SpecialChar LaTeX2e
\end_layout
\begin_layout Standard
In questo caso, dovrete
\begin_inset Quotes eld
\end_inset
vedervela da soli
\begin_inset Quotes erd
\end_inset
con il vostro layout.
Raccomandiamo fortemente di copiare un file di layout esistente che usa
una classe di testo \SpecialChar LaTeX
simile e modificarlo per quanto possibile.
oppure si può almeno usare un file esistente come punto di partenza in
modo da capire quali oggetti servano ai vostri scopi.
Ancora, più avanti ci saranno altri dettagli.
\end_layout
\begin_layout Subsection
File sty \SpecialChar LaTeX
2.09
\end_layout
\begin_layout Standard
Se il file
\family typewriter
.sty
\family default
è specifico per l'ormai defunto \SpecialChar LaTeX
2.09 potete stabilirlo attraverso uno di
questi due modi:
\end_layout
\begin_layout Enumerate
Un file di esempio o la documentazione nel file
\family sans
sty
\family default
stabilisce l'uso con
\family typewriter
\backslash
documentstyle{myclass}
\family default
(opposto a
\family typewriter
\backslash
documentclass
\family default
).
\end_layout
\begin_layout Enumerate
Lanciare \SpecialChar LaTeX
su un file di esempio produrra un banner con l'avvertimento che
si sta entrando nel
\begin_inset Quotes eld
\end_inset
compatibility mode
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Standard
\SpecialChar LyX
tecnicamente supporta solo documenti \SpecialChar LaTeX2e
.
Ma non mollate ancora! Dove c'è volontà c'è un modo ( oppure
\begin_inset Quotes eld
\end_inset
adattarsi è impossibile, ma l'abbiamo comunque fatto.
\begin_inset Quotes erd
\end_inset
).
Il supporto esistente per ReV\SpecialChar TeX
3.1, ad esempio, comprende il codice 2.09 da
usare nei documenti formattati 2e.
Potete riutilizzare l'adattatore ReV\SpecialChar TeX
per la vostra
\family typewriter
myclass.sty
\family default
(se risulta essere di codice 2.09).
\end_layout
\begin_layout Standard
Bene, ecco cosa dovete fare:
\end_layout
\begin_layout LyX-Code
cp \SpecialChar LyX
Dir/tex/revtex.cls ~/tex/myclass.cls
\end_layout
\begin_layout Standard
oppure dove avete i vostri files locali \SpecialChar TeX
.
Ora editate
\family typewriter
myclass.cls
\family default
e fate un trova-e-sostituisci tra
\begin_inset Quotes eld
\end_inset
revtex
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes erd
\end_inset
myclass
\begin_inset Quotes erd
\end_inset
.
E' probabile che alcune delle dichiarazioni
\family typewriter
\backslash
DeclareOption
\family default
nel file non sono rilevanti per il vostro file di stile, ma non ci interessano
per il momento.
\end_layout
\begin_layout Standard
Il prossimo passo è quello di ripetere il processo di creazione del file
di layout myclass.layout di prima; solo per questa volta usate:
\end_layout
\begin_layout LyX-Code
\backslash
Declare\SpecialChar LaTeX
Class{myclass}
\end_layout
\begin_layout Standard
e non dovreste aver bisogno di definizioni di tipo
\family typewriter
Preamble
\family default
.
Lanciate \SpecialChar LyX
e riconfigurate, riavviate \SpecialChar LyX
e con un po di fortuna avrete un
sistema che ha bisogno solo di qualche accorgimento allo schermo e null'altro.
Questo implica il manipolare dei valori usati da \SpecialChar LyX
per lo spazio, lo stile
dei fonts e le altre cose definite nei files
\family typewriter
.layout
\family default
.
\end_layout
\begin_layout Standard
Avrete inoltre bisogno di controllare che avete tutte le variabili d'ambiente
da
\family typewriter
myclass.sty
\family default
disponibili nel file
\family typewriter
myclass.layout
\family default
.
Se mancano alcune bisognerà inserirle.
Copiate un altro stile che sembra simile e modificatelo.
Il modo più semplice per farlo è con:
\end_layout
\begin_layout LyX-Code
Style MissingStyle
\end_layout
\begin_layout LyX-Code
CopyStyle SimilarStyle
\end_layout
\begin_layout LyX-Code
# whatever is different you now redefine
\end_layout
\begin_layout LyX-Code
End
\end_layout
\begin_layout Standard
Guardare in seguito per i dettagli circa quello che fa ogni elemento nel
file
\family typewriter
.layout
\family default
.
\end_layout
\begin_layout Standard
Dovrebbe essere abbastanza per mettervi sulla giusta strada.
Fate riferimento alle successive sezioni per i dettagli sui contenuti attuali
dei files layout e ricordate che se ci sono problemi potete chiedere aiuto
alla mailing list di \SpecialChar LyX
.
Siamo sempre lieti di avere nuove classi di documento.
\end_layout
\begin_layout Section
Dichiarare una nuova textclass
\end_layout
\begin_layout Standard
Quando è finalmente giunta l'ora di sporcarvi le mani e creare un vostro
personale file di layout, la seguente sezione descrive a cosa andrete incontro.
Il nostro consiglio è di procedere piano, salvare e testare spesso, ascoltare
musica soffusa e bere un paio di bevande per adulti che gradite; qualcuna
in più se siete particolarmente disorientati.
Non è molto difficile, eccetto per la moltitudine di opzioni che possono
creare problemi se cercate di molte cose contemporaneamente.
Andate a prendervi un'altra bibita, solo per precauzione.
\end_layout
\begin_layout Standard
Andiamo!
\end_layout
\begin_layout Standard
Le linee in un file di layout che iniziano con # sono commenti.
C'è una eccezione a questa regola: tutti i layouts dovrebbero iniziare
con queste linee:
\end_layout
\begin_layout LyX-Code
\size small
#% Do not delete the line below; configure depends on this
\end_layout
\begin_layout LyX-Code
\size small
#
\backslash
Declare\SpecialChar LaTeX
Class{article}
\end_layout
\begin_layout Standard
La seconda linea è usata quando configurate \SpecialChar LyX
.
Il file di layout è letto dallo script \SpecialChar LaTeX
\family typewriter
chkconfig.ltx
\family default
, in un modo speciale e tale che # venga ignorato.
La prima linea è solo un commento \SpecialChar LaTeX
, e la seconda contiene la dichiarazione
della classe di testo.
Se queste linne appaiono in un file chiamato
\family typewriter
article.layout
\family default
, definiranno una textclass dal nome
\family typewriter
article
\family default
(il nome del file di layout) che usa la classe di documento \SpecialChar LaTeX
\family typewriter
article.cls
\family default
(Il default è quello di usare lo stesso nome del layout).
La stringa
\begin_inset Quotes eld
\end_inset
article
\begin_inset Quotes erd
\end_inset
che appare sopra è usata come descrizione della textclass nel menu
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument .
\end_layout
\begin_layout Standard
Assumiamo che scrivete la vostra texclass utilizzando la classe di documento
\family typewriter
article.cls
\family default
, dove avete cambiato le sezioni di testa.
Se lo mettete in un file
\family typewriter
myarticle.layout
\family default
, le intestazioni di questo file dovrebbero essere:
\end_layout
\begin_layout LyX-Code
\size small
#% Do not delete the line below; configure depends on this
\end_layout
\begin_layout LyX-Code
\size small
#
\backslash
Declare\SpecialChar LaTeX
Class[article]{article (with my own headings)}
\end_layout
\begin_layout Standard
Questi dichiarano una textclass
\family typewriter
myarticle
\family default
, associata con la classe di documento \SpecialChar LaTeX
\family typewriter
article.cls
\family default
e descritta come
\begin_inset Quotes eld
\end_inset
article (con le vostre intestazioni)
\begin_inset Quotes erd
\end_inset
.
Se la vostra textclass dipende da molti pacchetti, potete dichiararla come:
\end_layout
\begin_layout LyX-Code
\size small
#% Do not delete the line below; configure depends on this
\end_layout
\begin_layout LyX-Code
\size small
#
\backslash
Declare\SpecialChar LaTeX
Class[article,foo.sty]{article (with my own headings)}
\end_layout
\begin_layout Standard
Queste indicano che la vostra textclass usa il pacchetto foo.sty.
Infine è anche possibile dichiarare classi per codice DocBook.
Le dichiarazioni tipiche avranno questa forma:
\end_layout
\begin_layout LyX-Code
\size small
#% Do not delete the line below; configure depends on this
\end_layout
\begin_layout LyX-Code
\size small
#
\backslash
DeclareDocBookClass[article]{SGML (DocBook article)}
\end_layout
\begin_layout Standard
Notate che a queste dichiarazioni può essere anche dato come parametro opzionale
che dichiara il nome della classe di documento (ma non una lista).
\end_layout
\begin_layout Standard
Quando la textclass è stata modificata secondo i vostri gusti, tutto quello
che dovete fare è copiarla in
\family typewriter
$\SpecialChar LyX
Dir/layouts/
\family default
o in
\family typewriter
$UserDir/layouts
\family default
e lanciare
\family sans
\bar under
O
\bar default
ptions
\bar under
\SpecialChar menuseparator
R
\bar default
econfigure.
\family default
Chiudete \SpecialChar LyX
e rilanciatelo; a questo punto la vostra nuova textclass dovrebbe
essere disponibile insieme alle altre.
\end_layout
\begin_layout Subsection
Parametri generali di textclass
\end_layout
\begin_layout Standard
Questi sono i parametri generali che descrivono la struttura dell'intero
documento:
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
begin{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Description
\family typewriter
\series medium
Columns
\family default
\series default
[
\family typewriter
\emph on
1
\emph default
, 2
\family default
] A seconda che la classe di default abbia una o due colonne.
Può essere cambiato nel menu
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument.
\family default
Questo settaggio (a volte si confonde con
\family typewriter
Sides
\family default
) è importante: se le vostre textclass hanno due colonne di default, ma
dimenticate di settarlo correttamente, l'opzione \SpecialChar LaTeX
\family typewriter
twocolumn
\family default
\emph on
non
\emph default
sarà mostrata quando selezionate
\family sans
Two Columns
\family default
in
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Sides
\family default
\series default
[
\family typewriter
\emph on
1
\emph default
, 2
\family default
] A seconda che la classe di default debba stampare su uno o entrambi i
lati del foglio.
Può essere cambiato nel menu
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument
\family default
\family sans
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
PageStyle
\family default
\series default
[
\family typewriter
\emph on
plain
\emph default
, empty, headings
\family default
] La classe di default pagestyle.
Può essere cambiata nel menu the
\family sans
\bar under
L
\bar default
ayout
\bar under
\SpecialChar menuseparator
D
\bar default
ocument.
\end_layout
\begin_layout Description
\family typewriter
\series medium
MaxCounter
\family default
\series default
[
\family typewriter
\emph on
Counter_Chapter
\emph default
, Counter_Section, Counter_Subsection, Counter_Subsubsection, Counter_Paragraph,
\begin_inset Newline newline
\end_inset
Counter_Subparagraph, Counter_EnumI, Counter_EnumII,
\begin_inset Newline newline
\end_inset
Counter_EnumIII, Counter_EnumIV
\family default
] Il più alto livello di enumerazione automatica.
Valori utili sono
\family typewriter
Counter_Chapter
\family default
per un libro o un report e
\family typewriter
Counter_Section
\family default
per un articolo.
Se non c'è bisogno di enumerazione, ad esempio all'interno di una classe
di lettere,
\family typewriter
MaxCounter
\family default
dovrebbe essere settato su
\family typewriter
Counter_EnumI
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
ClassOptions\SpecialChar ldots
End
\family default
\series default
Questa sezione descrive varie opzioni globali supportate dalla classe di
documento.
\end_layout
\begin_layout Description
\family typewriter
\series medium
ProvidesAmsmath
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Se la classe già carica il pacchetto
\family typewriter
amsmath
\family default
.
Questo è il caso delle classi di documento
\family typewriter
amsart
\family default
e
\family typewriter
amsbook
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
ProvidesMakeidx
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Se la classe fornisce la funzione del pacchetto
\family typewriter
makeidx
\family default
.
Questo è il caso delle classi di documento
\family typewriter
amsart
\family default
e
\family typewriter
amsbook
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
ProvidesUrl
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Se la classe fornisce la funzione del pacchetto
\family typewriter
url
\family default
.
Questo è il caso della classe di documento
\family typewriter
AAS\SpecialChar TeX
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
DefaultFont
\family default
\series default
Questo è usato per descrivere il font di default del documento.
Guardare la sezione
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:fonts"
\end_inset
per una descrizione.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Preamble\SpecialChar ldots
EndPreamble
\family default
\series default
Un set di macro definizione che saranno emesse all'inizio dei files \SpecialChar LaTeX
.
Usatelo per definizioni globali.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Input
\family default
\series default
Come implica il nome, questo comando permette di inserire un altro file
di definizione di textclass per evitare una ripetizione dei comandi.
Molti files di textclass, per esempio, mettono
\family typewriter
stdclass.inc
\family default
, che contiene molti dei layouts di base.
\end_layout
\begin_layout Description
\family typewriter
\series medium
NoStyle
\family default
\series default
Questo comando elimina uno stile esistente.
E' particolarmente utile quando si vuole sopprimere un layout definito
in un input file.
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
end{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Subsection
Sezione
\family typewriter
ClassOption
\end_layout
\begin_layout Standard
La sezione
\family typewriter
ClassOption
\family default
può contenere le seguenti righe:
\end_layout
\begin_layout Description
\family typewriter
\series medium
FontSize
\family default
\series default
[
\family typewriter
string="10|11|12"
\family default
] Una lista delle grandezze dei font disponibili per il font principale
del documento, separato da
\begin_inset Quotes eld
\end_inset
\family typewriter
|
\family default
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
PageStyle
\family default
\series default
[
\family typewriter
string="empty|plain|headings|fancy"
\family default
] La lista degli stili di pagina disponibili, separati da
\begin_inset Quotes eld
\end_inset
\family typewriter
|
\family default
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Other
\family default
\series default
[
\family typewriter
string=""
\family default
] Alcune opzioni di classi di documento, separate da una virgola, che sarà
aggiunta alla parte delle opzioni del comando
\family typewriter
\backslash
documentclass
\family default
.
\end_layout
\begin_layout Subsection
Layouts specifici di paragrafo
\end_layout
\begin_layout Standard
La descrizione di un layout description è di questo tipo
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Notate che questo può definire un nuovo layout o modificarne uno esistente.
\end_layout
\end_inset
:
\end_layout
\begin_layout LyX-Code
Style
\family roman
\emph on
name
\end_layout
\begin_layout LyX-Code
\noun on
...
\end_layout
\begin_layout LyX-Code
End
\end_layout
\begin_layout Standard
dove sono consentiti i seguenti comandi:
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
begin{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Description
\family typewriter
\series medium
CopyStyle
\family default
\series default
Questo è usato per copiare tutte le caratteristiche di un layout esistente
in quello corrente.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LatexType
\family default
\series default
[
\family typewriter
\emph on
Paragraph
\emph default
, Command, Environment, Item_Environment,
\family default
\family typewriter
List_Environment
\family default
] Come dovrebbe essere tradotto il layout in \SpecialChar LaTeX
.
\family typewriter
Paragraph
\family default
non significa nulla in particolare.
\family typewriter
Command
\family default
significa
\family typewriter
\backslash
\emph on
LatexName
\emph default
{\SpecialChar ldots
}
\family default
e
\family typewriter
Environment
\family default
significa
\family typewriter
\backslash
begin{
\emph on
LatexName
\emph default
}\SpecialChar ldots
\backslash
end{
\emph on
LatexName
\emph default
}
\family default
.
\family typewriter
Item_Environment
\family default
è lo stesso di
\family typewriter
Environment
\family default
, eccetto che per
\family typewriter
\backslash
item
\family default
che è generato per ogni paragrafo di questo ambiente.
\family typewriter
List_Environment
\family default
è lo stesso di
\family typewriter
Item_Environment
\family default
, eccetto
\family typewriter
LabelWidthString
\family default
che è passato come argomento per l'ambiente.
\family typewriter
LabelWidthString
\family default
può essere definito nel menu
\family sans
\bar under
L
\bar default
ayout\SpecialChar menuseparator
\bar under
P
\bar default
aragraph.
\end_layout
\begin_layout Description
\family typewriter
\series medium
InTitle
\family default
\series default
\family typewriter
[1, 0]
\family default
Se il valore è 1, segna il layout come necessitante di un
\family typewriter
\backslash
maketitle
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LatexName
\family default
\series default
Il nome del corrispondente materiale \SpecialChar LaTeX
.
Può essere sia di ambiente che di comando.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LatexParam
\family default
\series default
Il parametro opzionale per il relativo materiale
\family typewriter
LatexName
\family default
.
Questo parametro non può essere cambiato da \SpecialChar LyX
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Margin
\family default
\series default
[
\family typewriter
\emph on
Static
\emph default
, Manual, Dynamic, First_Dynamic, Right_Address_Box
\family default
]
\begin_inset Newline newline
\end_inset
Il tipo di margine che il layout ha sul lato sinistro.
\family typewriter
Static
\family default
significa un margine statico.
\family typewriter
Manual
\family default
significa che il margine sinistro dipende dalla stringa immessa nel menu
\family sans
\bar under
L
\bar default
ayout\SpecialChar menuseparator
\bar under
P
\bar default
aragraph.
\family default
Questo è usato per intestazione enumerate automatiche.
\family typewriter
Dynamic
\family default
significa che il margine dipende dalla grandezza dell'etichetta.
E' ovvio che l'intestazione
\begin_inset Quotes eld
\end_inset
5.4.3.2.1 Very long headline
\begin_inset Quotes erd
\end_inset
deve avere un margine sinistro più ampio (ampio quanto
\begin_inset Quotes eld
\end_inset
5.4.3.2.1
\begin_inset Quotes erd
\end_inset
) di
\begin_inset Quotes eld
\end_inset
3.2 Very long headline
\begin_inset Quotes erd
\end_inset
, anche se altri word processors non sono in grado di farlo.
\family typewriter
First_Dynamic
\family default
è s simile, ma solo la prima riga del paragrafo è dinamica, mentre le altre
sono statiche.
usato ad esempio per le descrizioni.
\family typewriter
Right_Address_Box
\family default
significa che il margine è scelto in modo tale che la riga più lunga di
questo paragrafo arriva fino al margine destro.
Usato per scrivere indirizzi in alto a destra della pagina.
\end_layout
\begin_layout Description
\family typewriter
\series medium
NextNoIndent
\family default
\series default
[
\family typewriter
1,
\family default
\family typewriter
\emph on
0
\family default
\emph default
] Se si vuole consentire al paragrafo successivo di staccare dal margine
la prima riga, 0 consente di farlo, 1 no.
\end_layout
\begin_layout Description
\family typewriter
\series medium
ParIndent
\family default
\series default
[
\family typewriter
string=""
\family default
] Il capoverso della prima linea del paragrafo.
L'argomento è passato come una stringa.
Ad esempio
\family typewriter
"MM"
\family default
significa che il paragrafo rientra con una larghezza di
\family typewriter
"MM"
\family default
nel font normale.
Potete anche avere una larghezza negativa premettendo il valore
\family typewriter
"-"
\family default
.
Questo al fine di ottenere lo stesso effetto per ogni font.
Il
\family typewriter
Parindent
\family default
sarà fisso per un certo layout.
L'eccezione è lo Standard layout, dato che il rientro del paragrafo di
layout standard poò essere proibito con
\family typewriter
NextNoIndent
\family default
.
Inoltre, i paragrafi con Standard layout, usano il
\family typewriter
Parindent
\family default
dell'ambiente, non il loro nativo.
ad esempio, i paragrafi Standard dentro una numerazione non hanno il rientro.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Parskip
\family default
\series default
[
\family typewriter
float=0
\family default
] \SpecialChar LyX
permette di scegliere sia il
\begin_inset Quotes eld
\end_inset
rientra
\begin_inset Quotes erd
\end_inset
che il
\begin_inset Quotes eld
\end_inset
salta
\begin_inset Quotes erd
\end_inset
per redigere un documento.
Quando si sceglie
\begin_inset Quotes eld
\end_inset
rientra
\begin_inset Quotes erd
\end_inset
, questo valore è completamente ignorato.
Quando si sceglie
\begin_inset Quotes eld
\end_inset
salta
\begin_inset Quotes erd
\end_inset
l'indentazione di un layout
\begin_inset Quotes eld
\end_inset
Paragrafo
\begin_inset Quotes erd
\end_inset
in stile \SpecialChar LaTeX
è ignorato e tutti i paragrafi sono addizionalmente separati
da questo argomento parskip.
Lo spazio è verticale è calcolato con
\family typewriter
value*DefaultHeight()
\family default
dove
\family typewriter
DefaultHeight()
\family default
è l'altezza di una riga con il font normale.
In questo modo l'aspetto rimane lo stesso indipendentemente dai fonts.
\end_layout
\begin_layout Description
\family typewriter
\series medium
TopSep
\family default
\series default
[
\family typewriter
float=0
\family default
] Lo spazio vericale con cui il primo di una catena di paragrafi con questo
layout è separato dal precedente.
Se il paragrafo precedente ha un altro layout, le separazioni non sono
semplicemente ma è preso il massimo.
\end_layout
\begin_layout Description
\family typewriter
\series medium
BottomSep
\family default
\series default
[
\family typewriter
float=0
\family default
] La stessa cosa di
\family typewriter
TopSep
\family default
per l'ultimo paragrafo.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Parsep
\family default
\series default
[
\family typewriter
float=0
\family default
] Lo spazio verticale tra due paragrafi di questo layout.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Itemsep
\family default
\series default
[
\family typewriter
float=0
\family default
] Questo è uno spazio extra tra i paragrafi di un ambiente di layout.
Se immettete altri layouts nello stesso ambiente, ognuno sarà separato
con
\family typewriter
Parsep
\family default
.
Ma la totalità degli oggetti presenti nell'ambiente sono separati addizionalmen
te con
\family typewriter
Itemsep
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LeftMargin
\family default
\series default
[
\family typewriter
string=""
\family default
] Se immettete layouts nell'ambiente, i margini sinistri non sono semplicemente
aggiunti, ma aggiunti con un fattore
\begin_inset Formula $\frac{4}{depth+4}$
\end_inset
.
Notate che questo parametro è usato anche quando il bordo è definito come
\family typewriter
Manual
\family default
o
\family typewriter
Dynamic
\family default
.
Poi è aggiunto al bordo manuale o dinamico.
Questa stringa ha lo stesso significato di
\family typewriter
ParIndent
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
RightMargin
\family default
\series default
[
\family typewriter
string=""
\family default
] Simile a
\family typewriter
LeftMargin
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Labeltype
\family default
\series default
[
\family typewriter
\emph on
No_Label
\emph default
, Manual, Static, Top_Environment,
\begin_inset Newline newline
\end_inset
Centered_Top_Environment, Sensitive, Counter_Chapter,
\begin_inset Newline newline
\end_inset
Counter_Section, Counter_Subsection, Counter_Subsubsection,
\begin_inset Newline newline
\end_inset
Counter_Paragraph, Counter_Subparagraph, Counter_EnumI,
\family default
\family typewriter
\begin_inset Newline newline
\end_inset
Counter_EnumII, Counter_EnumIII, Counter_EnumIV
\family default
]
\begin_inset Newline newline
\end_inset
\family typewriter
Manual
\family default
significa che l'etichetta è la primissima parola (lettera).
\family typewriter
Static
\family default
viene definito nel layout (vedere
\family typewriter
LabelString
\family default
).
\family typewriter
Top_Environment
\family default
e
\family typewriter
Centered_Top_Environment
\family default
sono casi speciali di
\family typewriter
Static
\family default
.
L'etichetta sarà stampata sopra il paragrafo, ma solo in cima all'ambiente
o in cima ad una catena di paragrafi con questo layout.
L'uso è ad esempio il layout
\family sans
Abstract
\family default
o il
\family sans
Bibliography
\family default
.
E' questo anche il caso di etichette
\family typewriter
Manual
\family default
con tipo \SpecialChar LaTeX
\family typewriter
Enviroment
\family default
, per creare layouts per teoremi messi giù correttamente.
\family typewriter
Sensitive
\family default
è un caso speciale per le etichette di testo
\begin_inset Quotes eld
\end_inset
Figura
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
Tabella
\begin_inset Quotes erd
\end_inset
.
\family typewriter
Sensitive
\family default
significa che la stringa dell'etichetta dipende dal tipo di oggetto flottante.
I tipi di etichetta
\family typewriter
Counter_xxx
\family default
sdivrebbero essere abbastanza chiare.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Labelsep
\family default
\series default
[
\family typewriter
string=""
\family default
] Lo spazio orizzontale tra l'etichetta e il corpo del testo.
Usato solo per etichette che non sono sopra il corpo del testo.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LabelBottomsep
\family default
\series default
[float=0] Lo spazio verticale tra l'etichetta e il corpo del testo.
Usato solo per etichette che sono sopra il corpo del testo (
\family typewriter
Top_Environment
\family default
,
\family typewriter
Centered_Top_Environment
\family default
).
\end_layout
\begin_layout Description
\family typewriter
\series medium
LabelString
\family default
\series default
[
\family typewriter
string=""
\family default
] La stringa usata per un'etichetta del tipo
\family typewriter
Static
\family default
.
Quando il bordo è manuale questa stringa è anche usata come suggerimento
per
\family typewriter
LabelWidthString
\family default
che può essere settato nel menu
\family sans
\bar under
L
\bar default
ayout
\family typewriter
\SpecialChar menuseparator
\family sans
\bar under
P
\bar default
aragraph
\family default
.
Quando il tipo label è Counter_xxx, questa stringa viene preposta al contatore.
\end_layout
\begin_layout Description
\series medium
Align
\series default
[
\emph on
block
\emph default
, left, right, center] Allineamento del paragrafo.
\end_layout
\begin_layout Description
\family typewriter
\series medium
AlignPossible
\family default
\series default
[
\family typewriter
\emph on
block
\emph default
, left, right, center
\family default
] Sono
\emph on
liste
\emph default
, separate da una virgola, di possibili allineamenti.
Alcuni stili \SpecialChar LaTeX
proibiscono certi allineamenti, dato che questi non hanno
senso.
Ad esempio una numerazione allineata a destra o centrata non è possibile.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Fill_Top
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
,1
\family default
] Con questo parametro il valore
\family sans
Fill
\family default
della lista
\begin_inset Quotes eld
\end_inset
Spazi verticali sopra
\begin_inset Quotes erd
\end_inset
del menu
\family sans
\bar under
L
\bar default
ayout\SpecialChar softhyphen
\family default
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
\emph on
Nota di Jean-Marc:
\emph default
Non sono sicuro che questo settaggio sia molto usato, e sarà probabilmente
rimosso nelle versioni successive.
\end_layout
\end_inset
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Fill_Bottom
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
,1
\family default
] Simile a
\family typewriter
Fill_Top
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
NeedProtect
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
,1
\family default
] Qualora comandi fragili in questo layout necessitassero di essere protetti
\family typewriter
\backslash
protetti
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Newline
\family default
\series default
[
\family typewriter
0,
\family default
\family typewriter
\emph on
1
\family default
\emph default
] Se le nuove linee sono tradotte in nuove linee \SpecialChar LaTeX
(
\family typewriter
\backslash
\backslash
\family default
) o no.
La traduzione può essere evitata per facilitare l'editing di \SpecialChar LaTeX
all'interno
di \SpecialChar LyX
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
FreeSpacing
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Di solito \SpecialChar LyX
non vi permette di inserire più di uno spazio tra le parole,
dato che lo spazio è considerato come una separazione tra due parole, non
un carattere o un simbolo a se stante.
Questa è una cosa molto simpatica ma a volte annoiante, ad esempio quando
si scrive il codice di un programma o codice \SpecialChar LaTeX
.
Per queste ragioni,
\family typewriter
FreeSpacing
\family default
può essere abilitato.
Notate che \SpecialChar LyX
creerà bianchi protetti per i bianchi addizionali se in un
modo diverso dal modo-\SpecialChar LaTeX
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
KeepEmpty
\family default
\series default
[
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Di solito \SpecialChar LyX
non vi consente di lasciare un paragrafo vuoto, dato che porterebbe
ad un output \SpecialChar LaTeX
vuoto.
Ci sono alcuni casi in cui però questo è auspicabile: in un template di
lettera i campi richiesti possono essere rappresentati da spazi vuoti,
così da agevolare le persone; in alcune classi speciali, un layout potrebbe
essere usato come un tipo di interruzione, che non contiene testo, ecc.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Spacing
\family default
\series default
[
\family typewriter
\emph on
single
\emph default
, onehalf, double, other
\family default
\emph on
value
\emph default
] Questo definisce la spaziatura di default del layout.
Gli argomenti
\family typewriter
single
\family default
,
\family typewriter
onehalf
\family default
e
\family typewriter
double
\family default
corrispondono rispettivamentead un valore multiplo di 1, 1.25 e 1.667.
Se specificate l'argomento
\family typewriter
other
\family default
, dovrete poi fornire un argomento numerico che sarà l'attuale moltiplicatore.
Notate che, contrariamente agli altri parametri,
\family typewriter
Spacing
\family default
implica la generazione di uno specifico codice \SpecialChar LaTeX
, usando il pacchetto
\family typewriter
setspace.sty
\family default
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Font
\family default
\series default
Il font usato
\emph on
sia
\emph default
per il corpo del testo
\emph on
che
\emph default
per l'etichetta.
Vedere la sezione
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:fonts"
\end_inset
.Notare che definire questo font automaticamente definisce
\family typewriter
LabelFont
\family default
allo stesso valore.
\end_layout
\begin_layout Description
\family typewriter
\series medium
TextFont
\family default
\series default
Il font usato per il corpo del testo.
Vedere la sezione
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:fonts"
\end_inset
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
LabelFont
\family default
\series default
Il font usato per le etichette.
Vedere la sezione
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:fonts"
\end_inset
.
\end_layout
\begin_layout Description
\family typewriter
\series medium
Preamble\SpecialChar ldots
EndPreamble
\family default
\series default
Un set di macro definizione che saranno emesse all'inizio dei files \SpecialChar LaTeX
quando
il layout è usato.
Usatelo per definire le macro di cui si hanno bisogno per questo particolare
layout.
\end_layout
\begin_layout Standard
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
end{sloppypar}
\end_layout
\end_inset
\end_layout
\begin_layout Subsection
Descrizione dei Font
\end_layout
\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
name "sec:fonts"
\end_inset
Una descrizione di un font appare così:
\end_layout
\begin_layout LyX-Code
Font
\family roman
\emph on
or
\family default
\emph default
LabelFont
\end_layout
\begin_layout LyX-Code
\end_layout
\begin_layout LyX-Code
EndFont
\end_layout
\begin_layout Standard
e i seguenti comandi sono disponibili:
\end_layout
\begin_layout Description
\family typewriter
\series medium
Family
\family default
\series default
[
\family typewriter
\emph on
Roman
\emph default
, Sans, Typewriter
\family default
]
\end_layout
\begin_layout Description
\family typewriter
\series medium
Series
\family default
\series default
[
\family typewriter
\emph on
Medium
\emph default
, Bold
\family default
]
\end_layout
\begin_layout Description
\family typewriter
\series medium
Shape
\family default
\series default
[
\family typewriter
\emph on
Up
\emph default
, Italic, SmallCaps
\family default
]
\end_layout
\begin_layout Description
\family typewriter
\series medium
Size
\family default
\series default
[
\family typewriter
tiny, small,
\family default
\family typewriter
\emph on
normal
\emph default
, large, larger, largest, huge, giant
\family default
]
\end_layout
\begin_layout Description
\family typewriter
\series medium
Color
\family default
\series default
\family typewriter
\series bold
[
\series default
\emph on
none
\emph default
, black, white, red, green, blue, cyan, magenta, yellow
\series bold
]
\end_layout
\begin_layout Description
\family typewriter
\series medium
Latex
\family default
\series default
[
\family typewriter
\emph on
no_latex
\emph default
, latex
\family default
]
\family typewriter
no_latex
\family default
significa che \SpecialChar LyX
tradurrà tutto in \SpecialChar LaTeX
.
\family typewriter
Latex
\family default
significa una stampata rossa e nessuna traduzione.
\end_layout
\begin_layout Section
Creare Templates
\begin_inset CommandInset label
LatexCommand label
name "sec:templates"
\end_inset
\end_layout
\begin_layout Standard
I templates vengono creati come normali documenti.
L'unica differenza è che i documenti normali contengono tutti i possibili
settaggi, inclusi schemi di font e dimensioni della carta.
Di solito l'utente non vuole che il template sovrascriva il suo default,
per questo motivo il progettatore di template dovrebbe rimuovere i corrisponden
ti comandi come
\family typewriter
\backslash
fontscheme
\family default
or
\family typewriter
\backslash
papersize
\family default
dal file di template di \SpecialChar LyX
.
Questo si può fare con un qualsiasi editor di testo come
\family typewriter
vi
\family default
o
\family typewriter
xedit
\family default
.
\end_layout
\begin_layout Standard
Mettete il template editato che avete creato in
\family typewriter
$UserDir/templates/
\family default
, copiate quello che usate dalla directory globale dei template in
\family typewriter
$\SpecialChar LyX
Dir/templates/
\family default
nello stesso posto, e ridefinite la directory dei template in
\family typewriter
lyxrc
\family default
usando il comando
\family typewriter
\backslash
template_path
\family default
.
\end_layout
\begin_layout Chapter
Un Tutorial sulla Stampante
\end_layout
\begin_layout Section
Introduzione
\end_layout
\begin_layout Standard
Questo capitolo descrive come sia possibile fare il setup di una stampante
sotto Unix, in modo da poterla usare in \SpecialChar LyX
.
Se avete un sistema Linux, e avete bisogno di settare la vostra stampante,
potete anche leggere il file
\family typewriter
Printing-HOWTO
\family default
[spesso nella directory
\family typewriter
/usr/doc/FAQ/HOWTO/
\family default
o
\family typewriter
/usr/doc/HOWTO/
\family default
a seconda del sistema].
Inoltre dovrete installare il pacchetto Ghostscript dal vostro CD-ROM,
se non lo avete ancora o mai fatto.
\end_layout
\begin_layout Standard
Alcune distribuzioni Linux attualmente hanno i cosiddetti
\begin_inset Quotes eld
\end_inset
filtri magici
\begin_inset Quotes erd
\end_inset
che settano automaticamente il vostro sistema e lo rendono pronto all'uso.
Potete usare questi strumenti in alternativa o in aggiunta a quello che
andremo a descrivere, anche se i risultati con questi strumenti saranno
molto inferiori rispetto alle rispettive potenzialità.
Se la vostra distribuzione ha un tool di configurazione anche in fase di
installazione, potete certamente usarlo, ma dovrete comunque leggervi il
\family typewriter
Printing-HOWTO
\family default
quando vorrete personalizzare il setup.
\end_layout
\begin_layout Standard
Così, se vi sentite avventurosi, o non avete altra scelta, continuate a
leggere!
\end_layout
\begin_layout Section
Il file
\family typewriter
/etc/printcap
\end_layout
\begin_layout Subsection
Descrizione
\end_layout
\begin_layout Standard
Il file
\family typewriter
/etc/printcap
\family default
è quello che permette di comunicare a Linux i dati della vostra stampante.
Ogni entrata definisce una stampante, le da un nome con cui gli utenti
possono chiamarla, e dice a Linux come gestire il relativo output.
Potete ovviamente avere più
\begin_inset Quotes eld
\end_inset
stampanti
\begin_inset Quotes erd
\end_inset
nel vostro sistema anche se gli utenti accedono ad una stessa stampante
fisica, però con differenti setup o funzioni abilitate.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Nota di
\noun on
John Weiss
\noun default
: Io ho una Epson Stylus Color IIs.
Quando c'è bisogno di cambiare le testine per usare il colore sulla Stylus
IIs, faccio un setup per una stampante separata, che chiamo
\family typewriter
color
\family default
.
Ho anche creato una stampante
\family typewriter
draft
\family default
che usa una risoluzione di stampa minore e meno caratteristiche di stampa.
Quindi potete intuire la funzionalità di printcap.
\end_layout
\end_inset
Naturalmente, avrete bisogno di un'entrata printcap per ogni stampante
fisica che avete.
\end_layout
\begin_layout Standard
Ecco un esempio
\family typewriter
/etc/printcap
\family default
:
\end_layout
\begin_layout LyX-Code
lp|Text on an Epson:
\backslash
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/lp:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/lp/errs:
\backslash
\end_layout
\begin_layout LyX-Code
:mx#0:
\backslash
\end_layout
\begin_layout LyX-Code
:sh:
\backslash
\end_layout
\begin_layout LyX-Code
:sf:
\begin_inset Newline newline
\end_inset
\end_layout
\begin_layout LyX-Code
draft|Postscript on an Epson Stylus Color IIs, 180dpi:
\backslash
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/draft:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/draft/errs:
\backslash
\end_layout
\begin_layout LyX-Code
:if=/var/spool/lpd/draft/draft.filter:
\backslash
\end_layout
\begin_layout LyX-Code
:mx#0:
\backslash
\end_layout
\begin_layout LyX-Code
:sh:
\backslash
\end_layout
\begin_layout LyX-Code
:sf:
\begin_inset Newline newline
\end_inset
\end_layout
\begin_layout LyX-Code
ps|Postscript on an Epson Stylus Color IIs, 360dpi:
\backslash
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/ps:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/ps/errs:
\backslash
\end_layout
\begin_layout LyX-Code
:if=/var/spool/lpd/ps/ps.filter:
\backslash
\end_layout
\begin_layout LyX-Code
:mx#0:
\backslash
\end_layout
\begin_layout LyX-Code
:sh:
\backslash
\end_layout
\begin_layout LyX-Code
:sf:
\end_layout
\begin_layout Standard
Prima di avventurarci nella spiegazione di questi geroglifici, abbiamo un
messaggio importante:
\end_layout
\begin_layout Standard
\begin_inset VSpace 0.51cm
\end_inset
\end_layout
\begin_layout Standard
\align center
ATTENZIONE! ATTENZIONE! ATTENZIONE!
\end_layout
\begin_layout Standard
\align center
Usate solo una linea tra le entrate!!!
\end_layout
\begin_layout Standard
\align center
Assicuratevi che la linea fra le entrate sia COMPLETAMENTE BIANCA!!!
\end_layout
\begin_layout Standard
\begin_inset VSpace 0.51cm
\end_inset
\end_layout
\begin_layout Standard
Anche se lasciate uno spazio bianco tra le entrate, possono accadere cose
strane, ed il sistema non interpreterà correttamente il file
\family typewriter
/etc/printcap
\family default
.
\end_layout
\begin_layout Standard
Date uno sguardo ad una delle entrate dell'esempio precedente.
Ogni parte dell'entrata è seguita da un carattere
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
.
Il carattere
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
alla fine di ogni linea dice a Linux che l'entrata continua alla riga successiv
a.
Non mettete nulla dopo il
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
, nemmeno uno spazio.
Il
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
dovrebbe seguire il
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
dell'ultima parte dell'entrata sulla linea che avete interrotto.
\end_layout
\begin_layout Standard
Se scegliete di interrompere un'entrata di
\family typewriter
printcap
\family default
in linee multiple, assicuratevi di mettere un
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
all'inizio del
\emph on
testo
\emph default
della nuova linea, dopo ogni spazio.
Ad esempio, potremmo aver scritto la prima entrata dell'esempio precedente
come:
\end_layout
\begin_layout LyX-Code
lp|Text:lp=/dev/lp1:sd=/var/spool/lpd/lp:lf=/var/spool/lpd/lp/errs:
\end_layout
\begin_layout Standard
Notate che c'è un solo
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
tra ognuna delle parti dell'entrata.
Se volete dividere questa entrata in due linee:
\end_layout
\begin_layout LyX-Code
lp|Text:lp=/dev/lp1:sd=/var/spool/lpd/lp:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/lp/errs:
\end_layout
\begin_layout Standard
Abbiamo interrotto la linea al punto
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
aggiungendo un
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
, e iniziando la nuova linea che degli spazi e poi un
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
prima di continuare.
E' uso comune quello di far rientrare la linea successiva di un pochettino
in questi casi.
\end_layout
\begin_layout Standard
Andremo ora a spiegare ogni parte di un'entrata di
\family typewriter
/etc/printcap
\family default
.
Notate che ci sono altre opzioni che potete aggiungere ad un'entrata.
Noi ci occuperemo soltanto delle quattro basi quì, e vi preghiamo di riferirvi
alle man page su
\family typewriter
printcap
\family default
per le informazioni addizionali.
\end_layout
\begin_layout Subsection
Il Nome della Stampante
\end_layout
\begin_layout Standard
La prima linea di un'entrata di
\family typewriter
printcap
\family default
è il nome della stampante.
Contiene il nome della stampante, seguito da un carattere
\begin_inset Quotes eld
\end_inset
\family typewriter
|
\family default
\begin_inset Quotes erd
\end_inset
, seguito da un testo che descrive la stampante, e infine, naturalmente,
il carattere
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
.
Ad esempio:
\end_layout
\begin_layout LyX-Code
draft|OurPrinter in Draft Mode:
\backslash
\end_layout
\begin_layout Standard
è una stampante chiamata
\begin_inset Quotes eld
\end_inset
\family typewriter
draft
\family default
\begin_inset Quotes erd
\end_inset
con la descrizione
\begin_inset Quotes eld
\end_inset
Nostra stampante in modalità bozza
\begin_inset Quotes erd
\end_inset
[Notate che l'
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
alla fine della linea, indica che continueremo l'entrata alla riga successiva.]
Il nome
\family typewriter
draft
\family default
è quello che in genere passate a molte stampanti con l'opzione
\family typewriter
-P
\family default
dei comandi.
[Il programma
\family typewriter
lpr
\family default
è come un comando.]
\end_layout
\begin_layout Standard
Di solito si usa chiamare la vostra stampante principale PostScript® come
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
e chiamare la vostra stampante di testo
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Subsection
Il Dispositivo di Stampa
\end_layout
\begin_layout Standard
La prossima parte del nostro esempio di entrate
\family typewriter
printcap
\family default
identifica il dispositivo di stampa.
in tutti gli esempi citati c'è una linea:
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout Standard
[Ancora, notate che
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
alla fine della linea, così some l'inizio con
\begin_inset Quotes eld
\end_inset
\family typewriter
:
\family default
\begin_inset Quotes eld
\end_inset
con relativi spazi di rientro.]
\end_layout
\begin_layout Standard
Il tag
\begin_inset Quotes eld
\end_inset
\family typewriter
lp=
\family default
\begin_inset Quotes erd
\end_inset
porta il nome del dispositivo di stampa.
In questo caso è
\family typewriter
/dev/lp1
\family default
, ovvero la porta parallela.
Ci sono stampanti che che si connettono tramite porta seriale.
se ne avete una, dovrete usare
\family typewriter
/dev/ttyS0
\family default
per la prima porta seriale,
\family typewriter
/dev/ttyS1
\family default
per la successiva e così via.
Se volete aggiungere altri comandi relativi alla stampante nelle entrate
di
\family typewriter
printc
\family default
ap, come il baud rate della stampante, dovete riferirvi alle man pages di
\family typewriter
printcap
\family default
, che possono aiutarvi.
\end_layout
\begin_layout Standard
Molte stampanti, tuttavia, usano la porta parallela.
In aggiunta, la porta stampante sulla
\emph on
maggior parte
\emph default
dei computer PC-compatibli sarà
\family typewriter
/dev/lp1
\family default
.
Se volete sapere perchè, guardatevi questa nota.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Perchè è
\family typewriter
/dev/lp1
\family default
e
\emph on
non
\emph default
\family typewriter
\emph on
/dev/lp0
\family default
\emph default
la prima porta stampantet? Va rilevato che l'indirizzo I/O di ogni porta
parallela è codificato nel kernel di linux.
L'indirizzo
\family typewriter
0x3BC
\family default
è
\family typewriter
/dev/lp0
\family default
; l'indirizzo
\family typewriter
0x378
\family default
è
\family typewriter
/dev/lp1
\family default
; e
\family typewriter
0x278
\family default
è
\family typewriter
/dev/lp2
\family default
.
Dato che molti dei computer PC-compatibli assegna la prima porta parallela
all'indirizzo I/O
\family typewriter
0x378
\family default
di default,
\family typewriter
/dev/lp1
\family default
sarà quindi la porta parallela sulla maggior parte dei sistemi.
\end_layout
\begin_layout Plain Layout
Se avete più di una porta parallela, la situazione cambia.
Inoltre se alterate l'indirizzo I/O della porta per qualsiasi motivo, poi
uno degli altri dispositivi
\family typewriter
lp
\family default
potrebbe puntare sulla porta parallela.
Su alcuni sistemi questo può creare molti problemi.
in alcuni casi potete andare in DOS è controllare quale indirizzo è stato
assegnato alla vostra porta.
Dopodichè potete usare questo indirizzo per stabilire se la porta parallela
è
\family typewriter
/dev/lp0
\family default
,
\family typewriter
/dev/lp1
\family default
, o
\family typewriter
/dev/lp2
\family default
.
\end_layout
\end_inset
Il vostro sistema non sarà differente, tuttavia controllate sempre a cosa
corrisponde la vostra porta parallela.
\end_layout
\begin_layout Subsection
La Directory Spool e il File Log
\end_layout
\begin_layout Standard
Oltre a dare un nome alla vostra stampante e a dire a Linux quale dispositivo
è, avete ancora bisogno di una directory per il print spooling.
la sigla
\begin_inset Quotes eld
\end_inset
\family typewriter
sd=
\family default
\begin_inset Quotes erd
\end_inset
identifica la directory di spool per la stampante.
E' inoltre una buona idea avere un log file per gli eventuali errori.
la sigla
\begin_inset Quotes eld
\end_inset
\family typewriter
lf=
\family default
\begin_inset Quotes erd
\end_inset
lo identifica.
\end_layout
\begin_layout Standard
Molti sistemi mettono tutte le code di stampa nella directory
\family typewriter
/var/spool/lpd
\family default
; alcuni usano solo
\family typewriter
/var/spool
\family default
.
In ogni caso, entrata del printcap tradizionalmente ha la sua propria spool
directory dichiarata dopo il nome della stampante.
Dovrete essere
\begin_inset Quotes eld
\end_inset
root
\begin_inset Quotes erd
\end_inset
e creare queste directory da soli.
Dovrete inoltre cambiare la proprietà di queste directory, cosicchè il
loro gruppo sia il gruppo
\family typewriter
daemon
\family default
.
Potete farlo col comando,
\begin_inset Quotes eld
\end_inset
\family typewriter
chgrp daemon
\family default
\emph on
dirname
\emph default
\begin_inset Quotes erd
\end_inset
, dove
\emph on
dirname
\emph default
è il nome della directory di spool.
\end_layout
\begin_layout Standard
Ad esempio, guardiamo l'entrata per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
nell'esempio.
Contiene le linee:
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/ps:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/ps/errs:
\backslash
\end_layout
\begin_layout Standard
Questo indica che la directory di spool è
\family typewriter
/var/spool/lpd/ps
\family default
e che il log file è
\family typewriter
/var/spool/lpd/ps/errs
\family default
.
Dovete
\begin_inset Quotes eld
\end_inset
creare
\begin_inset Quotes erd
\end_inset
questo file con il comando
\begin_inset Quotes eld
\end_inset
\family typewriter
touch errs
\family default
\begin_inset Quotes erd
\end_inset
nella directory di spool.
\end_layout
\begin_layout Standard
Similmente, l'entrata per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
contiene:
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/lp:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/lp/errs:
\backslash
\end_layout
\begin_layout Standard
Ancora, la spool directory è
\family typewriter
/var/spool/lpd/lp
\family default
e il log file è
\family typewriter
/var/spool/lpd/lp/errs
\family default
.
\end_layout
\begin_layout Subsection
Il Filter File
\end_layout
\begin_layout Standard
A differenza di
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
, che passa semplicemente il testo non formattato alla stampante, le stampanti
\begin_inset Quotes eld
\end_inset
\family typewriter
draft
\family default
\begin_inset Quotes erd
\end_inset
e
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
hanno bisogno di un filtro [ecco perchè c'è una riga addizionale].
La riga
\family typewriter
printcap
\family default
per il programma filtro è
\begin_inset Quotes eld
\end_inset
\family typewriter
if=
\family default
\begin_inset Quotes erd
\end_inset
[sta per
\family typewriter
i
\family default
nput
\family typewriter
f
\family default
ilter, significa l'input dello spool].
\end_layout
\begin_layout Standard
Ci sono generalmente molte righe per i programmi filtro, che permettono
di specificare un filtro differente per diversi scopi.
Potete selezionare i filtri come opzioni a
\family typewriter
lpr
\family default
, ma non ci inoltriamo per questa strada.
\end_layout
\begin_layout Standard
Diamo un'occhiata alle righe per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
:
\end_layout
\begin_layout LyX-Code
:if=/var/spool/lpd/ps/ps.filter:
\backslash
\end_layout
\begin_layout Standard
Il file
\begin_inset Quotes eld
\end_inset
\family typewriter
ps.filter
\family default
\begin_inset Quotes erd
\end_inset
è uno script di shell che risiede nella directory di spool per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
.
Potete anche specificare l'indirizzo e il nome del file del programma;
tuttavia, chiamando un programma con uno script di shell vi permette di
specificare le opzioni dalla riga di comando.
\end_layout
\begin_layout Standard
Tutti i filtri, sia programmi o script di shell, dovrebbero prendere l'input
da
\family typewriter
stdin
\family default
[il flusso di input standard] e mandare il loro output a
\family typewriter
stdout
\family default
[il flusso standard di uotput.the standard output stream].
\end_layout
\begin_layout Subsection
Entrate Addizionali
\end_layout
\begin_layout Standard
Ci sono tre cose addizionali che dovete mettere nel vostro
\family typewriter
printcap
\family default
.
Potete vederle alla fine dei tre esempi, e sono:
\end_layout
\begin_layout LyX-Code
:mx#0:
\backslash
\end_layout
\begin_layout LyX-Code
:sh:
\backslash
\end_layout
\begin_layout LyX-Code
:sf:
\end_layout
\begin_layout Standard
Il
\begin_inset Quotes eld
\end_inset
\family typewriter
mx#0
\family default
\begin_inset Quotes erd
\end_inset
significa
\begin_inset Quotes eld
\end_inset
non limitare la grandezza del file che possiamo stampare.
\begin_inset Quotes erd
\end_inset
Il
\begin_inset Quotes eld
\end_inset
\family typewriter
sf
\family default
\begin_inset Quotes erd
\end_inset
previene che il form-feed sia mandato dopo la fine del documento.
Infine, l'
\begin_inset Quotes eld
\end_inset
\family typewriter
sh
\family default
\begin_inset Quotes erd
\end_inset
previene che l'intestazione sia mandata all'inizio di ogni job.
Probabilmente voi volete sempre aggiungere queste entrate al vostro
\family typewriter
printcap
\family default
.
\end_layout
\begin_layout Section
Creare un Filtro di Stampa
\end_layout
\begin_layout Subsection
Stampare Files PostScript® Usando Ghostscript
\end_layout
\begin_layout Standard
Il modo più semplice per far capire alla vostra stampante il PostScript®
è quello di usare il programma Ghostscript come filtro di stampa.
Ci sono probabilmente altri modi, ma questo è quello più comune.
Se, per qualche ragione non potete o volete usare Ghostscript, dovrete
provvedere da soli [guardatevi
\family typewriter
Printing-HOWTO
\family default
per iniziare].
\end_layout
\begin_layout Standard
La prima cosa che dovete fare è installare Ghostscript.
C'è almeno una versione in ogni distribuzione Linux.
se non c'è la potete ottenereThe first thing you should do is install Ghostscri
pt.
There should be a version in your Linux da uno dall'archivio FTP di Linux
\family typewriter
sunsite.unc.edu
\family default
.
Una volta installato, lanciatelo usando
\end_layout
\begin_layout LyX-Code
gs -h | more
\end_layout
\begin_layout Standard
dalla linea di comando.
Questo farà una lista dei dispositivi di stampa disponibili con relativi
formati.
Quì di seguito riportiamo una lista che vi aiuta a capire meglio a quale
dispositivo Ghostscript corrisponde ogni stampante.
\end_layout
\begin_layout Itemize
Stampanti Apple:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
appledmp Apple dot matrix printers
\end_layout
\begin_layout Description
iwhi Imagewriter in high-res mode
\end_layout
\begin_layout Description
iwlo Imagewriter in low-res mode
\end_layout
\begin_layout Description
iwlq Imagewriter LQ in
\begin_inset Formula $320\times216$
\end_inset
dpi mode
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti Canon:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
bj10e BubbleJet BJ-10e
\end_layout
\begin_layout Description
bj200 BubbleJet BJ-200
\end_layout
\begin_layout Description
bjc600 Color BubbleJet BJC-600, BJC-4000 and BJC-70.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Buona anche per alcune Apple come la StyleWriter 2x00
\end_layout
\end_inset
\end_layout
\begin_layout Description
bjc800 Color BubbleJet BJC-800
\end_layout
\begin_layout Description
lbp8 LBP-II8 laser printer
\end_layout
\begin_layout Description
lips3 LIPS-III laser printer in CaPSL mode
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti DEC:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
la50 LA50
\end_layout
\begin_layout Description
la70 LA70
\end_layout
\begin_layout Description
la70t LA70 with low-res text enhancement
\end_layout
\begin_layout Description
la75 LA75
\end_layout
\begin_layout Description
la75plus LA75 Plus
\end_layout
\begin_layout Description
ln03 LN03
\end_layout
\begin_layout Description
lj250 LJ250 color printer
\end_layout
\begin_layout Description
declj250 Alternate LJ250 driver0
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti Epson:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
ap3250 ActionPrinter AP3250 [ed ogni stampante che usa il linguaggio ESC/P2]
\end_layout
\begin_layout Description
escp2 Tutte le stampantil Epson che usano i comandi ESC/P2 [questo driver
non è più disponibile, usare
\series bold
ap3250
\series default
.]
\end_layout
\begin_layout Description
epson All 9- and 24-pin dot matrix printers [e compatibili]
\end_layout
\begin_layout Description
eps9mid All 9-pin dot matrix printers [e compatibili] in intermediate resolution
\end_layout
\begin_layout Description
eps9hi All 9-pin dot matrix printers [e compatibili] in triple resolution
\end_layout
\begin_layout Description
epsonc LQ-2550 color printer [buono anche per Fujitsu 1200, 2400, e3400]
\end_layout
\begin_layout Description
st800 Stylus 800 inkjet
\end_layout
\begin_layout Description
stcolor the Stylus Color, Stylus Color Pro, Stylus Color II and IIs color
inkjet printers
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti Hewlet Packard [HP]:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
lp2563 2563B line printer
\end_layout
\begin_layout Description
cdeskjet DeskJet 500C with 1 bpp color
\end_layout
\begin_layout Description
cdjcolor DeskJet 500C [and 540C] with 24 bpp color and Floyd-Steinberg dithering
\end_layout
\begin_layout Description
cdjmono DeskJet 500C [and 510C, 520C, 540C], monochrome only.
\end_layout
\begin_layout Description
cdj500 same as
\series bold
cdjcolor
\end_layout
\begin_layout Description
cdj550 DeskJet 550C and 560C
\end_layout
\begin_layout Description
deskjet DeskJet and DeskJet Plus
\end_layout
\begin_layout Description
djet500 DeskJet 500
\end_layout
\begin_layout Description
djet500c Alternate DeskJet 500C driver [does not work with the 550C or the
560C]
\end_layout
\begin_layout Description
dnj650c DesignJet 650C
\end_layout
\begin_layout Description
ljet2p LaserJet IId, LaserJet IIp, and LaserJet III* with TIFF compression
\end_layout
\begin_layout Description
ljet3 LaserJet III* with Delta Row compression
\end_layout
\begin_layout Description
ljet3d LaserJet IIID with duplex capability
\end_layout
\begin_layout Description
ljet4 LaserJet 4 [default res=600dpi]
\end_layout
\begin_layout Description
lj4dith LaserJet 4 with Floyd-Steinberg dithering
\end_layout
\begin_layout Description
ljetplus LaserJet Plus
\end_layout
\begin_layout Description
pj PaintJet XL
\end_layout
\begin_layout Description
pjetxl Alternate PaintJet XL driver
\end_layout
\begin_layout Description
pjxl PaintJet XL color
\end_layout
\begin_layout Description
pjxl300 PaintJet XL300 color [and 1200C]
\end_layout
\begin_layout Description
paintjet Alternate PaintJet color driver
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti Tektronix:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
t4693d2 4693d color printer with 2 bits/RGB component [=6 bpp]
\end_layout
\begin_layout Description
t4693d4 4693d color printer with 4 bits/RGB component [=12 bpp]
\end_layout
\begin_layout Description
t4693d8 4693d color printer with 8 bits/RGB component [=24 bpp]
\end_layout
\begin_layout Description
tek4696 4695 and 4696 inkjet plotters
\end_layout
\end_deeper
\begin_layout Itemize
Stampanti varie:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
cp50 Mitsubishi CP50 color printer
\end_layout
\begin_layout Description
ibmpro IBM 9-pin Proprinter
\end_layout
\begin_layout Description
imagen Imagen ImPress printers
\end_layout
\begin_layout Description
jetp3852 IBM Jetprinter ink-jet color printer (Model #3852)
\end_layout
\begin_layout Description
m8510 C.Itoh M8510 printer
\end_layout
\begin_layout Description
necp6 NEC P6/P6+/P60 printers at 360 dpi
\end_layout
\begin_layout Description
nwp533 Sony Microsystems NWP533 laser printer [Sony only]
\end_layout
\begin_layout Description
oce9050 OCE 9050 printer
\end_layout
\begin_layout Description
oki182 Okidata MicroLine 182
\end_layout
\begin_layout Description
okiibm Okidata MicroLine IBM-compatible printers
\end_layout
\begin_layout Description
r4081 Ricoh 4081 laser printer
\end_layout
\begin_layout Description
sj48 StarJet 48 inkjet printer
\end_layout
\begin_layout Description
sparc SPARCprinter
\end_layout
\begin_layout Description
xes Xerox XES printers (2700, 3700, 4045, etc.)
\end_layout
\end_deeper
\begin_layout Standard
Se il pacchetto Ghostscript che avete nella vostra distribuzione non include
la vostra stampante potete sempre scaricarvi il codice e compilarvelo da
soli.
Se la vostra stampante non è
\emph on
direttamente
\emph default
\emph toggle
supportata da Ghostscript, provate a scegliere una compatibile.
\end_layout
\begin_layout Standard
Notate che alcune stampanti richiedono comandi speciali.
Ad esempio il driver
\family typewriter
stcolor
\family default
richiede che il file
\family typewriter
stcolor.ps
\family default
sia letto prima dell'input file.
Vi conviene leggere la documentazione di Ghostscript per i dettagli.
\end_layout
\begin_layout Standard
Poi, create il filtro.
Suggeriamo di dargli il nome
\begin_inset Quotes eld
\end_inset
\emph on
pname
\family typewriter
\emph default
.filter
\family default
\begin_inset Quotes erd
\end_inset
, dove
\begin_inset Quotes eld
\end_inset
\emph on
pname
\emph default
\begin_inset Quotes erd
\end_inset
è il nome che avete dato alla stampante nel file
\family typewriter
printcap
\family default
.
Suggeriamo inoltre di mettere lo script di filtro nella directory di spool
della stampante.
Il filtro dovrebbe contenere quanto segue:
\end_layout
\begin_layout LyX-Code
#!/bin/sh
\end_layout
\begin_layout LyX-Code
/usr/bin/gs -q -dSAFER -dNOPAUSE -sDEVICE=
\family roman
\emph on
devname
\family default
\emph default
\backslash
\end_layout
\begin_layout LyX-Code
[-r
\family roman
\emph on
ResNum
\family default
\emph default
\family roman
\emph on
ExtraOptions
\family default
\emph default
] -sOutputFile=- [
\family roman
\emph on
precmd
\family default
\emph default
.ps] -
\end_layout
\begin_layout Standard
dove
\emph on
devname
\emph default
è il nome del dispositivo Ghostscript;
\emph on
ResNum
\emph default
è la risoluzione che volete usare;s the resolution you want to use;
\emph on
ExtraOptions
\emph default
indica ogni opzione addizionale passata a Ghostscript; e
\begin_inset Quotes eld
\end_inset
\emph on
precmd
\emph default
.
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
è il nome del file che deve essere letto prima dell'input [come il file
\family typewriter
stcolor.ps
\family default
per il driver
\family typewriter
stcolor
\family default
].
La
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
spezza il comando in linee multiple.
\end_layout
\begin_layout Standard
Notate che gli esempi fatti assumono che
\family typewriter
gs
\family default
sia nella directory
\family typewriter
/usr/bin
\family default
.
Il vostro sistema potrebbe avere una configurazione diversa.
\end_layout
\begin_layout Standard
Differenti drivers Ghostscript trattano l'argomento
\begin_inset Quotes eld
\end_inset
\family typewriter
-r
\family default
\begin_inset Quotes erd
\end_inset
differentemente.
Alcuni cercano un numero singolo, ad esempio,
\begin_inset Quotes eld
\end_inset
\family typewriter
-r600
\family default
\begin_inset Quotes erd
\end_inset
.
Altri vogliono risoluzioni DPI separate per le direzioni x e y, es.
\begin_inset Quotes eld
\end_inset
\family typewriter
-r360x360
\family default
\begin_inset Quotes erd
\end_inset
.
Il driver della stampante può avere altre opzioni, quindi è meglio consultare
la documentazione di Ghostscript per maggiori informazioni.
\end_layout
\begin_layout Standard
Dopo che avete creato il printer filter, usate
\begin_inset Quotes eld
\end_inset
\family typewriter
chmod a+x
\family default
\begin_inset Quotes erd
\end_inset
sullo script file per renderlo eseguibile.
[dovete essere root per farlo].
\end_layout
\begin_layout Standard
Ecco un esempio print file Ghostscript, usato da
\noun on
John Weiss
\noun default
per la sua Epson Stylus Color IIs:
\end_layout
\begin_layout LyX-Code
#!/bin/sh
\end_layout
\begin_layout LyX-Code
/usr/bin/gs -q -dSAFER -sDEVICE=stcolor
\backslash
\end_layout
\begin_layout LyX-Code
-r360x360 -sDithering=fsmono
\backslash
\end_layout
\begin_layout LyX-Code
-dNOPAUSE -dnoWeave
\backslash
\end_layout
\begin_layout LyX-Code
-sOutputFile=- stcolor.ps -
\end_layout
\begin_layout Standard
Questo filtro genera un output monocromatico a 360dpi su una Epson Stylus
Color IIs.
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Nota da
\noun on
John Weiss
\noun default
: Questa è la mia stampante ps.
Io uso un filtro simile sulla stampante
\family typewriter
draft
\family default
, che ha l'opzione
\family typewriter
-r180x180
\family default
invece di quello che avete visto.
E per la mia stampante
\family typewriter
color
\family default
, uso un valore differente dell'opzione
\family typewriter
-sDithering
\family default
.
\end_layout
\end_inset
\end_layout
\begin_layout Subsection
Se Già avete una Stampante PostScript®\SpecialChar ldots
\end_layout
\begin_layout Standard
Molte stampanti laser moderne oggi hanno il supporto per PostScript®.
Su alcune stampanti laser, PostScript® è attualmente il linguaggio nativo
della stampante.
Se avete una stampante, non avete bisogno del filtro e potete passare un
file PostScript® direttamente alla stampante.
Di contro, se volete stampare un file di testo, avrete comunque bisogno
di formattarlo in qualche modo in PostScript®.
\end_layout
\begin_layout Standard
Siamo a conoscenza di tre programmi che traducono il testo ASCII in PostScript®:
\family typewriter
nenscript
\family default
,
\family typewriter
a2ps
\family default
, e
\family typewriter
mpage
\family default
.
\family typewriter
mpage
\family default
possono anche stampare pagine multiple su un singolo foglio di carta.
Dovete quindi creare uno script di filtro usando uno di questi programmi
per la stampante
\family typewriter
lp
\family default
.
[La stampante
\family typewriter
lp
\family default
è tradizionalmente il nome della stampante che stampa file di testo ASCII.]
Leggete il
\family typewriter
Printing-HOWTO
\family default
per maggiori informazioni.
\end_layout
\begin_layout Section
Il Demone Print Spool,
\family typewriter
lpd
\end_layout
\begin_layout Standard
Il programma che generalmente fa lo spooling e la stampa dei files è
\family typewriter
lpd
\family default
.
E' anche il programma che legge il file
\family typewriter
/etc/printcap
\family default
.
Da qualche parte nei vostri scripts di bootup,
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Alcune macchine tengono i loro scripts di bootup nella directory
\family typewriter
/etc/rc.d
\family default
.
Altri usano
\family typewriter
/etc/init.d
\family default
.
Dovete capire da voi che sistema è usato.
\end_layout
\end_inset
dovete eseguire
\family typewriter
lpd
\family default
per iniziare lo spooling ad ogni avvio del sistema.
Potete anche eseguire
\family typewriter
lpd
\family default
come un job di backgroung dalla linea di comando se loggate come root.
\end_layout
\begin_layout Standard
Una volta che
\family typewriter
lpd
\family default
è in esecuzione sul vostro sistema, potete controllare il suo comportamento
e quello del print spool usando il comando
\family typewriter
lpc
\family default
.
Ancora una volta, dovete essere root per pare ciò.
\end_layout
\begin_layout Section
Assemblando il Tutto
\end_layout
\begin_layout Standard
Concluderemo questo mini-HOWTO con i passaggi che dovete seguire per avere
un setup minimale.
Quando avrete finito, avrete due stampanti, una chiamata
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
per stampare testoASCII, e una seconda chiamata
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
per i files PostScript®.
Il file filtro per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
[incluso sotto] funziona su ogni stampante compatibile Epson [ovvero pressocchè
la totalità delle stampanti dot-matrix attualmente in commercio], usando
la risoluzione di stampa di default.
\end_layout
\begin_layout Enumerate
Entrate come
\begin_inset Quotes eld
\end_inset
root
\begin_inset Quotes erd
\end_inset
o usate
\begin_inset Quotes eld
\end_inset
\family typewriter
su root
\family default
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Enumerate
Eseguite i seguenti comandi:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
\family typewriter
cd /var/spool
\end_layout
\begin_layout Enumerate
\family typewriter
mkdir lpd
\family default
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
[se non esiste già]
\end_layout
\end_deeper
\begin_layout Enumerate
\family typewriter
chgrp lp lpd
\family default
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
[potreste dover usare
\begin_inset Quotes eld
\end_inset
\family typewriter
daemon
\family default
\begin_inset Quotes erd
\end_inset
al posto di
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
]
\end_layout
\end_deeper
\begin_layout Enumerate
\family typewriter
cd lpd
\end_layout
\begin_layout Enumerate
\family typewriter
mkdir lp ps
\family default
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
[fatelo solo se queste directory non esistono già]
\end_layout
\end_deeper
\begin_layout Enumerate
\family typewriter
touch lp/errs ps/errs
\end_layout
\begin_layout Enumerate
\family typewriter
chgrp daemon lp ps lp/errs ps/errs
\end_layout
\end_deeper
\begin_layout Enumerate
Ora editate il file
\family typewriter
/etc/printcap
\family default
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
Se il file esiste, quindi\SpecialChar ldots
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
\SpecialChar ldots
rinominate la vecchia versione in qualcosa tipo
\begin_inset Quotes eld
\end_inset
\family typewriter
/etc/printcap.orig
\family default
\begin_inset Quotes erd
\end_inset
\end_layout
\begin_layout Enumerate
\SpecialChar ldots
oppure, commentate tutto il file mettendo
\begin_inset Quotes eld
\end_inset
\family typewriter
#
\family default
\begin_inset Quotes erd
\end_inset
all'inizio di ogni riga.
\end_layout
\end_deeper
\begin_layout Enumerate
Mettete quanto segue in
\family typewriter
/etc/printcap
\family default
:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout LyX-Code
lp|Text printer:
\backslash
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/lp:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/lp/errs:
\backslash
\end_layout
\begin_layout LyX-Code
:mx#0:sh:sf:
\begin_inset Newline newline
\end_inset
\end_layout
\begin_layout LyX-Code
ps|Postscript printer:
\backslash
\end_layout
\begin_layout LyX-Code
:lp=/dev/lp1:
\backslash
\end_layout
\begin_layout LyX-Code
:sd=/var/spool/lpd/ps:
\backslash
\end_layout
\begin_layout LyX-Code
:lf=/var/spool/lpd/ps/errs:
\backslash
\end_layout
\begin_layout LyX-Code
:if=/var/spool/lpd/ps/ps.filter:
\backslash
\end_layout
\begin_layout LyX-Code
:mx#0:sh:sf:
\end_layout
\end_deeper
\begin_layout Enumerate
ASSICURATEVI CHE:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
le linee bianche tra due entrate non abbiano nulla al loro interno, nemmeno
spazi bianchi.
\end_layout
\begin_layout Enumerate
niente segue il carattere
\begin_inset Quotes eld
\end_inset
\family typewriter
\backslash
\family default
\begin_inset Quotes erd
\end_inset
alla fine di ogni linea.
\end_layout
\end_deeper
\end_deeper
\begin_layout Enumerate
Poi, create lo script filtro per la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
.
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
Mettete quanto segue nel file
\family typewriter
/var/spool/lpd/ps/ps.filter
\family default
:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout LyX-Code
#!/bin/sh
\end_layout
\begin_layout LyX-Code
/usr/bin/gs -q -dSAFER -dNOPAUSE
\backslash
\end_layout
\begin_layout LyX-Code
-sDEVICE=epson -sOutputFile=- -
\end_layout
\begin_layout Standard
[Se non avete una stampantedot-matrix compatibile Epson, rimpiazzate
\begin_inset Quotes eld
\end_inset
\family typewriter
epson
\family default
\begin_inset Quotes erd
\end_inset
con l'appropriato nome del dispositivo Ghostscript.
Inoltre, se il programma
\family typewriter
gs
\family default
non è in
\family typewriter
/usr/bin
\family default
, mettete l'indirizzo corretto.]
\end_layout
\end_deeper
\begin_layout Enumerate
Eseguite questi comandi:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
\family typewriter
chmod a+x /var/spool/lpd/ps/ps.filter
\end_layout
\begin_layout Enumerate
\family typewriter
chgrp daemon /var/spool/lpd/ps/ps.filter
\end_layout
\end_deeper
\end_deeper
\begin_layout Enumerate
Infine, lanciate il demone della stampante,
\family typewriter
lpd
\family default
:
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Enumerate
Se non è già in uso, usate
\begin_inset Quotes eld
\end_inset
\family typewriter
lpd &
\family default
\begin_inset Quotes erd
\end_inset
per avviarlo.
\end_layout
\begin_layout Enumerate
Se è già in esecuzione, eseguite
\begin_inset Quotes eld
\end_inset
\family typewriter
lpc
\family default
\begin_inset Quotes erd
\end_inset
.
Poi, da dentro
\family typewriter
lpc
\family default
, date un
\begin_inset Quotes eld
\end_inset
\family typewriter
restart all
\family default
\begin_inset Quotes erd
\end_inset
e un
\begin_inset Quotes eld
\end_inset
\family typewriter
up all
\family default
\begin_inset Quotes erd
\end_inset
per attivare i nuovi spools di stampa.
[Il comando
\begin_inset Quotes eld
\end_inset
\family typewriter
quit
\family default
\begin_inset Quotes erd
\end_inset
abbandona
\family typewriter
lpc
\family default
].
\end_layout
\begin_layout Enumerate
Assicuratevi di aggiungere il comando appropriato ai vostri scripts di bootup
in modo che
\family typewriter
lpd
\family default
sia eseguito ad ogni avvio del sistema.
\end_layout
\end_deeper
\begin_layout Enumerate
Potete ora uscire da root e testare le vostre nuove stampanti per assicurarvi
che funzionino.
Date il comando
\begin_inset Quotes eld
\end_inset
\family typewriter
lpr -Plp
\family default
\begin_inset Quotes erd
\end_inset
seguito dal nome di un piccolo file di testo ASCIIper verificare che la
stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
lp
\family default
\begin_inset Quotes erd
\end_inset
funzioni.
Poi usate
\begin_inset Quotes eld
\end_inset
\family typewriter
lpr -Pps
\family default
\begin_inset Quotes erd
\end_inset
seguito dal nome di un piccolo file PostScript® per testare la stampante
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Standard
Un avvertimento: quando testate
\begin_inset Quotes eld
\end_inset
\family typewriter
ps
\family default
\begin_inset Quotes erd
\end_inset
, se qualcosa va storto, il sistema potrebbe passare dell'iimondizia alla
stampante.
Se avviene questo, spegnete la stampante ed usate i comandi
\family typewriter
lpq
\family default
e
\family typewriter
lprm
\family default
per killare il print job.
Dopo aver killato il print job, potete riaccendere la stampante.
\end_layout
\begin_layout Standard
Se nessuna di queste stampanti funziona, controllate di nuovo tutto, consultate
le pagine
\family typewriter
man
\family default
per
\family typewriter
printcap
\family default
e
\family typewriter
lpd
\family default
, e leggete il
\family typewriter
Printing-HOWTO
\family default
per aiuto.
\end_layout
\begin_layout Standard
Se tutto funziona, congratulazioni!
\end_layout
\begin_layout Chapter
Il materiale esterno
\end_layout
\begin_layout Section
Background
\end_layout
\begin_layout Standard
Una caratteristica spesso richiesta dagli utenti \SpecialChar LyX
è quella di interfacciare
\SpecialChar LyX
con Xfig, Dia, o altre applicazioni specializzate nella produzioni di
un certo tipo di diagrammi, figure, schemi e simili cose che possono essere
rilevanti per il vostro documento.
Prima in \SpecialChar LyX
era solo possibile includere immagini fisse, statiche, noiose
con l'insieme figure, ma ci sono numerose limitazioni relative a questo
approccio:
\end_layout
\begin_layout Itemize
Se volete cambiare la figura, dovete richiamare manualmente un programma
esterno
\end_layout
\begin_layout Itemize
\SpecialChar LyX
non notifica i cambiamenti ai riferimenti dei files, così quello che è
visualizzato sullo schermo può rapidamente diventare obsoleto, e questo
è aggravato da una media di aggiornamenti dello schermo
\end_layout
\begin_layout Itemize
L'insieme delle figure supporta solo materiale PostScript
\end_layout
\begin_layout Itemize
L'insieme delle figure non fornisce nessun meccanismo per copiare con differenti
formati esportati come DocBook, HTML, o raw Ascii
\end_layout
\begin_layout Standard
L'insieme del materiale esterno prova a risolvere tutti questi problemi
\begin_inset Foot
status collapsed
\begin_layout Plain Layout
Anche se l'insieme delle figure non può risolvere tutti i problemi, è ancora
valutabile perchè fornisce un'anteprima in linea della figura, e supporta
trasformazioni geometriche avanzate con una semplice interfaccia utente.
\end_layout
\end_inset
.
Effettua ciò offrendo un metodo generale per interfacciare \SpecialChar LyX
alle applicazioni
esterne.
Invece di introdurre una lunga lista di insiemi ritagliati per ogni specifica
applicazione, abbiamo scelto di sacrificare la visualizzazione in line
del materiale incluso al fine di fornire uno strumento generale per affrontare
una grande quantità di applicazioni.
Il risultato è l'insieme esterno.
Un insieme esterno presenta se stesso nel documento semplicemente come
un bottone, ma non lasciatevi ingannare.
Quando ci cliccate sopra, apparirà una finestra di dialogo che vi permetterà
di scegliere esattamente quale materiale includere, è più avanti imparerete
che in realtà è un potente meccanismo che può risolvere molti problemi
ed anche di più.
\end_layout
\begin_layout Section
Come funziona?
\end_layout
\begin_layout Standard
L'insieme esterno è basato sul concetto di
\emph on
template
\emph default
.
Un template è una specificazione di come \SpecialChar LyX
dovrebbe interfacciarsi con un
certo tipo di materiale.
In genere \SpecialChar LyX
viene distribuito con una serie di template predefiniti per
figure XFig, diagrammi Dia, varie immagini in formato raster, gnuplot,
ed oltre.
Potete controllare la lista attuale attraverso il comando
\family sans
Insert\SpecialChar menuseparator
Insert external material.
\family default
Inoltre, è possibile adattare i vostri personali template per supportare
uno specifico tipo di materiale.
Più avanti descriveremo più in dettaglio gli elementi coinvolti, e si spera
che possiate creare dei template che poi ci manderete per includerli nelle
successive versioni di \SpecialChar LyX
.
\end_layout
\begin_layout Standard
Un'altra idea di base dell'insieme esterno è di distinguere tra il file
originale che serve come base per il materiale finale e il file prodotto
che è incluso nel vostro documento esportato o stampato.
Per esempio, consideriamo il caso di una figura prodotta con XFig.
L'applicazione XFig lavora su un file originale con estensione
\family typewriter
.fig
\family default
.
All'interno di XFig create e modificate la vostra figura, e quando avete
finito salvate il file
\family typewriter
fig
\family default
.
Quando vorrete includere la figura nel vostro documento, basta richiamare
\family typewriter
transfig
\family default
al fine di creare un file PostScript che può essere prontamente incluso
nel vostro file \SpecialChar LaTeX
.
In questo caso, il file
\family typewriter
.fig
\family default
è il file originale, è il file PostScript è quello prodotto.
\end_layout
\begin_layout Standard
Questa distinzione è importante al fine di effettuare l'aggiornamento del
materiale mentre si è in fase di scrittura del documento.
Inoltre, ci fornisce quella flessibilità che è necessaria per supportare
molteplici formati di export.
Ad esempio, nel caso di un file Ascii, non è esattamente una buona idea
quella di includere la figura come un raw PostScript; dovreste invece preferire
l'includere un riferimento alla figura oppure provare a richiamare qualche
convertitore grafico da Ascii per rendere il risultato finale accettabile.
L'insieme materiale esterno vi permette di farlo, perchè è parametrizzato
su differenti formati di export supportati da \SpecialChar LyX
.
\end_layout
\begin_layout Standard
Oltre a supportare la produzione di differenti prodotti in relazione al
formato esportato, l'insieme esterno supporta una stretta integrazione
con le applicazioni di editing e di visualizzazione.
Nel caso di una figura XFig, potete richiamare xfig sul file originale
con un singolo clic all'interno di \SpecialChar LyX
oltre che avere un'anteprima del file
PostScript prodotto con ghostview sempre con un semplice clic.
Non c'è più bisogno di smanettare con la riga di comando o con il browser
per trovare e manipolare i files originali o quelli prodotti.
In questo modo potrete finalmente utilizzare a pieno molte differenti applicazi
oni che risultano rilevanti nella scrittura di un documento, al fine di
essere maggiormente produttivi.
\end_layout
\begin_layout Standard
Quindi, in definitiva, \SpecialChar LyX
ha informazioni circa un numero di programmi differenti
da usare dietro le quinte per realizzare tutto questo marchingegno.
Questa informazione, infatti, è esattamente ciò che è contenuto nei templates.
Per ogni template, c'è associata una lista di linee di comando usate per
irchiamare le applicazioni, convertire il file originale nel file prodotto
ed altro ancora.
Questo meccanismo permette all'utente avanzato di estendere le capacità
di \SpecialChar LyX
senza smanettare col codice sorgente.
Questo richiede un imponente lavoro per definire tutti i differenti comandi
e flags, ma fortunatamente, il team di \SpecialChar LyX
ha già fatto questo lavoro per
voi!
\end_layout
\begin_layout Standard
Ma prima che gli alberi diventino grattacieli, dobbiamo ammettere che abbiamo
fatto alcuni piccole scorciatoie.
Siccome il set esterno può produrre molti tipi di files prodotti per i
relativi formati di export, ci si potrebbe anche aspettare che sia possibile
vedere l'anteprima di ogni prodotto.
Ma, ancora una voltea, il team di \SpecialChar LyX
ha deciso per una linea che mantenesse
l'interfaccia utente semplice.
Per evitare di mettere un pulsante per ogni formato di file esportato,
si è deciso di introdurre il concetto di formato primario di file ed avere
solo un bottone.
Quando si preme View result nella finestra dell'insieme esterno, verrà
visualizzata un'immagine del file prodotto nel formato di file primario.
E questo è specificato dalla vostra classe di documento.
Per la maggior parte delle classi di documento il formato primario di file
è \SpecialChar LaTeX
, ma per la classe di documento DocBook, il formato di file primario
è DocBook.
Così quando si visualizza il file prodotto, ricordatevi che sarà solo un'antepr
ima di quello che sarà il risultato principale.
Se volete vedere come lavorano gli altri formati, dovete esportarli e fare
l'anteprima manualmente.
\end_layout
\begin_layout Section
La finestra di dialogo Materiale Esterno
\end_layout
\begin_layout Standard
Inserite un insieme esterno dal menu
\family sans
Insert
\family default
.
Quando fate questo, un bottone viene inserito nel vostro documento e viene
mostrata la finestra di dialogo dell'insieme materiale esterno.
Questa finestra vi permette di descrivere esattamente quale materiale deve
essere incluso.
Inoltre, fornisce un accesso alle applicazioni esterne per vedere, editare
e produrre il materiale usato nel file risultante.
\end_layout
\begin_layout Standard
In cima a questa finestra, c'è una lista a cascata dove è possibile scegliere
quale template l'insieme deve usare.
Immediatamente sotto troviamo un'area di testo con una descrizione del
template scelto che dovrebbe aiutarvi ad usarlo.
Più spesso, fornisce oltre ad una descrizione del template anche alcune
indicazioni su come parametrizzarne l'uso.
Ancora più in basso si trova un campo di inserimento di nome di file con
un bottone browse che permette di scegliere quale file deve essere incluso.
Questo campo specifica il file originale.
Siccome il file prodotto è generato automaticamente quando se ne ha bisogno,
non c'è motivo per consentirne l'accesso nell'interfaccia utente.
\end_layout
\begin_layout Standard
In basso alla finestra di dialogo troverete una casella di immissione chiamata
\family sans
parameters
\family default
.
Questo box è generalmente usato per parametrizzare uno specifico template.
L'uso specifico dovrebbe essere indicato e chiarito nella casella di definizion
e e aiuto associata al template, ma in genere permette tipicamente di definire
le variazioni su come il file prodotto dovrebbe essere generato.
\end_layout
\begin_layout Standard
Nella parte destra della finestra ci sono tre bottoni:
\family sans
Edit file
\family default
,
\family sans
View result
\family default
e
\family sans
Update result
\family default
.
Questi rispettivamente permettono di editare il vostro file originale con
l'applicazione di editing opportuna, vedere il file prodotto come incluso
nel formato primario di documento, ed infine forzare un aggiornamento del
materiale risultante nel formato primario.
Normalmente il bottone
\family sans
Update result
\family default
sarà disabilitato perchè molti template sono configurati per aggiornare
automaticamente il file prodotto quando ce ne è bisogno.
In questi casi non c'è bisogno di forzare la produzione di un nuovo file
prodotto.
Tuttavia alcuni templates sono configurati per non produrre automaticamente
il prodotto residuale, in quanto il costo di produrre un file prodotto
potrebbe essere così grande da renderne impossibile l'attuazione.
Questi insiemi sono conosciuti come insiemi
\emph on
manuali
\emph default
esterni.
In questi casi potete usare il bottone per forzare la produzione del file
prodotto proprio quando ne avete bisogno, controllando così il lavoro che
viene fatto.
Infatti, è sotto la
\emph on
vostra
\emph default
responsabilità fare questo per mantenere i files prodotti costantemente
aggiornati: prima di stampare, prima di esportare, prima di visualizzare,
ecc.
Forse, in futuro, sarà possibile che \SpecialChar LyX
vi aiuti in questo compito.
Sarebbe infatti simpatico poter usare un comando
\family sans
Edit\SpecialChar menuseparator
Update all external inset
\family default
per aggiornare tutti gli insiemi esterni che usano un template manuale.
Ma vi anticipiamo che potrebbe richiedere molto tempo per l'implementazione.
\end_layout
\begin_layout Standard
In basso alla finestra di dialogo troverete i soliti bottoni
\family sans
OK
\family default
e
\family sans
Cancel
\family default
.
L'unica cosa utile da ricordare circa questi è che ogni cambiamento nel
template, nome del file o parametri sono attualmente applicati quando si
premono i bottoni
\family sans
Edit file
\family default
,
\family sans
View result
\family default
e
\family sans
Update result
\family default
.
Questo implica che dopo aver usato uno di questi, potrete sono annullare
i cambiamenti che sono stati effettuati attraverso quei bottoni premendo
\family sans
cancel
\family default
.
Fortunatamente, potete usare la funzione undo generale in \SpecialChar LyX
per ritornare
allo stato precedente.
\end_layout
\begin_layout Section
Esempi
\end_layout
\begin_layout Standard
In questa sezione, dovremmo includere alcuni esempi circa l'uso dell'insieme
del materiale esterno.
Questi esempi potrebbero includere:
\end_layout
\begin_layout Itemize
Immagini raster esterne
\end_layout
\begin_layout Itemize
figure esterne XFig
\end_layout
\begin_layout Itemize
Diagrammi a scacchi
\end_layout
\begin_layout Itemize
Campioni di suoni
\end_layout
\begin_layout Itemize
Uso dei makefiles
\end_layout
\begin_layout Itemize
Templates \SpecialChar LyX
esterni ricorsivi
\end_layout
\begin_layout Section
Il file di configurazione external template
\end_layout
\begin_layout Standard
E' relativamente semplice aggiungere definizioni di template esterni a \SpecialChar LyX
.
Tuttavia state attenti poichè fare queste cose in maniera approssimativa
\emph on
potrebbe
\emph default
probabilmente creare un buco di sicurezza facilmente sfruttabile.
Così prima di procedere, leggete il successivo capitolo sulla sicurezza.
\end_layout
\begin_layout Standard
Dopo aver detto queste cose, vi incoraggiamo a farci pervenire ogni template
interessante che create.
\end_layout
\begin_layout Standard
I templates sono definiti nel file
\family typewriter
lib/external_template
\family default
.
Forse, prima o poi qualcuno documenterà i contenuti dei templates e la
sintassi usata per definirne di propri.
\end_layout
\begin_layout Section
Il meccanismo di sostituzione
\end_layout
\begin_layout Standard
Quando l'insieme del materiale esterno richiama un programma esterno, è
fatto sulla base di un comando definito nel file di configurazione del
template.
Questi comandi possono contenere varie macro che vengono espanse prima
dell'esecuzione.
L'esecuzione avviene sempre nella directory del documento contenuto.
\end_layout
\begin_layout Standard
Inoltre, ogni volta che viene visualizzato un insieme esterno, il nome sarà
prodotto dal meccanismo di sostituzione.
\end_layout
\begin_layout Standard
Le macro disponibili sono le seguenti:
\end_layout
\begin_layout Description
$$FName Il nome del file specificato nella finestra dell'insieme esterno.
\end_layout
\begin_layout Description
$$Basename Il nome del file senza estensione.
\end_layout
\begin_layout Description
$$Tempname Un nome e un indirizzo completo di un file temporaneo che sarà
automaticamente cancellato quando si chiude il documento contenuto, oppure
quando è cancellato l'insieme esterno.
\end_layout
\begin_layout Description
$$Contents("filename.ext") Questa macro espanderà il contenuto del file col
nome
\family typewriter
filename.ext
\family default
.
\end_layout
\begin_layout Description
$$Sysdir Questa macro espanderà all'indirizzo assoluto della directory di
sistema.
E' tipicamente usato per puntare i vari script di aiuto che sono inseriti
in \SpecialChar LyX
\end_layout
\begin_layout Standard
In aggiunta a questi gli strumenti espanderanno le variabili d'ambiente
generali con una sintassi del tipo
\family typewriter
${PATH}
\family default
.
\end_layout
\begin_layout Section
Discussione sulla sicurezza
\end_layout
\begin_layout Standard
L'insieme del materiale esterno si interfaccia con molti programmi esterni
e lo fa automaticamente, per questo vanno considerate le implicazioni di
sicurezza di questo.
In particolare, siccome avete l'opzione di includere dei vostri nomi dei
file e/o stringhe di parametri, e questi vengono aperti in un comando,
sembrerebbe che sia possibile creare un documento maligno che può eseguire
comandi arbitrari quando un utente vede o stampa un documento.
Questo lo vogliamo definitivamente evitare.
\end_layout
\begin_layout Standard
Tuttavia, dato che i comandi dei programmi esterni sono specificati solo
nel file di configurazione del template, non ci sono problemi di sicurezza
se \SpecialChar LyX
è configurato bene solo con templates sicuri.
E' così perche i programmi esterni sono richiamati con la chiamata di sitema
\family typewriter
execvp
\family default
piuttosto che con
\family typewriter
system
\family default
, quindi non è possibile eseguire comandi arbitrari dal file o dalla sezione
dei parametri attraverso la shell.
\end_layout
\begin_layout Standard
Tutto ciò implica che siete limitati nelle stringhe di comando che potete
usare nei template dei materiali esterni, In particolare canali e redirection
non sono subito disponibili.
Ciò dovrebbe essere così se \SpecialChar LyX
dovesse rimanere sicuro.
Se volete usare alcune funzioni della shell, dovrete scrivere uno script
sicuro per farlo in maniera controllata, dopodochè richimare lo script
dalla linea di comando.
Nella directory
\family typewriter
lib/scripts
\family default
dell'installazione di \SpecialChar LyX
, potrete trovare uno script sicuro preconfezionato
\family typewriter
general_command_wrapper.py
\family default
che supporta la redirection di input e output.
Questo può essere un esempio di come scrivere script di template sicuri.
Per un esempio più avanzato che usa fork e simili, date uno sguardo allo
script di conversione
\family typewriter
pic2ascii.py
\family default
.
\end_layout
\begin_layout Standard
E' possibile progettare un template che interagisce direttamente con la
shell, ma dato che questo potrebbe permettere ad un utente con cattive
intenzioni di eseguire comandi arbitrari scivendo intelligenti filename
e/o parametri, raccomandiamo in generale di usare solo script sicuri che
lavorano solo con le chiamate di sistema
\family typewriter
execvp
\family default
in maniera controllata.
Naturalmente se si lavora in un ambiente controllato potrebbe essere allettante
ritornare ad usare gli script di shell ordinari.
Se lo fate state attenti poichè
\emph on
andrete a creare
\emph default
un buco di sicurezza facilmente sfruttabile nel vostro sistema.
Naturalmente è ragionevole che questi templates non sicuri non verranno
mai inclusi nella distribuzione \SpecialChar LyX
standard, sebbene incoraggiamo le persone
a sottoporre nuovi templates nella tradizione open source.
Ma \SpecialChar LyX
come rilasciato nei canali ufficiali di distribuzioni non avrà mai
tamplates non sicuri.
\end_layout
\begin_layout Standard
L'insieme del materiale esterno fornisce molta potenza, perciò dovete stare
attenti a non introdurre elementi di azzardo sulla sicurezza a questa potenza.
Un lieve errore in una singola riga di un semplice script può creare grandi
problemi di sicurezza.
Così, se non capite completamente questo tema, vi consigliamo di consultare
un professionista della sicurezza oppure il team di sviluppo di \SpecialChar LyX
se avete
domande sulle implicazioni di sicurezza circa uno script.
E, ovviamente, fate questo prima di usare lo script in un ambiente non
sicuro.
\end_layout
\begin_layout Section
Il futuro dell'insieme esterno
\end_layout
\begin_layout Standard
La corrente implementazione dell'insieme esterno èun costrutto potente e
stabile che fornisce un accesso diretto alle parti più interne di \SpecialChar LyX
, ma
come ogni caratteristca di \SpecialChar LyX
, dovrebbe essere sempre considerata un work-in-prog
ress.
Quando e se qualcuno ha il tempo di continuare a lavorarci su, ecco alcune
direzioni generali che possono essere seguite:
\end_layout
\begin_layout Itemize
Supportare l'anteprima in linea in vari formati, piuttosto che il bottone
di testo a cui si è obbligati attualmente.
\end_layout
\begin_layout Itemize
Supportare l'editing in linea attraverso l'uso di OpenParts o altri protocolli
rilevanti.
\end_layout
\begin_layout Itemize
Estendere l'informazioni dinamica per avere campi di parametri opzionali
per i comandi di conversione in tutti i formati di export, ed avere campi
di parametri opzionali per ciò che è prodotto all'interno di tutti i differenti
formati esportati.
Al momento siamo costretti ad usare una sola stringa di parametri che è
multiplata tra queste numerosi applicazioni.
Inoltre un cambiamento come questo ci permetterebbe di liberarci delle
strane restrizioni del formato principale.
\end_layout
\begin_layout Itemize
Estendere l'area di lavoro per fornire delle opzioni di personalizzazione
più intelligenti in aggiunta alla piuttosto semplicistica stringa di parametri.
Con un linguaggio di script adatto, sarà possibile implementare versioni
user friendly di molti insiemi di personalizzazione che supportano una
grande quantità di formati, pacchetti \SpecialChar LaTeX
, editors, ecc.
\end_layout
\end_body
\end_document