- Questo topic ha 4 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 16 anni, 7 mesi fa da
killing_buddha.
-
CreatoreTopic
-
11 Febbraio 2010 alle 14:19 #41901
-
CreatoreTopic
-
AutoreRisposte
-
-
11 Febbraio 2010 alle 14:34 #41902::
Come si fa ad aumentare il massimo numero di parametri per \newcommand? Ho la beffa di avere un comando che necessita di 12 variabili…
Comandi del genere sono ingestibili, si possono capire solo in testi che siano generati automaticamente. È il tuo caso?
Non si può aumentare il massimo numero di parametri: nove sono per decreto knuthiano al quale l’obbedienza dev’essere cieca e assoluta. Trucchi di vario tipo ci sono, ma la prima domanda a cui rispondere è: davvero ti serve un comando con 12 argomenti? Che ci devi fare? La soluzione dipende da questo.
Ciao
Enrico
-
11 Febbraio 2010 alle 15:07 #41903::
Come si fa ad aumentare il massimo numero di parametri per \newcommand? Ho la beffa di avere un comando che necessita di 12 variabili…
Comandi del genere sono ingestibili, si possono capire solo in testi che siano generati automaticamente. È il tuo caso?
Non si può aumentare il massimo numero di parametri: nove sono per decreto knuthiano al quale l’obbedienza dev’essere cieca e assoluta. Trucchi di vario tipo ci sono, ma la prima domanda a cui rispondere è: davvero ti serve un comando con 12 argomenti? Che ci devi fare? La soluzione dipende da questo.
Ciao
EnricoSperavo di poter disegnare in fretta i pullback: ti riporto il codice che avevo scritto.
`\newcommand{\mypull}[12]{%
\xymatrix{
#5 \ar@/_10pt/[ddr]_{#12} \ar@/^10pt/[drr]^{#10} \ar@{.>}[dr]|*+<3pt,3pt>{#11} & & \\
& #1 \ar[d]_(0.4){#7} \ar[r]^(0.4){#6} & #2 \ar[d]^{#8}\\
& #3 \ar[r]_{#9} & #4
}
}`
che mi facesse ottenere qualcosa di simile a quel che esce compilando
` \xymatrix{
Q \ar@/_10pt/[ddr]_{q_1} \ar@/^10pt/[drr]^{q_2} \ar@{.>}[dr]|*+<3pt,3pt>{u} & & \\
& P \ar[d]_(0.4){p_1} \ar[r]^(0.4){p_2} & Y \ar[d]^{g}\\
& X \ar[r]_{f} & Z
}`
-
11 Febbraio 2010 alle 15:37 #41904::
[quote]Come si fa ad aumentare il massimo numero di parametri per \newcommand? Ho la beffa di avere un comando che necessita di 12 variabili…
Comandi del genere sono ingestibili, si possono capire solo in testi che siano generati automaticamente. È il tuo caso?
Non si può aumentare il massimo numero di parametri: nove sono per decreto knuthiano al quale l’obbedienza dev’essere cieca e assoluta. Trucchi di vario tipo ci sono, ma la prima domanda a cui rispondere è: davvero ti serve un comando con 12 argomenti? Che ci devi fare? La soluzione dipende da questo.
Ciao
EnricoSperavo di poter disegnare in fretta i pullback: ti riporto il codice che avevo scritto.
`\newcommand{\mypull}[12]{%
\xymatrix{
#5 \ar@/_10pt/[ddr]_{#12} \ar@/^10pt/[drr]^{#10} \ar@{.>}[dr]|*+<3pt,3pt>{#11} & & \\
& #1 \ar[d]_(0.4){#7} \ar[r]^(0.4){#6} & #2 \ar[d]^{#8}\\
& #3 \ar[r]_{#9} & #4
}
}`
che mi facesse ottenere qualcosa di simile a quel che esce compilando
` \xymatrix{
Q \ar@/_10pt/[ddr]_{q_1} \ar@/^10pt/[drr]^{q_2} \ar@{.>}[dr]|*+<3pt,3pt>{u} & & \\
& P \ar[d]_(0.4){p_1} \ar[r]^(0.4){p_2} & Y \ar[d]^{g}\\
& X \ar[r]_{f} & Z
}`[/quote]
Pensi poi di ricordarti qual è l’ordine degli argomenti? Io temo di no. Ma ognuno è libero di farsi del male come crede. 🙂
`\newcommand{\mypull}[4]{%
\def\mpul{#1}\def\mpur{#2}\def\mpll{#3}\def\mplr{#4}%
\mypullbis}
\newcommand{\mypullbis}[8]{%
\xymatrix{
#1 \ar@/_10pt/[ddr]_{#8} \ar@/^10pt/[drr]^{#6} \ar@{.>}[dr]|*+<3pt,3pt>{#7} & & \\
& \mpul \ar[d]_(0.4){#3} \ar[r]^(0.4){#3} & \mpur \ar[d]^{#4}\\
& \mpll \ar[r]_{#5} & \mplr
}
}`
Mi tengo in mente i primi quattro argomenti, dandoli come testo di sostituzione di macro temporanee, e chiamo \mypullbis che trova i seguenti otto argomenti:
`\mypull{P}{Y}{X}{Z}{Q}{p_2}{p_1}{g}{f}{q_2}{u}{q_1}`
Ho la netta sensazione che l’ordine che avevi scelto fosse alquanto casuale e poco mnemonico.Io, sinceramente, mi prenderei lo schema indicato, lo terrei fra gli appunti, e lo sbatterei dentro alla bisogna riempiendo i buchi. Quanti mai dovrai disegnarne?
Ciao
Enrico
-
11 Febbraio 2010 alle 15:54 #41905::
Ho la netta sensazione che l’ordine che avevi scelto fosse alquanto casuale
Potremmo discettare a lungo su come in ogni cifratura si riesca a trovare un ordine 😀
Ma non e’ questa la sede ne’ il momento. La logica era riempire il quadrato cartesiano, mettere le frecce secondo l’ordine verticale del quadrato, poi sistemare le frecce curve e la freccia universale andando dal basso in alto (o dall’alto in basso, avevo prodotto entrambi i modi).Per il resto, tra un po’ mi metto a capire cosa proponi, grazie.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.