- Questo topic ha 45 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 16 anni, 1 mese fa da
emanuelesacco.
-
CreatoreTopic
-
1 Dicembre 2009 alle 12:30 #39841::
Apro questo post per avviare l’iniziativa nata in mailing list (dei GuIt members).
Si tratta di imparare ConTeXt con l’ausilio del forum.Inizio con la prima domanda.
Ho letto nel manuale che ci sono diversi tipi di ambienti generali ma non sono riuscito a capire di cosa si tratta.
Mi riferisco a `\startproject … … \stopproject
\startproduct … … \stopproduct
\startcomponent … … \stopcomponent`Lo chiedo perché ho la sensazione che sia qualcosa di interessante.
Benvenuti nella classe virtuale (scolastica)!!!
-
CreatoreTopic
-
AutoreRisposte
-
-
1 Dicembre 2009 alle 12:52 #39842
-
1 Dicembre 2009 alle 13:10 #39843::
Hey parti giù duro..
Direi di iniziare con
l’hello world di ConTeX,
ed anche un tipo esempio per riempire una mezza pagina\starttext
\input tufte
\stoptext#texexec test.tex
Mo mi preparo un esempio x la tua domanda
Intanto
http://wiki.contextgarden.net/Project_structure
ed un serio esempio
http://context.aanhet.net/svn/contextman/context-reference/en
-
1 Dicembre 2009 alle 19:12 #39844::
Sono entrato nella classe virtuale, stimolato dalla discussione apparlsa in ml,
ma già non ci sto capendo niente … sono tentato ad andarmene subito. Ma siccome sono abbastanza vecchio da aver imparato che non si nasce imparati, non mi vergogno a dichiarare la mia totale ignoranza per questo argomento che pure mi incuriosisce, e dico:Mi potete spiegare in poche parole che cosa è conTeX? rispetto a LaTeX?
grazie
-
2 Dicembre 2009 alle 2:53 #39845::
Sono entrato nella classe virtuale, stimolato dalla discussione apparlsa in ml,
ma già non ci sto capendo nienteSe hai una texlive 2009
oppure una texlive 2008 funzionante e che comprende context
salva in test.tex
`
\starttext
\input tufte
\stoptext
`
ed esegui
`texexec test.tex`
Se tutto funziona hai un pdf
test.pdf
con alcune righe di testo.
Ecco, hai appena fatto un tipico esempio di testo context.… sono tentato ad andarmene subito. Ma siccome sono abbastanza vecchio da aver imparato che non si nasce imparati, non mi vergogno a dichiarare la mia totale ignoranza per questo argomento che pure mi incuriosisce, e dico:
Mi potete spiegare in poche parole che cosa è conTeX? rispetto a LaTeX?
grazieE’ analogo a LaTeX , AMSLaTeX, AMSTeX etc.
Ovvero un insieme di macro coerenti che vengono compilate in un formato fmt.Per essere concreti: il nucleo di LaTeX è in
texlive/2008/texmf-dist/tex/latex/base ,
mentre quello di context è in
texlive/2008/texmf-dist/tex/context/baseLa differenza è che in
texlive/2008/texmf-dist/tex/latex
ci sono circa 1098 packages ausiliari che si caricano con \usepackages a seconda dell’esigenza e sperando che non vi siano conflitti, mentre in context… 0.
Beh, non è proprio così:ci sono poco meno di 20 packages in
texlive/2008/texmf-dist/tex/context
ma
foxet — non usato
pgf — poco usato
bib — si
/third/* — poco usatiIn sostanza ConTeXt è il duale di LaTeX: un formato onnicomprensivo che ha come obiettivo la pubblicazione nel suo insieme.. Mentre il kernel di LaTeX nasce con alcuni tipologie di documenti (eg article, report ,book) ed alcuni ambienti predefiniti, e delega altri packages per le altre cose (cfr memoir ad esempio), ConTeXt fornisce tutti gli elementi per costruire il proprio documento e delega alll’utente la personalizzazione di tali elementi.
In proporzione a LaTeX non esistono praticamente utenti che scrivono stili o packages di ConTeXt: semplicemente è già tutto incluso, basta personalizzare.
In questo modo si è risolta anche la gestione dei conflitti tra pi packages:
semplicemte si eliminano i packages.Un’altro punto di differenza rispetto a LaTeX è il rapporto con MetaPost. La scelta di ConTeXt è una strettissima integrazione con Metapost, perchè si ritiene che questo sia in grado di rispondere a praticamente tutte le esigenze di grafica: è infatti con ConTeXt che è nato il formato Metafun di Metapost.
Ancora, ConTeXt è sviluppato in modo esclusivo da una persona;
tutti gli eventuali miglioramenti devono essere motivati, approvati
ed in ogni caso vengono introdotti solo dallo sviluppatore.Infine ConTeXt è sempre stato orientato più verso il pdf che verso il dvi: il motore di impaginazione preferito è pdftex (quello che una volta era pdfetex)
Prima conclusione: dal punto di vista delle funzionalità,
context = latex + {alcuni altri packages, 4 o 5 in tutto} + metapostOra, è importante capire il momento attuale.
Esistono due rami di ConTeXt: mkii e mkiv (mark II e mark IV, ma io li chiamo Mark two e Mark four).mkii è congelato: nessuna nuova feature, solo bug fix.
Si basa su pdftex e sul programma MetaPost con il formato Metafun, ma è caldamente consigliato pstoedit 3.45 (non credo che sia incluso nella TeXLive). Le due guide di riferimento sono
http://www.pragma-ade.com/general/manuals/cont-eni.pdf
http://www.pragma-ade.com/general/manuals/metafun-p.pdf
Per uitlizzare il formato mkii si usa texexec, ie
`#texexec test.tex`mkiv è l ramo attuale, in “furioso” sviluppo.
Si basa su luatex, il nuovo motore di impaginazione che un giorno (2012?) diverrà pdftex2.0, ma nessuno ne fa una questione di principo: per ora è utile pensare a luatex come una riscrittura amichevole di pdftex, nel senso che alcuni sviluppatori del core di pdftex sono anche sviluppatori di luatex e che si cerca di mantenere una stretta relazione di output.
Per una serie di motivi qui siamo veramente in una situazione opposta al mondo TeX:-
*) luatex ha (quasi tutto) un interprete del linguaggio Lua, oltre che un interprete del TeX ovviamente, ed anche un interprete Metapost al suo interno.
Lua è un linguaggio di programmazione simile al pascal, python, basic. E’ minimale e sembra poca cosa, ma in realtà è estremamente utile, anzi è la scelta ottima. Il fatto di avere Metapost al suo interno elimina l’esigenza di chiamare il programma esterno Metapost, con impressionanti conseguenze sulle performance.
Inoltre il formato del file di ingresso è utf-8, mentre è prevista una completa gestione dei font opentype, type1 e truetype grazie all’inclusione di parte del codice di fontforge.
Luatex infine è scritto in C con target CWEB e dalla versione 0.46 di pochi giorni fa è iniziata la gestione di librerie esterne scritte C tramite loadlib .
Questo è un enorme cambiamento rispetto a pdftex scritto in pascal web e tradotto in C tramite web2c che rendeva molto complicato gestire il codice e la sua integrazione con librerie esterne.*) luatex cambia spesso, e il nuovo invalida il vecchio. Cosi nella tl2009, il luatex presente è già vecchio ed inutile
*) context mkiv è il formato di context che usa luatex, e dato che
luatex cambia spesso, e il nuovo invalida il vecchio, lo stesso vale per mkiv. Per questo è stata creata una distribuzione ad hoc, la “minimals beta”
http://wiki.contextgarden.net/ConTeXt_Minimals
(completamente instabile secondo il punto di vista del mondo TeX)
che, inutile dirlo, serve solo per testare le cose ed è completamente
indipendente dalla TexLive.
A volte accade che la minmals sia sballata per Windows a volte accade che la versione 64bit x Mac sia errata. La ml di context cerca di risolvere questi problemi.
Esiste anche una “minimals current ” che è più stabile .
Non bisogna essere però eccessivi: io ho un progetto che usa una current del novembre 2008, e fino ad oggi funziona bene.
Indicativamente ci sono circa 3~4 current in un anno e 3~4 beta in un mese. Non è inusuale avere più minimals, magari perchè si hanno più progetti, ma in generale si hanno una current, una beta ed una extraMetapost infine è curato dallo stesso sviluppatore di luatex,che si preoccupa di non creare distorsioni tra la il metapost di luatex e Metapost programma ed il tutto è in stretta relazione con lo sviluppatore di context mkiv, che indica volta per volta quale parte di TeX rendere accessibile tramite Lua.
Infine per usare mkiv (supposto una minimals funzionante)
`#context test.tex`
Brevissima “domande frequenti”:
-
*) LaTeX è meglio di ConTeXt?
Si. nel senso: la base di utenti è ampia, è un formato testato a lungo,
esiste una ricca documentazione, è accettato per i documenti scientifici,
è usato da altri programmi per generare i pdf.*) ConTeXt assomiglia a LaTeX minimale ?
No.
E’ progettato meglio e diversamente ed è completamente gestito.
LaTeX è nato per poche cose, ed è cresciuto in modo non gestito.*) LaTeX “fa/è” di più di ConTeXt ?
No*) E’ più facile risolvere un problema con LaTeX o con ConTeXt?
Con ConTeXtOra faccio un esempio, che c’è anche sulla ml pari pari.
Il problema è mettere un nr di pagina “pataccone”Questa è una prima versione context mkii
`
%%test-ctx-mkii-no-ok.tex
\setuppapersize[A4][A3]
\setuplayout[location=middle,marking=on]
%% colors
\setupcolors[state=start]
\definecolor[titleseccolor][r=0.65,b=0.0,g=0.0]
%% pagenumber
\setuppagenumbering[alternative=doublesided,location=]
\startuseMPgraphic{PageNr}
picture ppag ;
ppag := textext(“\ssbf\pagenumber”) ;
ppag := ppag scaled 4;
path p ;
p := unitsquare
xscaled OverlayWidth yscaled OverlayHeight
superellipsed .85 ;
fill p withcolor \MPcolor{titleseccolor} ;
draw p withcolor 1.5\MPcolor{titleseccolor}
withpen pencircle scaled 2pt;
draw ppag
shifted (0.5*OverlayWidth-xpart center ppag ,
0.5*OverlayHeight-ypart center ppag)
withcolor white;
\stopuseMPgraphic
\defineoverlay[PageNr][\useMPgraphic{PageNr}]
\setupbackgrounds[state=repeat]
\setupbackgrounds[footer][rightmargin][background=PageNr]
%%
%%
%%
\showlayout
\starttext
\dorecurse{4}{%
\chapter{Tufte}
\section{A text}
\input tufte}
\stoptext# texutil –purgeall ; export shell_escape=t; texexec test-ctx-mkii-no-ok.tex
`Non è una particolamente efficiente:
per ogni pagina context ricalcola il background MetaPost
PageNr, perchè è legato al numero di pagina.
Per 100 pagine ho chiaramente 100 background differenti.
l’elaborazione diventa notevole.Molto meglio fissare il background una volta per tutte,
e scriverci sopra il numero.`
%%test-ctx-mkii-ok.tex
\setuppapersize[A4][A3]
\setuplayout[location=middle,marking=on]
\showframe
%% colors
\setupcolors[state=start]
\definecolor[titleseccolor][r=0.65,b=0.0,g=0.0]
%% pagenumber
\setuppagenumbering[alternative=doublesided,location=]
\startuniqueMPgraphic{PageNr}
picture ppag ;
path p ;
p := unitsquare
xscaled OverlayWidth yscaled OverlayHeight
superellipsed 0.85 ;
fill p withcolor \MPcolor{titleseccolor} ;
draw p withcolor 1.5\MPcolor{titleseccolor}
withpen pencircle scaled 2pt;
\stopuniqueMPgraphic
\defineoverlay[PageNr][\uniqueMPgraphic{PageNr}]
\setupbackgrounds[footer][rightmargin][background=PageNr]
%%
\setupfooter[before=\vfill,after=\vfill]
\setupfootertexts[margin][]%
[\hsize=\rightmarginwidth
\centerline{\scale[sx=4,sy=4]{\color[white]{\ssbf\pagenumber}}}]
%%
\showlayout
\starttext
\dorecurse{4}{%
\chapter{Tufte}
\section{A text}
\input tufte}
\stoptext# texutil –purgeall ; export shell_escape=t; texexec test-ctx-mkii-ok.tex
`Se consideriamo context mkiv,
la situazione cambia completamente.
il primo file che era lentissimo
diventa normale, proprio come il secondo.
Queasto è dovuto al fatto che metapost ora è una estensione
di luatex, quindi la gestione del ricalcolo è molto più veloce:
è questo uno dei principali vantaggi di luatex
(l’altra faccia della medaglia: maggiore occupazione di memoria).`
%%test-ctx-mkiv.tex
\setuppapersize[A4][A3]
\setuplayout[location=middle,marking=on]
%% colors
\setupcolors[state=start]
\definecolor[titleseccolor][r=0.65,b=0.0,g=0.0]
%% pagenumber
\setuppagenumbering[alternative=doublesided,location=]
\startuseMPgraphic{PageNr}
picture ppag ;
ppag := textext(“\color[white]{\ssbf\pagenumber}”) ;
ppag := ppag scaled 4;
path p ;
p := unitsquare
xscaled OverlayWidth yscaled OverlayHeight
superellipsed .85 ;
fill p withcolor \MPcolor{titleseccolor} ;
draw p withcolor 1.5\MPcolor{titleseccolor}
withpen pencircle scaled 2pt;
draw ppag
shifted (0.5*OverlayWidth-xpart center ppag ,
0.5*OverlayHeight-ypart center ppag)
\stopuseMPgraphic
\defineoverlay[PageNr][\useMPgraphic{PageNr}]
\setupbackgrounds[state=repeat]
\setupbackgrounds[footer][rightmargin][background=PageNr]
%%
\showlayout
\starttext
\dorecurse{4}{%
\chapter{Tufte}
\section{A text}
\input tufte}
\stoptext
`
-
2 Dicembre 2009 alle 3:00 #39846
-
2 Dicembre 2009 alle 9:24 #39847::
robitex”
Lo chiedo perché ho la sensazione che sia qualcosa di interessante.[/quote
So che hai in testa qualcosa..fammi un esempio coi nomi che vuoi tuPS
Non vorrei che diventasse una classe virtuale inversa
(gli alunni 😈 interrogano i professori 😥 ).
Meglio allora
chiedi all’oracolo 🙄 — ma fai la domanda giusta 😀Facciamo così:
tu spieghi e poi assegni gli esercizi. Se lo scolaro completa l’esercizio bene, altrimenti fa un post con le domande.Ps. Caro Luigi, come sai, ho sempre in mente molti progetti che naturalmente rimangono nei cassetti per mancanza di tempo. L’importante è dunque avere il più grande armadio possibile 😆 😆 😆 per non perderli.
-
2 Dicembre 2009 alle 11:37 #39848
-
2 Dicembre 2009 alle 13:21 #39849::
Facciamo così:
tu spieghi e poi assegni gli esercizi. Se lo scolaro completa l’esercizio bene, altrimenti fa un post con le domande.Si, ma l’approccio top/down non è un buon metodo qui.
E’ meglio un bottom/up:nel tuo caso
“dovrei fare un project cosi è cosi..come si fa?” .
La cosa intelligente è fare la domanda giusta — ne troppo teorica
ne troppo pratica, ne troppo lunga ne troppo corta.
Nel tuo caso, io so che hai qualcosa in mente: se riesci a fare l’esempio
corretto io forse riesco a mostrare il caso generale, e tu
ad evidenziare gli aspetti particolari che derivano proprio dal tuo progetto.
-
2 Dicembre 2009 alle 13:26 #39850::
Grazie Luigi per la lunghissima lezione, sto incominciando a capire.
Io ho Texlive 2007, non la 2008, è l’esempio test ha funzionato.OK, ma ti conviene sempre avere l’ultima texlive.
Se non hai problemi di banda scaricala dal sito
http://www.tug.org/texlive/
Ovviamente il DVD è un must.
Questo perchè sei hai problemi con tl2007 che sono risolti in tl2008
o tl2009 nessuno te li correggerà .
Per il resto si tratta di una introduzione teorica,
gli esempio sono specializzati.Hai qualche esempio particolare in mente ?
-
2 Dicembre 2009 alle 13:48 #39851
-
2 Dicembre 2009 alle 15:41 #39852::
allora, la prima cosa che mi viene inmente è questa:
in LateX se voglio scrivere una lettere, un articol, o un libro uso la relativa classe ecc…
con ConTeXt come procedo? quali sono i comandi di base? Un esempio mininimo!In context esiste un solo concetto a riguardo:
la struttura del documento.
Un primo ed immediato esempio è la struttura logica del libro
in parti, capitoli , sezioni, sottosezioni etc.
Il resto discende da questo primo concetto.
Ad esempio, se vogliamo un documento con sezioni numerate
partendo da
1) capitolo
2) sezione
3) sotto sezione
3) sotto sotto sezione
con sommario all’inizio`
\starttext
\completecontent
\chapter{Titolo articolo (chapter)}
\ldots qualche linea di testo,ma non troppe\ldots%%
\section{Introduzione (section)}
\input tufte\subsection{La teoria (subsection)}
\input knuth\subsubsection{Caso particolare (subsubsection)}
\ldots foo boo baa \ldots\subsubsection{Variante A (subsubsection)}
\ldots foo boo baa \ldots%%
\section{Conclusione (section)}
\input tufte\stoptext
`Ho lasciato fuori parte (\part) che sarebbe un livello 0 (pre capitolo)
ed altri sotto livelli ulteriori.Da qui, “togliendo” i numeri ho documento simile ad articolo,
ma che non ha il sommario
`
\starttext
\title{Titolo articolo (title)}
\ldots qualche linea di testo,ma non troppe\ldots%%
\subject{Introduzione (subject)}
\input tufte\subject{La teoria (subject)}
\input knuth\subsubject{Caso particolare (sub subject)}
\ldots foo boo baa \ldots\subsubsubject{Variante A (sub sub subject)}
\ldots foo boo baa \ldots%%
\subject{Conclusione (subject)}
\input tufte\stoptext
`
Ora, a me non piace molto.
La profondità del sezionamento è ok,
ma voglio i titoli più evidenti e meno spazio.
L’ulitmo livello poi, lo voglio in linea col testo.`
\setuphead[title][style={\ss\bfc},after=]
\setuphead[subject][style={\ss\bfb},after=]
\setuphead[subsubject][style={\ss\bfa},after=]
\setuphead[subsubsubject][style={\ss\bf},after=,
alternative=text]
\starttext
\title{Titolo articolo \\ (title)}
\ldots qualche linea di testo,ma non troppe\ldots\subject{La teoria (subject)}
\input knuth\subsubject{Caso particolare (sub subject)}
\ldots foo boo baa \ldots%%come trucco mnemnico
%%metto il testo subito dopo,
%%ma non è indispensabile
\subsubsubject{Variante A (sub sub subject)}\ldots foo boo baa \ldots%%
\subject{Conclusione (subject)}
\input tufte\stoptext
`
dove
style=\ss\bfb sta per sansserif boldface dimensione b
after=, significa nessun spazio dopo il testo
alternative=text significa in lineacfr.
http://wiki.contextgarden.net/Titles
Queste cose si trovano nel file strc-sec.mkii, (tl2009) .Domanda: ma se io voglio un book senza numeri ?
O meglio: è possibile un “articolo” con sommario ?
-
2 Dicembre 2009 alle 17:00 #39853::
Domanda: ma se io voglio un book senza numeri ?
O meglio: è possibile un “articolo” con sommario ?Un book senza numeri uso i comandi:
\part
\chapter
\section
\subsection
\subsubsection
…
ma imposto la non presenza del numero con \setuphead.Tipo un:`\setuphead[number=no]`
Guisto?
Ps.
Ho seguito l’esercitazione e vorrei chiederti questo:
ho notato che i paragrafi non sono indentati. Come si imposta l’indentazione e se come in LaTeX c’è differenza tra indentazione di primo paragrafo (nello stile anglosassone il primo paragrafo non è indentato tanto che in testi italiani si usa il comando \indentfirst).Ottima lezione prof.
Grazie 10000000000000000!
-
2 Dicembre 2009 alle 17:13 #39854::
sto seguendo gli esempi, compilo e vedo … ma vedo che rispetto a LateX il layout della pagina lascia molto a desiderare … cioè, mentre con LaTex il lavoro del tipografo mi viene risparmiato, con ConTeX devo fare tutto a a manina. Vero?Beh la cosa sarà anche molto personalizzabile, ma devo reinventare tutto da capo!
-
2 Dicembre 2009 alle 17:40 #39855::
sto seguendo gli esempi, compilo e vedo … ma vedo che rispetto a LateX il layout della pagina lascia molto a desiderare … cioè, mentre con LaTex il lavoro del tipografo mi viene risparmiato, con ConTeX devo fare tutto a a manina. Vero?
Beh la cosa sarà anche molto personalizzabile, ma devo reinventare tutto da capo!
hm, quali sono le cose che ti non ti convincono ?
Ad esempio in ConTeXt non c’è la il tipo di documento “article”
di LaTeX, il quale ovviamente sarà definito in termini precisi di layout.
Quindi l’esempio “article” non può essere preso come esempio 1 a 1 con article di LaTeXt.
Quindi in un certo senso hai ragione: se hai una precisa idea di cosa
vuol dire per te “article”, in ConTeXt la devi implementare.
Se vuoi ricalcare fedelmente article di latex in context devi procedere ai setup come sopra, ma ovviamente viene spontaneo chiedere
“perchè non usi LaTeX ?”
-
2 Dicembre 2009 alle 17:48 #39856::
Ok, ho capito. Per scrivere un articolo usero LaTeX. Ma allora quando conviene usare ConTeXt?Suppongo, quando devo comporre un documento con un formato non standard.
Ma immagino che i settaggi siano decine e decine. Come impararli? Devo leggere tonnellate di documenti o esiste una logica facile per imparare? (mi sembra che tutto sia partito da questa considerazione: LaTeX non è logico né coerente — spero che ConTeXt lo sia!).
greazie
-
2 Dicembre 2009 alle 18:17 #39857::
Un book senza numeri uso i comandi:
\part
\chapter
\section
\subsection
\subsubsection
…
ma imposto la non presenza del numero con \setuphead.Tipo un:`\setuphead[number=no]`
Guisto?
quasi quasi…
\setupheads[sectionnumber=no]
\starttext
\completecontentL’indentazione è settata no x default.
A questo punto azzardo un
\setupindenting[small,yes]
.. vedremo.
-
2 Dicembre 2009 alle 18:59 #39858::
(mi sembra che tutto sia partito da questa considerazione: LaTeX non è logico né coerente — spero che ConTeXt lo sia!).
greazieMi dispiace, non ho detto così. E nel caso fosse,
allora ho scritto male, quindi ribadisco:
non è vero che LaTeX non è logico ne coerente.Se ti riferisci a
(context) E’ progettato meglio e diversamente ed è completamente gestito.
LaTeX è nato per poche cose, ed è cresciuto in modo non gestito.indica un modello di sviluppo diverso.
Mi spiego: essendo nato dopo latex ed avendo come mira la
problematica della documento in toto è naturale che context sia stato progettato meglio rispetto a latex, nato per non per questo scopo — si impara dagli errori.
La crescita non gestita si riferisce al fatto che è possibile
creare un nuovo package in latex e depositarlo in CTAN,
ed è’ cura dell’autore mantenerlo e curarsi dei conflitti con altri packages.
Ovvero non esiste una autorità centrale .
Naturalmente nessuno può modificare a suo piacimento il codice in base/* :
quindi il kernel di latex è gestito.In context è diverso: che un utente può creare un suo modulo extra, ma normalmente non viene usato, perché si preferisce customizzare
ciò che base/* offre tramite \setup*
Ed anche in questo caso le modifiche in base/* le fa solo uno sviluppatore,quindi anche in questo caso il kernel è gestito.Ora è evidente che selezionando in modo accurato
un numero di package adeguati si riesce a coprire in latex una vasta casistica, e quindi da questo punto di vista hai un sistema logico e coerente. Si rischia di perdere coerenza e logicità
se si usano i packages alla carlona.In context non ci sono i packages, quindi niente rischio.
Ovviamente la possibilità di creare schifezze immonde rimane.Inoltre sta nascendo latex3, quindi la storia non è finita.
Comunque non voglio certo impostare la cosa in
context-meglio-di latex, perchè è priva di utilità .
Non è il posto per convincere qualcuno ad usare context,
piuttosto spiegare qualcosa a chi ha già preso la decisione di provarlo.
Per la documentazione ho già dato alcuni riferimenti validi,
lascio a te giudicare la loro mole.Avevi fatto delle osservazioni sul layout: cosa esattamente non ti convince ?
-
2 Dicembre 2009 alle 19:07 #39859::
mi riferivo a come creare un layout decente, gli esempi minimali che hai fato fanno ….
certo sono minimali, ma se voglio scrivere per esempio una relazione, con dei titoletti, e paragarfi distanziati da una mezza interline in più, con un bel carattere leggibile (sto diventatndo vecchio!) come faccio?CIrca la questione LaTeX ConTeXt, capisco che sono due cose non paragonabili, ma mi chiedevo,
1. quando conviene secondo te utlizzare ConTeXt
2. se c’è una logica nei comandi che mi permette di “indovinare” quello giusto, poi magari cerco nella documentazione.A proposito, ma dove trovo la documentazione ufficiale?
grazie
-
2 Dicembre 2009 alle 19:36 #39860::
mi riferivo a come creare un layout decente, gli esempi minimali che hai fato fanno ….
certo sono minimali, ma se voglio scrivere per esempio una relazione, con dei titoletti, e paragarfi distanziati da una mezza interline in più, con un bel carattere leggibile (sto diventatndo vecchio!) come faccio?hm,..
possiamo fare questo esperimento:
“fingendo” di dimenticare che conosci latex
prepara una lista di max 10 punti che definiscono il tuo documento.
Il difficile, mentre scrivi la lista, è essere preciso ma non
usare termini TeXnici, solo tipografici e neanche troppo complicati.
Pensa ad un utente che usa il computer, che ha dimestichezza con i vari word, che sa cosa sono i millimetri ed i punti, ma non di più.
“Fingere” non vuole dire “cancella dalla memoria” — una lista balocca non serve a nessuno.
Un consiglio:
prima di proporrela lista è meglio che dai una scorsa ai due pdf sottoCIrca la questione LaTeX ConTeXt, capisco che sono due cose non paragonabili, ma mi chiedevo,
1. quando conviene secondo te utlizzare ConTeXt
2. se c’è una logica nei comandi che mi permette di “indovinare” quello giusto, poi magari cerco nella documentazione.
A proposito, ma dove trovo la documentazione ufficiale?Ho già indicato che il punto di partenza è
http://wiki.contextgarden.net/Main_Page
ed io consiglio
http://www.pragma-ade.com/general/manuals/cont-eni.pdf
http://www.pragma-ade.com/general/manuals/metafun-s.pdfQuesti pdf sono del 2000 (!) ma sono ancora al validi 90%.
In particolare, per la 1)
io trovo conveniente context quando hai documenti con
parecchia grafica — se leggi
http://www.pragma-ade.com/general/manuals/metafun-s.pdf
capisci cosa intendo
ed inoltre quando devo programmare in TeX: mi risulta più naturale
programmare in ConTeXt.Per la 2)
\setup*
è la parola magica
-
2 Dicembre 2009 alle 19:50 #39861::
Luigi sei un grande!Mi sono scaricato le guide e da domani mi metto un po’ a studiare e smanettare.
Circa il documento sperimentale, dicaimo, appunto, una relazione.
Allora voglio che:
1. ci sia una testata con il mio logo e indirizzo web ecc, su tutte le pagine
2. il piede contenga almeno il numero di pagina
3. Ci sia titolo, sottotitolo, autore in alto con carattere grande medio piccolo4. Il testo divisibile in paragrafi.
5. i capoversi con interlinea più larga per facilitare le pause della lettura
6. carattere 12 pt per il corpo
8. possibiità di di inserire una tabella per uno schema9. indice
10. sommarioChiedo troppo?
-
3 Dicembre 2009 alle 10:10 #39862::
Ok, proporrei un altro argomento:
Gli elenchi puntati o numerati.È possibile personalizzare comunque si voglia il pallino dell’elenco puntato?
Per gli elenchi numerati come è possibile personalizzare la rappresentazione dei numeri (arabo, romano minuscolo, alfabetico, ecc)?Ed ancora, le modifiche di setup per un oggetto possono essere fatte globalmente ed anche localmente?
Se per esempio ho impostato un bel quadratino come oggetto di segnatura di un elenco puntato a livello globale del documento, posso modificare solo localmente questa proprietà per un dato elenco?
Ti sei preparato per un’altra lezione Luigi? 😆 😆 😆
Bye, Roberto.Aggiunta:
Sto sperimentando il modulo flowChart che si appoggia a METAPOST naturalmente ed ho notato che le chiavi di setup devono essere scritte senza spazi:
`\usemodule[chart]\setupFLOWcharts
[option=test,
width=28mm,
height=18mm,
dx=6pt,
dy=6pt]`
In questo frammento di codice se aggiungo spazi prima e/o dopo il simbolo di uguale (per esempio option = test, anziché option=test), il setup non funziona.
Chiedo dunque: è questa una regola generale in ConTeXt ?
-
3 Dicembre 2009 alle 11:40 #39863::
`
%%need simplefonts module
%%copy Inconsolata.otf in
%%minimals-beta/tex/texmf/fonts/opentype/public/levian/Inconsolata.otf
%%then
%%luatools –generate
%%mtxrun –script fonts –reload
\usemodule[simplefonts]
\startbuffer[monotable]
Nome Tipo Grav. Gamma Gamma Psi 0 Psi 1 Psi 2 Psi 2 Phi
sism. sism. (coeff.
correl.)
Perm. non strutt.le G2 permanente * 1.50 1.00 nd nd nd nd nd
Sismico SLU sismico 1.00 0.00 nd nd nd nd nd
Sismico SLD sismico 0.00 1.00 nd nd nd nd nd
Torcente SLV sismico correlato 1.00 0.00 nd nd nd nd nd
Torcente SLD sismico correlato 0.00 1.00 nd nd nd nd nd
Cat. A: Residenziale variabile * 1.50 1.00 0.70 0.50 0.30 0.30 1.00
Cat. B: Uffici variabile * 1.50 1.00 0.70 0.50 0.30 0.30 1.00
Cat. C: Affollamento variabile * 1.50 1.00 0.70 0.70 0.60 0.60 1.00
Cat. D: Commerciale variabile * 1.50 1.00 0.70 0.70 0.60 0.60 1.00
Cat. E: Magazzini variabile * 1.50 1.00 1.00 0.90 0.80 0.80 1.00
Cat. F: Rimesse (<30kN) variabile * 1.50 1.00 0.70 0.70 0.60 0.60 1.00
Cat. G: Rimesse (>30kN) variabile * 1.50 1.00 0.70 0.50 0.30 0.30 1.00
Cat. H: Copertura variabile * 1.50 1.00 0.00 0.00 0.00 0.20 1.00
Neve (q<1000) variabile * 1.50 1.00 0.50 0.20 0.00 0.20 1.00
Neve (q>1000) variabile * 1.50 1.00 0.70 0.50 0.20 0.20 1.00
Vento var. non contemp. 1.50 0.00 0.60 0.20 0.00 0.00 1.00
Temperatura var. non contemp. 1.50 0.00 0.60 0.50 0.00 0.00 1.00
Pesi strutturali, G1 permanente * 1.30 1.00 nd nd nd nd nd
\stopbuffer\setuptyping[style=\ttx]
\starttext\typebuffer[monotable]
\page
\setmonofont[inconsolata]
\typebuffer[monotable]\stoptext
`Questo è un esempio di context mkiv,
richiedere una minimals beta funzionante
http://wiki.contextgarden.net/ConTeXt_Minimals
Ho preso spunto da robitex per il typeset verbatim con Inconsolata.
In questo esempio voglio mostrare che quello che ho detto a riguardo dei packages o moduli che dir si voglia va preso con le molle:
anche in context ci sono i moduli e questo simplefonts è molto utile
(probabilmente diverrà parte del codice base) .
Ma in tutto sono 2 o 3.Una prima osservazione: e se volessi pubblicare su WEB i risultati ?
E poi:
“ma assomiglia ad una tabella…perché non componi una tabella ?”
-
3 Dicembre 2009 alle 12:19 #39864::
Luigi sei un grande!
Mi sono scaricato le guide e da domani mi metto un po’ a studiare e smanettare.
Ti lascio qualche giorno, abbiamo un buon weekend davanti.
Prendo la tua richiesta seriamente — non seriosamente —
perché è un buon modello di interazione cliente/fornitore .In linea di massima, se io sono il fornitore
-
*) un “progetto” con specifiche poco chiare implicano più tempo, e se sono pagato ad ore questo significa più soldi per me. Quindi tendo ad accettare
specifiche poco chiare
*) un “progetto” solitamente non è sufficiente. Quindi cerco più “progetti”
e quindi specifiche chiare. Quindi tendo ad accettare
solo specifiche chiareE’ nel bilanciamento delle due cose che si arriva alla consegna del “progetto”, nell’ipotesi che cliente e fornitore collaborino — ed in media è così, visto che in media ogni cliente è fornitore e viceversa.
Va da se che questo è un diverso dall’approccio “insegnante/studenti” e “mailing list”
ma bisogna capire che context è nato ed usato da una azienda il cui modello è “cliente/fornitore” — ed io stesso lo uso in questo contesto — ,
mentre LaTeX in un contesto scientifico/accademico .
Il fatto che si possano “scambiare” i ruoli lo garantisce il fatto che si basano sullo stesso linguaggio, il TeX.
-
3 Dicembre 2009 alle 12:45 #39865::
Ok, proporrei un altro argomento:
Gli elenchi puntati o numerati.Molto velocemente
http://wiki.contextgarden.net/EnumerationsAggiunta:
Sto sperimentando il modulo flowChart che si appoggia a METAPOST naturalmente ed ho notato che le chiavi di setup devono essere scritte senza spazi:La questione è delicata:
TeX è sensibile agli spazi e non può essere diversamente
visto che è rivolto alla tipografia.
Esempio:
`
\setuplayout[margin=0cm,
backspace=3cm]
\showlayout
\starttext
\input knuth
\stoptext\setuplayout[margin= 0cm, %% come sopra
backspace=3cm]
\showlayout
\starttext
\input knuth
\stoptext\setuplayout[margin = 0cm,%% margin non viene settato
backspace=3cm]
\showlayout
\starttext
\input knuth
\stoptext%%% ERRATO: un \par di troppo
\setuplayout[margin=0cm,backspace=3cm]
\showlayout
\starttext
\input knuth
\stoptext%ok, non proprio bello …
\setuplayout[margin=0cm,
%
backspace=3cm,
]
\showlayout
\starttext
\input knuth
\stoptext
`In generale la regola è:
key=value
oppure
key={value}Di regola nelle mie macro erco che key sia scritta in lettere, niente numeri e punteggiatura,
-
3 Dicembre 2009 alle 17:49 #39866::
Dunque in ConTeXt esiste un solo ambiente per le liste 8) .Se l’elenco è puntato scrivo semplicemente:
`\startitemize
\item loretta
\item mio cugino
\item agata
\stopitemize`se lo desidero invece numerato con numeri arabi:
`\startitemize[n]
\item loretta
\item mio cugino
\item agata
\stopitemize`ecc. le varie opzioni rispondono alle varie segnature e numerazioni.
Piuttosto ho tribolato un po’ con il layout di pagina, non riuscendo a capire come si impostano le dimensioni di margini, ecc.
Il meglio che sono riuscito a fare è questo:
`\setuplayout
[header=12pt,
footer=0pt,
rightedge=0mm,
leftedge=0mm]`Ma facendo disegnare i contorni con \showframe non ottengo quello che desidero.
Ci puoi spiegare in poche parole quello che in LaTeX si fa con geometry?
Credo che alla fine sia semplice anche in ConTeXt ma non l’argomento non è chiaro.Bye
-
7 Dicembre 2009 alle 17:09 #39867::
Luigi sei un grande!
Mi sono scaricato le guide e da domani mi metto un po’ a studiare e smanettare.
Circa il documento sperimentale, dicaimo, appunto, una relazione.
Allora voglio che:
1. ci sia una testata con il mio logo e indirizzo web ecc, su tutte le pagine
2. il piede contenga almeno il numero di pagina
3. Ci sia titolo, sottotitolo, autore in alto con carattere grande medio piccolo4. Il testo divisibile in paragrafi.
5. i capoversi con interlinea più larga per facilitare le pause della lettura
6. carattere 12 pt per il corpo
8. possibiità di di inserire una tabella per uno schema9. indice
10. sommario`
\setuppapersize[A4][A3]
\setuplayout[location=middle,
topspace=1.5cm,
top=1.5cm,
bottomspace=1cm,
margindistance=3mm,margin=1.7cm,
backspace=2cm,
width=middle,
height=middle,
header=1.5cm,
footer=1cm,
]\def\SchLogo{SchironeLogo}
\def\SchUrl{\hyphenatedurl{http://www.tug.org}}
\def\Author{Au.Thor}\setuptoptexts[text][\SchLogo][\SchUrl]
\setupheadertexts[{{\tfb chapter} — {\tfa section}}]%% Left
[{\tfx Author}]%% Right
\setuppagenumbering[location=footer]
\setupbodyfont[12pt,rm]
\setupinterlinespace[line=4ex]% default line=2.8ex\setupindenting[medium,yes]
\showlayout
%%
%% Real values
\setuppapersize[A4][A4]
\setupheadertexts[{{\tfb\getmarking[chapter][first]} — {\tfa\getmarking[section][first]}}]%% Left
[{\tfx\Author}]%% Right%%
%% Let's start
\starttext\chapter{Titolo 1}
\section{Knuth}
\input knuth\section{Tufte}
\input tufte\startcombination[2*1]
{\setupTABLE[column][2][align=left]%
\setupTABLE[column][3][align=right]%
\bTABLE[columndistance=2cm,leftmargindistance=.3cm,rightmargindistance=.5cm]
\bTR \bTH[nc=3] Table head\eTH \eTR
\bTR \bTD[nc=2] AB\eTD \bTD C\eTD \eTR
\bTR \bTD[nc=2,align=left] AB\eTD \bTD C\eTD \eTR
\bTR \bTD[nc=2,align=middle] AB\eTD \bTD C\eTD \eTR
\bTR \bTD A\eTD \bTD B\eTD \bTD C\eTD \eTR
\bTR \bTD Aa\eTD \bTD Bb\eTD \bTD Cccc\eTD \eTR
\bTR \bTD[nc=3,align=middle] ABC\eTD \eTR
\eTABLE} {TABLE}
{\vbox{\starttabulate[|c.|c,|c,|]
\NC period \NC comma \NC comma \NC\NR
\HR
\NG 100.000,00 \NG 100.000,00 \NG 100,00 \NC\NR
\NG 10.000,00 \NG 10.000,00 \NG 1000,00 \NC\NR
\NG 100,00 \NG 100,00 \NG 10,00 \NC\NR
\NG 10 \NG 10 \NG 0,00 \NC\NR
\stoptabulate}} {tabulate}
\stopcombination\chapter{Titolo 2}
\section{Zapf}
Coming back to the use of \index{typefaces+ in electronic publishing}: many of the new typographers
receive their knowledge and information about the rules of typography from \index{books},
from \index{computer+ magazines} or the instruction \index{manuals} which they get with the purchase of a PC or software.
\blank
There is not so much basic instruction, as of now, as there was in the old days, showing the
differences between good and bad \index{typographic design}. Many people are just fascinated by
their PC's tricks, and think that a widely–praised program, called up on the screen, will make
everything automatic from now on.\title{Indice}
\setupheadertexts[{\tfb\getmarking[chapter][first]}]%% Left
[{\tfx\Author}]%% Right\placeindex
\title{Sommario}
\placecontent[alternative=c,
criterium=all]
\stoptext
`Naturalmente, sei hai letto i manuali le cose dovrebbero essere piuttosto chiare..
-
20 Luglio 2010 alle 16:22 #39868::
Salve a tutti, anche a me sembra molto interessante e appena ho un po’ di tempo libero mi metto subito a fare prove.
Intanto mi chiedo come sia in ConTeXt la composizione di oggetti matematici come per esempio matrici oppure semplicemente la definizione di nuovi operatori (che in LaTeX facevo mediante il comando DeclareMathOperator).Grazie mille e complimenti per la trasmissione 🙂
ES
-
21 Luglio 2010 alle 8:58 #39869::
Salve a tutti, anche a me sembra molto interessante e appena ho un po’ di tempo libero mi metto subito a fare prove.
Intanto mi chiedo come sia in ConTeXt la composizione di oggetti matematici come per esempio matrici oppure semplicemente la definizione di nuovi operatori (che in LaTeX facevo mediante il comando DeclareMathOperator).Grazie mille e complimenti per la trasmissione 🙂
ES
Prova a vedere se ti ritrovi in
http://wiki.contextgarden.net/Math
-
21 Luglio 2010 alle 17:45 #39870
-
21 Luglio 2010 alle 19:19 #39871
-
21 Luglio 2010 alle 20:57 #39872
-
21 Luglio 2010 alle 21:20 #39873
-
22 Luglio 2010 alle 12:25 #39874
-
22 Luglio 2010 alle 12:53 #39875::
prevalentemente mi occupo di teoria dei numeri, ma mi capita in generale di scirvere anche per altra gente.
forse questo ti interessa
http://wiki.contextgarden.net/User:Luigi.scarso/luatex_lunatic#SageMathConosci PARI/GP ?
-
22 Luglio 2010 alle 15:16 #39876
-
22 Luglio 2010 alle 15:24 #39877
-
26 Luglio 2010 alle 10:34 #39878::
Non ho avuto troppo tempo, ma un quesito lo ho già.
Come si fa ad imitare il \newtheorem che usavo in LaTeX.
Ho provato con \defineenumeration, ma non riesco a gestire bene lo spazio fra il “titolo” (teorema, corollario, …) e il testo. Ho provato con le varie opzioni di location, ma il problema è che mi allinea i testi.
Mi spiego meglio: se ho definito con \defineenumeration una definizione, e poi la uso con e senza numero, il testo di entrambe è allineato e non mi sembra un gran che.Spero di essermi spiegato..
Grazie
ES
-
26 Luglio 2010 alle 21:40 #39879::
Intanto ho trovato questo, vecchio di 10 anni ma ancora buono
http://dl.contextgarden.net/websitesarchive/atl/tex/LaTeX2ConTeXt.pdfSe hai un esempio di latex che funziona sotto una texlive 2009
e di context che non ti piace vedo di capirci di più
-
28 Luglio 2010 alle 21:57 #39880::
scusa se rispondo solo ora ma non ho avuto modo di collegarmi.
Ecco l’esempio.Codice LaTeX:
`\documentclass{article}
\usepackage{amsthm}
\newtheorem{guess}{Conjecture}
\newtheorem*{guesss}{Conjecture}\begin{document}
Questa \`e una congettura con numero
\begin{guess}
Congettura numero 1.
\end{guess}
e questa una senza numero
\begin{guesss}
Congettura numero 2.
\end{guesss}\end{document}`
Codice ConTeXt:
`\defineenumeration
[guess]
[text=Conjecture,
location=left,
letter=it]\starttext
Questa \`e una congettura con numero
\startguess
Congettura numero 1.
\stopguess
e questa una senza numero
\startguess[-]
Congettura numero 2.
\stopguess\stoptext`
Come dicevo, le due parole “Congettura” all’interno dell’ambiente guess sono nel pdf creato da ConTeXt allineati e non mi sembra un gran che..
Ciao
ES
-
29 Luglio 2010 alle 10:18 #39881::
Codice ConTeXt:
`\defineenumeration
[guess]
[text=Conjecture,
location=left,
letter=it]\starttext
Questa \`e una congettura con numero
\startguess
Congettura numero 1.
\stopguess
e questa una senza numero
\startguess[-]
Congettura numero 2.
\stopguess\stoptext`
Come dicevo, le due parole “Congettura” all’interno dell’ambiente guess sono nel pdf creato da ConTeXt allineati e non mi sembra un gran che..
Ciao
ES
OK, visto.
Di default width=8em rigido ( e a me non dispiace), però
prova con
width=broad,distance=0.5em,Usa se possibile sempre unicode utf8
\defineenumeration
[guess]
[text=Conjecture,
width=broad,distance=0.5em,
location=left,
letter=it]
\enableregime[utf]
\starttextQuesta è una congettura con numero
\startguess
Congettura numero 1.
\stopguess
e questa una senza numero
\startguess[-]
Congettura numero 2.
\stopguess
\stoptext
-
29 Luglio 2010 alle 11:14 #39882
-
30 Luglio 2010 alle 17:34 #39883
-
30 Luglio 2010 alle 20:40 #39884::
Eccomi di nuovo.
Per ora ho trovato (con un po’ di fatica) tutto quello che cercavo.
Direi che apparte la scarsa documentazione, ConTeXt batte LaTeX decisamente.Una cosa non sono riuscito a fare, i font matematici tipo \mathcal.
Ciao
ES
Hai un esempio in latex?
A volte i nomi delle macro sono simili tra latex e context ma fanno cose differenti.
-
31 Luglio 2010 alle 15:09 #39885
-
1 Agosto 2010 alle 13:54 #39886::
Su internet ho trovato questo:
`
\def\Mathcal {\fam\purefamily{calligraphic}}
\def\MathBbd {\fam\purefamily{blackboard}}
\def\Mathfrak{\fam\purefamily{fraktur}}\def\mathcal#1{{\Mathcal #1}}
\def\mathbb#1{{\MathBbd #1}}
\def\mathfrak#1{{\Mathfrak#1}}
`che risolve la mia precedente questione.
Ma ne ho altre se vuoi.. 🙂
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.