daroczig's homepage | R, LaTeX and other

Harvard style citation in Hungarian language (HUN)

Előzmények:

A tex.statxchange.com oldalon igen nagy segítséggel sikerült megoldást találni a problémára. Ehhez haszbáljuk a biblatex csomagot!

E mellett szükséges lesz a magyar nyelvi definícióra is:

Egy egyszerű dokumentum a következőképpen nézhet ki:

\documentclass[12pt,a4paper,oneside,openright]{report}
\usepackage{t1enc}
\usepackage[utf8]{inputenc}
\usepackage[english,magyar]{babel}
\def\magyarOptions{hyphenation=huhyphn}
 
\usepackage[style=magyar,babel=other]{biblatex}
\bibliography{demo}
 
\begin{document}
\textbf{Hungarian citation with 1 author:} \cite{mezei_1999}
 
\textbf{Hungarian citation with 2 authors:} \cite{david_snijders}
 
\textbf{Hungarian citation with 3 authors:} \cite{gyuris_molnar_szanto_1992}
 
\textbf{Hungarian citation with 4 authors:} \cite{benyei_guraly_gyori_mezei_2000}
 
\textbf{Hungarian book:} \cite{gyori_guraly_pelle_grof_2006}
 
\textbf{English citation with 1 author:} \cite{cordray_pion_1991}
 
\textbf{English citation with 2 author:} \cite{tauber_siebel_1991}
 
\textbf{English citation with 3 authors:} \cite{berk_kriegler_ylviasker_2005}
 
\newpage
 
\printbibliography
 
\end{document}
@article{mezei_1999,
	title = {Látszólagos analógia a történelem előtti időkkel. {H}ajléktalanok {M}agyarországon a 90-es években},
	number = {2},
	journal = {Belügyi Szemle},
	author = {György Mezei},
	pages={79--90},
	year = {1999},
	hyphenation={magyar}
},
 
@article{david_snijders,
	title = {A budapesti hajléktalanok számának becslése},
	number = {3},
	journal = {Szociológiai Szemle},
	author = {Beáta Dávid and Tom Snijders},
	year = {2000},
	pages={60--75},
	hyphenation={magyar}
},
 
@incollection{tauber_siebel_1991,
	author={{C. M.} Tauber and P. Siebel},
	title={Counting the {N}ation’s {H}omeless {P}opulation in the 1990 {C}ensus},
	booktitle={ Enumerating Homeless},
	editor={{C. M.} Tauber},
	year= {1991},
	hyphenation={english}
},
 
@incollection{berk_kriegler_ylviasker_2005,
	title={Counting the {H}omeless in {L}os {A}ngeles {C}ounty},
	booktitle = {Probability and Statistics: Essays in Honor of David A. Freedman},
	publisher = {Institute of Mathematical Statistics, UCLA},
	author = {Richard Berk and Brian Kriegler and Donald Ylvisaker},
	year = {2008},
	pages = {127–141},
	hyphenation={english}
},
 
@article{benyei_guraly_gyori_mezei_2000,
	title = {Tíz év után},
	number = {1},
	journal = {Esély},
	author = {Zoltán Bényei and Zoltán Gurály and Péter Győri and György Mezei},
	year = {2000},
	hyphenation={magyar}
},
 
@article{gyuris_molnar_szanto_1992,
	title = {Hajléktalanok. {K}érdőíves vizsgálat 1992-ben},
	number = {1},
	journal = {Család, Gyermek, Ifjúság},
	author = {Tamás Gyuris and László {Molnár} and Róbert Szántó},
	year = {1992},
	pages = {18--23},
	hyphenation={magyar}
},
 
@article{cordray_pion_1991,
	title = {{W}hat’s {B}ehind the volumes? {D}efinitional {I}ssues in {C}ounting {H}omeless},
	number = {2/3},
	journal = {Housing Policy Debate},
	author = {Davies S. Cordray},
	year = {1991},
	pages={587--616},
	hyphenation={english}
},
 
@book{gyori_guraly_pelle_grof_2006,
	author={Péter Győri and Zoltán Gurály and József Pelle and András Gróf},
	title={„{F}ebruár {H}armadika {M}unkacsoport” tájékoztatása a {B}udapesten élő hajléktalan emberek alvóhelyeik szerint a 2006. február 3-i kérdőíves adatfelvétel számai alapján},
	publisher={Bmszki},
	year= {2006},
	hyphenation={magyar}
}

Forrásállományok:

Lássuk az eredményt: demo.pdf

Mint látható, nem minden tökéletes, de többnyire működik! Minden szíves javaslatot (esetleg: megoldást) nagyon szívesen látok!

TODO list:

  • \citep, \citet működésre bírása,
  • sokszerzős művek minden szerzőjének feltüntetése a bibliográfiában (jelenleg: “et al.”),
  • az összes babel szöveg magyarra történő lefordítása (english.lbx alapján – része minden biblatex telepítésnek),
  • angol nevek fordított szedése vessző nélkül a második szerzőtől.

A natbib-ben megszokott parancsok használatához a csomagot a “natbib=true” opcióval töltsük be!

\usepackage[style=magyar,natbib=true,babel=other]{biblatex}

There are 12 Comments to "Harvard style citation in Hungarian language (HUN)"

  • Daróczi Gergely says:

    Ami kimaradt a fentebbiekből: a magyar nyelvi definíciós állományok ‘/usr/share/[…]/biblatex’ (disztribúciónként eltérő) alkönyvtáraiba történő bemásolása után javasolt a ‘texhash’ root-ként való futtatása, majd a tex állomány pdf-é történő varázslásához a ‘pdflatex’, ‘bibtex’, végül újra a ‘pdflatex’ parancsok futtatása. Ezen utóbbiakat a legtöbb TeX editor/IDE támogatja gombnyomásra is.

  • Hunyadi Mátyás says:

    Köszönöm a bejegyzést, segítségével belevágtam a biblatex-be és jobb eredményt kaptam, mint az eddigi biblatex-multibib-huplain próbálkozásom.

    A magyarosítás közül csak a magyar.lbx-et tartottam meg, és egészítettem ki. Az “in” bejegyzést módosítottam, mivel a hivatkozás felsorolásánál egyértelmű a cikk címe és a folyóirat szétválasztása.

    A többit pedig a biblatex által szolgáltatott stílusokkal oldottam meg. A nevek magyar sorrendjét a http://tex.stackexchange.com/questions/17583/biblatex-remove-commas-between-last-and-first-names-in-bibliography/17593#17593 bejegyzésből vettem:

    \usepackage[style=numeric-comp,
    firstinits=true,
    natbib=true,
    babel=other,
    backref=true,
    backend=biber,sortlocale=hu]{biblatex}
    \DeclareNameAlias{default}{last-first}

    \renewbibmacro*{name:last-first}[4]{%
    \ifuseprefix
    {\usebibmacro{name:delim}{#3#1}%
    \usebibmacro{name:hook}{#3#1}%
    \ifblank{#3}{}{%
    \ifcapital
    {\mkbibnameprefix{\MakeCapital{#3}}\isdot}
    {\mkbibnameprefix{#3}\isdot}%
    \ifpunctmark{‘}{}{\bibnamedelimc}}%
    \mkbibnamelast{#1}\isdot
    \ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
    % \ifblank{#2}{}{\addcomma\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% DELETED
    \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% NEW
    {\usebibmacro{name:delim}{#1}%
    \usebibmacro{name:hook}{#1}%
    \mkbibnamelast{#1}\isdot
    \ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
    % \ifblank{#2#3}{}{\addcomma}% DELETED
    \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}%
    \ifblank{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}}}

    Azt nem tudom, hogy a biber tudja-e magyar sorrendbe rakni a hivatkozásokat, vagy ez egy olyan opció, amire nem reagál és az alapbeállítás szerinti angollal megy?

    magyar.lbx tartalma:

    % $Id: magyar.lbx,v 0.01 $

    \ProvidesFile{magyar.lbx}
    \InheritBibliographyExtras{english}
    \InheritBibliographyStrings{english}
    [\abx@lbxid $Id: magyar.lbx,v 0.01 2011/01/12 19:18 dg testing $]

    % STATUS OF THIS FILE
    % * testing

    \DeclareRedundantLanguages{magyar}{magyar,
    hungarian}

    \DeclareBibliographyExtras{%
    \protected\def\nameprint#1#2{#1\space#2}
    }

    \DeclareBibliographyStrings{%
    bibliography = {{Felhasznált\addspace{}irodalom}{Felhasznált\addspace{}irodalom}},
    references = {{Hivatkozások}{Hivatkozások}},
    editor = {{szerk\addot}{szerk\adddot}},
    byeditor = {{szerk\addot}{szerk\adddot}},
    in = {{}{}},
    page = {{old\addot}{old\adddot}},
    pages = {{old\addot}{old\adddot}},
    and = {{és}{és}},
    andothers = {{et\addabbrvspace al\adddot}{et\addabbrvspace al\adddot}},
    andmore = {{et\addabbrvspace al\adddot}{et\addabbrvspace al\adddot}},
    phdthesis = {{PhD\addspace{}disszertáció}{PhD\addspace{}dissz\adddot}},
    see = {{lásd}{ld\adddot}},
    seealso = {{lásd még}{ld\adddot}},
    backrefpage = {{hivatkozási\addspace{}oldal}{hiv\adddotspace old\adddot}},
    backrefpages = {{hivatkozási\addspace{}oldalak}{hiv\adddotspace old\adddot}},
    january = {{január}{jan\adddot}},
    february = {{február}{febr\adddot}},
    march = {{március}{márc\adddot}},
    april = {{április}{árp\adddot}},
    may = {{május}{máj\adddot}},
    june = {{június}{jún\adddot}},
    july = {{július}{júl\adddot}},
    august = {{augusztus}{aug\adddot}},
    september = {{szeptember}{szept\adddot}},
    october = {{október}{okt\adddot}},
    november = {{november}{nov\adddot}},
    december = {{december}{dec\adddot}},
    }

    \endinput

    Üdv,
    Matyi

    • Daróczi Gergely says:

      Kedves Matyi!

      Nagyon köszönöm a kiegészítést/módosításokat. Próbálom tesztelni is, de egyelőre elakadtam a biber telepítésével Arch Linux alatt 🙁
      Jelentkezem majd, ha szóra bírtam a programot, köszönöm még egyszer!

      Üdv,
      Gergő

    • Daróczi Gergely says:

      Kis kínlódás után megbírkóztam a biber-el, az eredmény itt látható a fenti demo.tex állományon futtatva.

      Nem tudom, hogy így kellene-e kinézzen, ugyanis így a “szerző-év” típusú hivatkozási forma eltűnt, és maradtak helyettük a szögletes zárójelben feltüntetett számok, amelyre társadalomtudományi területen sokszor allergiásak 🙁

  • Galla says:

    Szia!

    Nem vagyok pro latex-ből ezért szeretném kérdezni, hogy a nyelvi állományokat hova kell bemásolni?
    Köszi a segítséget (és a hasznos csomagot…)!

    üdv,
    galla

    • Daróczi Gergely says:

      Szia!

      Elnézést a megkésett válaszért.
      A könyvtár kapcsán l. az első, fentebbi hozzászólásomat (tehát pl. a `texhash` futtatása is szükséges).
      Az igazat megvallva nagyon rég nem foglalkoztam ezzel a problémakörrel, váltottam Pandoc markdownra, amelyből szép LaTeX -> pdf, ill. docx/odt dokumentumok is készíthetők, és a hivatkozásokat is szépen kezeli a CSL fájloknak köszönhetően.

      Sok sikert!

      Üdv,
      Gergő

  • Molnár Attila says:

    Minden szuper, egy kivétellel: Nekem ez a demo úgy futott le, hogy az angol vezetéknevek után nem rakott vesszőt. Így viszont nagyon bénán néz ki az irodalomjegyzékem, kicsit azt a kort idézi, mikor még Nietzsche Frigyes műveire hivatkoztak.

    Miért tűnhetett el? Ubuntut használok standard módon TeXLive-val.

    • Daróczi Gergely says:

      Az angol nyelvű tételeknél is szerepel a nyelv, pl.: “hyphenation={english}”?

      • Molnár Attila says:

        Ja ez a demo.tex-hel és demo.bib-bel történt. Csak ezeket a fájlokat (+magyar definíciós cuccokat) és a(z új) magyar ldf-et tartalmazza a könyvtár.

        • Molnár Attila says:

          Megvan, az english.lbx-emet nem írtam át, most gyönyörűszuper. Nagyon szuper, jajistenem, szuper. Szuper. Fantasztikus. Nálam alapjában nem volt egyébként semmilyen hasonló \protected\def\nameprint parancs ott, szóval valszeg ez lehetett a baj, hogy azonos módon kezelte.

          (ez biztos nagyon newbie okoskodás, de az english.lbx-et nem szabad duplán használni, könyvtárba betenni mint a magyart (én legalábbis egy ideig ezt próbáltam), mert keresztbe hal a mindenség.)

          Tök jó, kicsit kezdtem izgulni, holnapután már le kell adni a (word-ös) kiadónak a cuccot… :S

          Mégegyszer köszi ezt az oldalt, meg amiken utánajártál, úgy ahogy van!

          • Daróczi Gergely says:

            Remek hír, nagyon örülök, hogy működik végül!
            Az igazat megvallva egy jó ideje (mióta megtaláltam a Pandoc-ot) nem foglalkozok LaTeX-el, és a jelen cikkecske írása óta a biblatex is rengeteget változhatott – de ezek szerint még megy 🙂
            Sik sikert az anyag leadásához!

  • Molnár Attila says:

    Közben egy pdflatexes és bibtexes output:

    3 warning volt és 2 overfullhbox, a két warning:

    Package biblatex Warning: ‘babel’ detected but ‘csquotes’ missing.
    (biblatex) Loading ‘csquotes’ recommended.

    (./demo.aux)

    Package magyar.ldf Warning: No effect of \def\magyarOptions{…}
    (magyar.ldf) please move it before \usepackage[magyar]{babel}.

    % kipróbáltam így is, nem volt semmi változás

    Package biblatex Warning: Data encoding is ‘utf8’.
    (biblatex) Use backend=biber.

    BIBTEX:
    *****
    ***** BibTeX output:
    ***** cd “/home/attila/Dropbox/MA_MA60/daroczi”
    ***** bibtex demo
    *****
    This is BibTeX, Version 0.99c (TeX Live 2009/Debian)
    The top-level auxiliary file: demo.aux
    The style file: biblatex.bst
    Database file #1: demo-blx.bib
    Database file #2: demo.bib
    Biblatex version: 1.7

Write a Comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 

 

Navigation