[RISOLTO] hyperref: nuovo comando partendo da autoref

  • Creatore
    Topic
  • #110596
    marcocurreli
    Partecipante
      Up
      0
      Down
      ::


      Buona sera a tutti. Questo è il mio primo intervento su questo forum.
      Innanzitutto complimenti per il sito e per il forum, che seguo abbastanza di frequente.

      Il mio problema è questo: nei rimandi alle varie sezioni del testo dovrei scrivere il nome dei sezionamenti in forma abbreviata (Cap., Sez. etc.) nei riferimenti tra parentesi, e il forma normale (capitolo, sezione etc.) negli altri casi; per cui stavo pensando di creare un nuovo comando modificando \autoref, per esempio \shortautoref. Avendo il pacchetto babel caricato, posso definire il comando chapterautorefname:
      `\addto\extrasitalian{%
      \def\chapterautorefname{Cap.}%
      }`
      che però non mi risolve il problema, in quanto hyperref dà la precedenza a *autorefname (se esiste) rispetto a refname.
      C’è un modo per definire due nuovi comandi così da poter scegliere se usare refname o autorefname?

      Grazie,
      Marco

    Visualizzazione 0 filoni di risposte
    • Autore
      Risposte
      • #110597
        marcocurreli
        Partecipante
          Up
          0
          Down
          ::


          Alla fine ho risolto con uno stratagemma:
          `
          \usepackage[interlingua,italian]{babel}

          % riferimento non tra parentesi; esempio: sezione 2.1 (titolo della sezione), pag. 27
          \newcommand{\fullref}[1]{\autoref{#1} (~\nameref{#1}~), pag.~\pageref{#1}}

          %riferimento tra parentesi; esempio: sez. 2.1 p. 27
          \addto\extrasinterlingua{\def\sectionautorefname{sez.}}

          \newcommand{\shortref}[1]{%
          \foreignlanguage{interlingua}{%
          \autoref{#1} p.~\pageref{#1}}%
          }
          `
          (Ho provato ad usare la macro \babelprovide, ma è disponibile solo dalla recentissima versione 3.10.)

      Visualizzazione 0 filoni di risposte
      • Devi essere connesso per rispondere a questo topic.

      Go to top