ivan

Risposte nei forum create

Stai visualizzando 15 risposte – dal 946 al 960 (di 3,536 totali)
  • Autore
    Risposte
  • in risposta a: Formattazione autore con @incollection (biblatex) #99016
    Up
    0
    Down
    ::

    samiel” post=98613Sii! Ho fatto un paio di prove sul mio testo lungo, sia con @book/@inbook
    sia con @collection/@incollection (che poi ho adottato per tutte le sillogi).
    Hai fatto un lavoraccio!! Ma conti di inserire la correzione non in forma di patch,
    ma proprio come revisione di philosophy appena appuri dove sta il problema
    all’interno del codice? Vale la pena di postare su stackexchange?

    grazie ancora
    m

    I serio le modifiche negli stili. Aspetto solo qualche tempo per vedere se possono esserci problemi.

    Ciao
    Ivan

    in risposta a: tre asterischi #99034
    Up
    0
    Down
    ::

    ernded” post=98601È banale scrivere una macro che stampa tre asterischi centrati lasciando un ` \bigskip ` prima e dopo la riga stessa ma come si può fare in modo che gli asterischi non compaiano se la riga che li contiene è la prima o l’ultima di una pagina?
    Ciao
    Grazie
    Ernesto

    Forse con
    `\newcommand{\asterischi}{\par\nobreak\bigskip *** \bigskip}`
    ?

    Ciao
    Ivan

    in risposta a: TeXShop ed espressioni regolari #99048
    Up
    0
    Down
    ::


    Grazie Roberto!

    Siamo sicuri che lo script fa solo quello? Cioè si possono escludere effetti indesiderati?
    Devo convertire testi di altri autori e non vorrei trovarmi delle sorprese.

    Ciao
    Ivan

    in risposta a: LaTeX Warning: There were undefined references #98982
    Up
    0
    Down
    ::

    samiel” post=98603Con endnotes stesso problema, anche se poi
    il testo viene stampato correttamente.
    Con le note a piè di pagina invece nessun problema.

    m

    Il problema è di enotez/endnotes. Non mi preoccuperei più di tanto anche se sarebbe meglio non avere quell’avviso senza un buon motivo.

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #99014
    Up
    0
    Down
    ::


    Ora dovremmo esserci:
    `\begin{filecontents}{\jobname.bib}
    @inbook{ kuhn:1980,
    author = “Thomas Kuhn”,
    title = “Logica della scoperta o psicologia della ricerca?”,
    crossref = “lakatos:1980”,
    }

    @book{ kuhn:1981,
    author = “Thomas Kuhn”,
    title = “La rivoluzione copernicana”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1981”,
    edition = “3”,
    }

    @book{ kuhn:1982,
    author = “Thomas Kuhn”,
    title = “La struttura delle rivoluzioni scientifiche”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1978”,
    edition = “4”,
    }

    @book{ kuhn:1985,
    author = “Thomas Kuhn”,
    title = “La tensione essenziale”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1985”,
    }

    @book{ kuhn:2000,
    author = “Thomas Kuhn”,
    title = “Dogma contro critica”,
    publisher = “Cortina”,
    location = “Milano”,
    year = “2000”,
    }

    @book{ kuhn:2008,
    author = “Thomas Kuhn”,
    title = “Le rivoluzioni scientifiche”,
    publisher = “Il Mulino”,
    location = “Bologna”,
    year = “2008”,
    }

    @book{ lombardi:1991,
    author = “Tiziana Lombardi”,
    title = “Thomas Kuhn e la ricerca storiografica relativa alla
    rivoluzione copernicana”,
    publisher = “Gruppo Editoriale Internazionale”,
    location = “Roma”,
    year = “1995”,
    }

    @book{ lakatos:1980,
    title = “Critica e crescita della conoscenza”,
    editor = “Imre Lakatos and Alan Musgrave”,
    publisher = “Feltrinelli”,
    location = “Milano”,
    year = “1980”,
    edition = “3”,
    }

    @inbook{ masterman:1980,
    author = “Mary Masterman”,
    title = “La natura di un paradigma”,
    crossref = “lakatos:1980”,
    pages = “129-163”,
    }
    \end{filecontents}

    \documentclass[a4paper,11pt]{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}

    \usepackage{csquotes}
    \usepackage[
    backend=biber,
    style=philosophy-verbose,%
    firstinits=true,
    sorting=nyt]
    {biblatex}

    \addbibresource{\jobname.bib}

    \makeatletter
    \newbibmacro*{usedriver:book}{%
    \renewbibmacro*{bbx:savehash}{}%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{author/editor+others/translator+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{maintitle+title}%
    \newunit
    \printlist{language}%
    \newunit\newblock
    \usebibmacro{byauthor}%
    \newunit\newblock
    \usebibmacro{byeditor+others}%
    \newunit\newblock
    \printfield{edition}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \usebibmacro{series+number}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit
    \printfield{pagetotal}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\addsemicolon\space}\newblock
    \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
    \usebibmacro{related}}
    {}%
    \newunit\newblock
    \usebibmacro{pageref}%
    }

    \newbibmacro*{usedriver:collection}{%
    \renewbibmacro*{bbx:savehash}{}%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{editor+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{maintitle+title}%
    \newunit
    \printlist{language}%
    \newunit\newblock
    \usebibmacro{byeditor+others}%
    \newunit\newblock
    \printfield{edition}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \usebibmacro{series+number}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit
    \printfield{pagetotal}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\addsemicolon\space}\newblock
    \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
    \usebibmacro{related}}
    {}%
    \newunit\newblock
    \usebibmacro{pageref}%
    }

    \DeclareCiteCommand{\bbx@crossref@inbook}%
    {}%
    {\ifciteseen{%
    \ifthenelse{\value{listtotal}=2}%
    {\printnames[][-\value{maxnamesincross}]{labelname}}%
    {\printnames[][-\value{minnamesincross}]{labelname}}%
    \setunit*{\addcomma\space}\printtext{%
    \printfield[citetitle]{labeltitle}%
    \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}%
    \bibstring{cited}}}%
    {%
    \DeclareNameAlias{sortname}{default}%
    \usebibmacro{usedriver:book}%
    }%
    }%
    {}%
    {}%

    \DeclareCiteCommand{\bbx@crossref@incollection}%
    {}%
    {\ifciteseen{%
    \ifthenelse{\value{listtotal}=2}%
    {\printnames[][-\value{maxnamesincross}]{labelname}}%
    {\printnames[][-\value{minnamesincross}]{labelname}}%
    \setunit{\addspace}%
    \usebibmacro{editorstrg}%
    \setunit*{\addcomma\space}\printtext{%
    \printfield[citetitle]{labeltitle}%
    \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}%
    \bibstring{cited}}}%
    {%
    \DeclareNameAlias{sortname}{default}%
    \usebibmacro{usedriver:collection}%
    }%
    }%
    {}%
    {}%
    \makeatother

    %%% ridefinisco il formato per usare il numero dell'edizione in apice
    \DeclareFieldFormat{edition}{%
    \ifinteger{#1}
    {\textsuperscript{#1}}
    {#1\isdot\setunit{\addcomma\space}}}
    %% imposto l'ordine (e i separatori) dei dati
    \renewbibmacro*{publisher+location+date}{%
    \iflistundef{publisher}
    {\setunit*{\addcomma\space}}
    {\setunit*{\addcolon\space}}%
    \printlist{publisher}%
    \setunit*{\addcomma\space}%
    \printlist{location}%
    \setunit*{\space}%
    \usebibmacro{date}%
    \printfield{edition}%
    \newunit}
    %% elimino la prima occorrenza del campo “edition”
    \usepackage{xpatch}
    \newcommand{\replaceedition}[1]{%
    \xpatchbibdriver{#1}
    {\printfield{edition}%
    \newunit}
    {}%
    {}
    {\typeout{failed to patch driver #1}}
    }
    \replaceedition{book}
    \replaceedition{collection}
    \replaceedition{inbook}
    \replaceedition{incollection}
    \replaceedition{manual}
    %% aggiungo le specifiche per philosophy-verbose
    \xpatchbibmacro{incollection:full}
    {\printfield{edition}%
    \newunit}
    {}%
    {}
    {}
    \xpatchbibmacro{inbook:full}
    {\printfield{edition}%
    \newunit}
    {}%
    {}
    {}
    \xpatchbibmacro{usedriver:collection}
    {\printfield{edition}%
    \newunit}
    {}%
    {}
    {}
    \xpatchbibmacro{usedriver:book}
    {\printfield{edition}%
    \newunit}
    {}%
    {}
    {}
    \begin{document}

    \nocite{*}

    \printbibliography

    \end{document}`

    Ciao
    Ivan

    in risposta a: Personalizzare alcuni aspetti della bibliografia (2) #98895
    Up
    0
    Down
    ::


    Hai ragione. Colpa di uno spazio spurio. Ho scordato di mettere un %
    Nel tuo esempio cerca
    ` \usebibmacro{name:andothers}}
    }`
    e sostituisci con
    ` \usebibmacro{name:andothers}}}
    `

    Ciao
    Ivan

    p.s.
    correggo anche sopra

    in risposta a: Formattazione autore con @incollection (biblatex) #99012
    Up
    0
    Down
    ::

    samiel” post=98588allora ammesso che non trovi la soluzione, prima di postare
    su stacjexchange bisogna determinare se è un problema
    che riguarda solo e specificamente philosophy-verbose.
    cosa in cui purtroppo no sono in grado di darti una mano

    m

    Prova questo. A me funziona. Va testato e in seguito creato il codice anche per @collection/@incollection.
    Rimane un workaround pazzesco. Probabilmente la soluzione è dietro l’angolo, ma non riesco a trovarla.
    In fondo si tratterebbe soltanto di trovare il modo per citare una voce senza però che la voce successiva veda quella citazione.

    `\makeatletter

    \newbibmacro*{usedriver:book}{%
    \renewbibmacro*{bbx:savehash}{}%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{author/editor+others/translator+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{maintitle+title}%
    \newunit
    \printlist{language}%
    \newunit\newblock
    \usebibmacro{byauthor}%
    \newunit\newblock
    \usebibmacro{byeditor+others}%
    \newunit\newblock
    \printfield{edition}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \usebibmacro{series+number}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit
    \printfield{pagetotal}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\addsemicolon\space}\newblock
    \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
    \usebibmacro{related}}
    {}%
    \newunit\newblock
    \usebibmacro{pageref}%
    }

    \DeclareCiteCommand{\bbx@crossref@inbook}%
    {}%
    {\ifciteseen{%
    \ifthenelse{\value{listtotal}=2}%
    {\printnames[][-\value{maxnamesincross}]{labelname}}%
    {\printnames[][-\value{minnamesincross}]{labelname}}%
    \setunit*{\addcomma\space}\printtext{%
    \printfield[citetitle]{labeltitle}%
    \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}%
    \bibstring{cited}}}%
    {%
    \DeclareNameAlias{sortname}{default}%
    \usebibmacro{usedriver:book}%
    }%
    }%
    {}%
    {}%
    \makeatother
    `

    Ciao
    Ivan

    p.s.
    Il problema non riguarda philosophy-classic perché in quel caso il comando che gestisce crossref non esegue alcuna citazione ma semplicemente i chiama una macro.
    Come ipotizzato, è stato un indizio. Non ho dovuto far altro che eliminare la citazione che dava problemi e al suo posto metterci la macro usedriver:book.
    Speriamo che funzioni.

    in risposta a: Personalizzare alcuni aspetti della bibliografia (2) #98893
    Up
    0
    Down
    ::

    Lorloz” post=98591Ciao a tutti,
    mi ricollego a questa discussione, che ha posto alcune questioni che mi interessavano molto mentre cercavo di personalizzare la mia bibliografia per ottenere uno stile non lontano dal modello einaudiano (maiuscoletto con iniziali minuscole per autori citati).
    La soluzione proposta è perfetta e funzionante, e la sto adottando con buonissimi risultati: colgo anche l’occasione per ringraziare chi si è impegnato per venire incontro alle esigenze di noi utenti meno esperti.

    L’unico neo è che, nel caso di voce di bibliografia inserita nel corpo del testo in nota si nota che lo spazio che precede il nome dell’autore è eccessivo.
    Suppongo dipenda dal fatto che la soluzione che adottiamo è una “forzatura” rispetto al sistema di citazione standard con le iniziali maiuscole, e che lo spazio extra sia appunto quello che il programma “prevede” per inserire armoniosamente una lettera che ha una dimensione maggiore.
    Esiste, secondo voi, un sistema per ovviare a questo problema?

    Non ho mai notato quanto dici. Ma forse non mi è chiara una cosa: qualcosa o è nel corpo del testo o è in nota 🙄
    Potresti mostrare un esempio minimo compilabile che riproduce il problema?

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #99010
    Up
    0
    Down
    ::

    samiel” post=98584PS cmq il problema affligge solo philosophy-verbose. con philosophy-classic tutto regolare

    Questo potrebbe essere un indizio. Domani controllo, anche se stasera avevo deciso di gettare la spugna.

    Ciao
    Ivan

    P.s.
    Dovrei avere il tuo indirizzo da qualche parte sul pc. Ora sono su ipad.

    in risposta a: Formattazione autore con @incollection (biblatex) #99008
    Up
    0
    Down
    ::

    samiel” post=98581Per me non c’è problema, ma vuoi postare tu su stackexchange o preferisci lo faccia io?
    Tu sei in grado di spiegare bene le ragioni per cui philosophy non c’entra,
    assai meglio di quanto possa fare io.

    In ogni caso aggiungo un’osservazione (forse la scoperta dell’acqua calda). Vedi
    `\begin{filecontents*}{\jobname.bib}
    @incollection{ kuhn:1980,
    author = “Thomas Kuhn”,
    title = “Logica della scoperta o psicologia della ricerca?”,
    booktitle = “Critica e crescita della conoscenza”,
    editor = “Imre Lakatos and Alan Musgrave”,
    publisher = “Feltrinelli”,
    location = “Milano”,
    year = “1980”,
    pages = “69-93”,
    }
    @book{ kuhn:1982,
    author = “Thomas Kuhn”,
    title = “La struttura delle rivoluzioni scientifiche”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1978”,
    }
    @book{ kuhn:1985,
    author = “Thomas Kuhn”,
    title = “La tensione essenziale”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1985”,
    }
    @collection{ lakatos:1980,
    title = “Critica e crescita della conoscenza”,
    editor = “Imre Lakatos and Alan Musgrave”,
    publisher = “Feltrinelli”,
    location = “Milano”,
    year = “1980”,
    }
    @incollection{ masterman:1980,
    author = “Mary Masterman”,
    title = “La natura di un paradigma”,
    crossref = “lakatos:1980”,
    pages = “129-163”,
    }
    \end{filecontents*}

    \documentclass[a4paper,11pt]{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    \usepackage[italian]{babel}
    \usepackage[babel,italian=guillemets]{csquotes}
    \usepackage[style=philosophy-verbose,backend=biber,scauthors=true,%
    classical=true,firstinits=true,commacit=true,volnumformat=strings,%
    volumeformat=romansc,sorting=nyt,citepages=omit]{biblatex}
    \addbibresource{\jobname.bib}
    \nocite{*}

    \begin{document}
    \printbibliography
    \end{document}`
    Nel primo @incollection (kuhn) ho messo la citazione per intero per evitare il problema
    trattino?/no! nome autore! Nel secondo caso (masterman) ho usato crossref., Ora, la menzione
    della collection risulta diversa:

    — «Logica della scoperta o psicologia della ricerca?», in Critica e crescita
    della conoscenza, a cura di I. Lakatos e A. Musgrave, Feltrinelli, Milano
    1980, pp. 69-93.

    Feltrinelli, Milano 1980.
    Masterman, M., «La natura di un paradigma», in I. Lakatos e A. Musgrave
    (a cura di), Critica e crescita della conoscenza, Feltrinelli, Milano 1980,
    pp. 129-163.

    cioè nel primo caso titolo e poi curatori, nel secondo curatori e poi titolo.
    Non so se vada bene così, se c’è una ragione per questa difformità…

    m

    La difformità è giustificata. Se non c’è crossref ovvero se c’è una sola voce che richiama un’altra attraverso crossref, la forma è quella del tuo primo esempio. Se ci sono almeno due voci con crossref a una stessa voce, quest’ultima viene messa in bibliografia e anche nelle due voci assume la forma di una entry bibliografica: curatori, titolo,… La ragione sta nel reperimento della voce.

    Meglio se scrivi tu su stackexchange. Eventualmente prepariamo assieme un messaggio in privato.

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #99006
    Up
    0
    Down
    ::

    samiel” post=98578Ho capito in astratto la cosa. Con crossref viene interpretato come autore l’editor,
    per cui alla successiva occorrenza l’autore reale è visto come nuovo e pertanto
    inserito ancora con il nome completo. Capisco anche che in senso lato non si tratta
    di un baco tecnico, ma è comunque un uso anomalo rispetto alle consuetudini
    editoriali e al fatto che il lettore capisce benissimo anche se si usa (come si usa sempre)
    il solo trattino lungo. E più di questo non capisco, se entriamo nel fatto tecnico;
    anche da stackexchange nessuna proposta fattiva. Ma ars longa e longa pure
    la tua vita texnica e non… 🙂

    È una situazione sicuramente anomala, che andrebbe corretta. Abbiamo capito il motivo di quello che succede, ma rimane il fatto che là il trattino ci va. Sono anche sicuro che su tex.stackexchange c’è qualcuno che saprebbe risolvere il problema. Sarebbe bene postare l’ultimo codice che ho inviato perché mostra che il problema non ha a che fare con philosophy.

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #99004
    Up
    0
    Down
    ::


    Ecco un altro codice minimale che chiarifica la questione:
    `
    \begin{filecontents}{\jobname.bib}
    @inbook{ kuhn:1980,
    author = “Thomas Kuhn”,
    title = “Logica della scoperta o psicologia della ricerca?”,
    crossref = “lakatos:1980”,
    pages = “69-93”,
    }

    @book{ kuhn:1981,
    author = “Thomas Kuhn”,
    title = “La rivoluzione copernicana”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1981”,
    edition = “3”,
    }

    @book{ kuhn:1982,
    author = “Thomas Kuhn”,
    title = “La struttura delle rivoluzioni scientifiche”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1978”,
    edition = “4”,
    }

    @book{ kuhn:1985,
    author = “Thomas Kuhn”,
    title = “La tensione essenziale”,
    publisher = “Einaudi”,
    location = “Torino”,
    year = “1985”,
    }

    @book{ kuhn:2000,
    author = “Thomas Kuhn”,
    title = “Dogma contro critica”,
    publisher = “Cortina”,
    location = “Milano”,
    year = “2000”,
    }

    @book{ kuhn:2008,
    author = “Thomas Kuhn”,
    title = “Le rivoluzioni scientifiche”,
    publisher = “Il Mulino”,
    location = “Bologna”,
    year = “2008”,
    }

    @book{ lombardi:1991,
    author = “Tiziana Lombardi”,
    title = “Thomas Kuhn e la ricerca storiografica relativa alla
    rivoluzione copernicana”,
    publisher = “Gruppo Editoriale Internazionale”,
    location = “Roma”,
    year = “1995”,
    }

    @book{ lakatos:1980,
    title = “Critica e crescita della conoscenza”,
    editor = “Imre Lakatos and Alan Musgrave”,
    publisher = “Feltrinelli”,
    location = “Milano”,
    year = “1980”,
    edition = “3”,
    }

    @inbook{ masterman:1980,
    author = “Mary Masterman”,
    title = “La natura di un paradigma”,
    crossref = “lakatos:1980”,
    pages = “129-163”,
    }

    \end{filecontents}
    \documentclass[a4paper,11pt]{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}

    \usepackage{csquotes}
    \usepackage[
    backend=biber,
    style=verbose-trad2,%
    sorting=nyt]
    {biblatex}

    \addbibresource{\jobname.bib}

    \makeatletter

    \DeclareCiteCommand{\bbx@crossref@inbook}%
    {}%
    {\usedriver
    {\DeclareNameAlias{sortname}{default}}%
    {\thefield{entrytype}}}%
    {}%
    {}%

    \DeclareBibliographyDriver{inbook}{%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{author/translator+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{title}%
    \newunit
    \printlist{language}%
    \newunit\newblock
    \usebibmacro{byauthor}%
    \newunit\newblock
    \usebibmacro{in:}%
    \iffieldundef{crossref}
    {\usebibmacro{inbook:full}}%
    {\bbx@crossref@inbook{\thefield{crossref}}}%
    }

    \newbibmacro*{inbook:full}{
    \usebibmacro{bybookauthor}%
    \newunit\newblock
    \usebibmacro{maintitle+booktitle}%
    \newunit\newblock
    \usebibmacro{byeditor+others}%
    \newunit\newblock
    \printfield{edition}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \usebibmacro{series+number}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\bibpagerefpunct}\newblock
    \usebibmacro{pageref}%
    \newunit\newblock
    \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
    \usebibmacro{related}}
    {}%
    \usebibmacro{finentry}}

    \makeatother

    \nocite{*}

    \begin{document}

    \printbibliography

    \end{document}
    `
    Come si può vedere, lo stile caricato è verbose-trad2 che, per quanto riguarda la bibliografia coincide con lo stile authortitle. verbose-trad2 è quello su cui si basa philosophy-verbose. È stato ridefinito il driver @inbook in questo modo. Se è presente il campo crossref, la voce @inbook, subito dopo la macro “in:”, che è quella che stampa, per l’appunto, la stringa “in:”, esegue il comando \bbx@crossref@inbook il quale, a sua volta, non fa altro che stampare la voce completa attraverso il comando
    \usedriver{…}{\thefield{entrytype}}. Questi codici sono più semplici di quelli contenuti in philosophy, ma sono sufficienti per capire che non si tratta di un vero e proprio baco degli stili, come anch’io avevo inizialmente pensato, ma di un comportamento coerente. Coerente ma non gradito, nemmeno da me 🙁 Quindi possiamo anche chiamarlo baco 🙄

    La voce

    — “Logica della scoperta o psicologia della ricerca?” In: Imre Lakatos and Alan Musgrave, eds. Critica e crescita della conoscenza. 3rd ed. Milano: Feltrinelli, 1980.

    di fatto, contiene al suo interno la voce relativa a Imre Lakatos and Alan Musgrave, che viene citata internamente attraverso \bbx@crossref@inbook. Quindi la successiva voce, ovvero

    Kuhn, Thomas. La rivoluzione copernicana. 3rd ed. Torino: Einaudi, 1981

    come ultima citazione vede proprio quella del testo curato da Imre Lakatos and Alan Musgrave. Se non ci fosse crossref, quest’ultima voce non sarebbe citata, anche se presente, e il problema non si porrebbe.
    Ora, la macro che stampa il nome dell’autore, esegue un condizionale che, semplificando, funziona così. Se i campi fullhash (che contiene i nomi della voce corrente) e \bbx@lasthash (che contiene i nomi della voce precedente) sono uguali allora stampa un trattino, altrimenti stampa la lista dei nomi (nell’esempio, il nome completo di Kuhn). Nel nostro caso, l’ultima lista di nomi è appunto Imre Lakatos and Alan Musgrave, che è diversa da quella della voce corrente (Thomas Kuhn) e quindi il nome viene ripetuto.

    Ho provato in tutti i modi a cambiare il contenuto di \bbx@lasthash ma senza successo.

    Che si tratti di un problema che va risolto è evidente da questa considerazione. Se scriviamo due voci @inbook una delle quali usa il campo crossref e l’altra no, ci accorgiamo che il problema c’è solo nel primo caso, pur essendo le due voci identiche nell’output. È solo diverso il modo in cui sono generate. Per rendersene conto è sufficiente compilare l’esempio sopra modificando la voce
    `@inbook{ kuhn:1980,
    author = “Thomas Kuhn”,
    title = “Logica della scoperta o psicologia della ricerca?”,
    crossref = “lakatos:1980”,
    pages = “69-93”,
    }
    `
    in questa
    `@inbook{ kuhn:1980,
    author = “Thomas Kuhn”,
    title = “Logica della scoperta o psicologia della ricerca?”,
    booktitle = “Critica e crescita della conoscenza”,
    editor = “Imre Lakatos and Alan Musgrave”,
    publisher = “Feltrinelli”,
    location = “Milano”,
    year = “1980”,
    edition = “3”,
    pages = “69-93”,
    }`

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #99000
    Up
    0
    Down
    ::


    1) non si tratta di un vero baco, come avevo detto precedentemente. Il motivo per cui non viene messo il trattino al posto del nome è che la voce precedente contiene una citazione a un’altra voce, attraverso il campo crossref. Quindi, dal punto di vista della voce successiva, l’ultimo autore citato è quello relativo alla voce richiamata con crossref. Essendo questo diverso, non viene messo il trattino nella voce successiva. Il comportamento è quindi coerente, anche se non accettabile in toto.
    Detto questo, non ho la più pallida idea di come risolvere il problema. La teoria è questa: serve un comando che, dopo la citazione della voce contenuta in crossref, elimini l’ultimo nome in memoria ovvero faccia si che l’ultimo nome in memoria sia quello della voce madre che contiene il campo crossref. In rete non ho trovato nulla. Serve un esempio veramente minimo, da sottoporre eventualmente a qualche guru.

    Per il secondo punto, nel tuo caso, risolvi con
    `
    \DeclareCiteCommand{\bbx@crossref@inbook}%
    {}%
    {\ifciteseen{%
    \ifthenelse{\value{listtotal}=2}%
    {\printnames[][-\value{maxnamesincross}]{labelname}}%
    {\printnames[][-\value{minnamesincross}]{labelname}}%
    \setunit*{\addcomma\space}\printtext{%
    \printfield[citetitle]{labeltitle}%
    \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}%
    \bibstring{cited}}}%
    {\usedriver{\DeclareNameAlias{sortname}{scdefault}}{\thefield{entrytype}}}}%
    {}%
    {}%
    `
    Questo codice funziona solo se si imposta l’opzione scauthorsbib. Correggerò meglio negli stili.

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #98998
    Up
    0
    Down
    ::

    samiel” post=98542

    Provato a compilare due volte?

    Sì, anche tre…. E poi altra cosa che mi pare strana,
    sempre con crossref:

    T. Kuhn, La struttura delle rivoluzioni scientifiche, Einaudi, Torino 19784 .
    — Logica della scoperta o psicologia della ricerca?, in I. Lakatos e A. Musgrave, a cura di, Critica e crescita della conoscenza,
    Feltrinelli, Milano 1980 , pp. 69-93.
    T. Kuhn, La rivoluzione copernicana, Einaudi, Torino 19813 .
    — La tensione essenziale, Einaudi, Torino 1985.
    — Dogma contro critica, Cortina, Milano 2000.
    — Le rivoluzioni scientifiche, Il Mulino, Bologna 2008.
    I. Lakatos e A. Musgrave, a cura di, Critica e crescita della conoscenza, Feltrinelli, Milano 19803 .
    T. Lombardi, Thomas Kuhn e la ricerca storiografica relativa alla rivoluzione copernicana, Gruppo Editoriale Internazionale,
    Roma 1995.
    M. Masterman, La natura di un paradigma, in I. LAKATOS et al., Critica e crescita della conoscenza, cit., pp. 129-163.

    Nel testo di Kuhn, @inbook o @incollection che sia, il nome dei curatori Lakatos – Musgrave è citato in minuscolo entrambi i nomi,
    invece in quello successivo della Masterman c’è solo Lakatos (con “et al.”) tutto in maiuscoletto. Perché questa differenza?

    È un baco di philosophy. Serio, ad una prima lettura.
    Serve comunque esempio minimo, perché non ho la voce relativa a Masterman

    Ciao
    Ivan

    in risposta a: Formattazione autore con @incollection (biblatex) #98996
    Up
    0
    Down
    ::


    Strano. Provato a compilare due volte?
    Potrebbe essere dovuto all’uso di cross ref. Domani indago meglio.

    Ciao
    Ivan

Stai visualizzando 15 risposte – dal 946 al 960 (di 3,536 totali)

Go to top