Move editor name in biblatex bibliography

Unfortunately, biblatex's localisation interface is simply not equipped to deal with situations like this where the location of the bibstring needs to change.

At some point we will have to think about reworking the localisation interface to be more flexible and to allow it to support more languages (especially those of a non-Western variety).

For now all I can offer are redefinitions of the macros to move around the by... strings. I hope I caught all necessary macros.

\documentclass{article}

\usepackage[backend=biber,
  style=authoryear-comp,
  abbreviate=false,
  language=nynorsk,
  sortlocale=nn_NO]{biblatex}

\DefineBibliographyStrings{nynorsk}{
  bibliography = {Tilvisingar},
  editor       = {styrar},
  editors      = {styrarar},
  founder      = {grunnar},
  founders     = {grunnarar},
  references   = {Tilvisingar},
  byeditor     = {styrde},
  byfounder    = {grunnade},
  volume       = {band},
  volumes      = {band},
}

\renewbibmacro*{byauthor}{%
  \ifboolexpr{
    test \ifuseauthor
    or
    test {\ifnameundef{author}}
  }
    {}
    {\printnames[byauthor]{author}%
     \setunit{\addspace}%
     \usebibmacro{bytypestrg}{author}{author}}}

\newbibmacro*{byeditorx:i}[1]{%
  \ifnameundef{#1}
    {}
    {\printnames[by#1]{#1}%
     \setunit{\addspace}%
     \usebibmacro{bytypestrg}{#1}{editor}%
     \newunit}}

\renewbibmacro*{byeditor}{%
  \usebibmacro{byeditorx:i}{editor}%
  \usebibmacro{byeditorx}}

\renewbibmacro*{byeditorx}{%
  \usebibmacro{byeditorx:i}{editora}%
  \usebibmacro{byeditorx:i}{editorb}%
  \usebibmacro{byeditorx:i}{editorc}}

\renewbibmacro*{bytranslator}{%
  \ifnameundef{translator}
    {}
    {\printnames[bytranslator]{translator}%
     \setunit{\addspace}%
     \bibstring{bytranslator}}}

\renewbibmacro*{byeditor+others}{%
  \ifnameundef{editor}
    {}
    {\printnames[byeditor]{editor}%
     \setunit{\addspace}%
     \usebibmacro{byeditor+othersstrg}%
     \clearname{editor}%
     \newunit}%
  \usebibmacro{byeditorx}%
  \usebibmacro{bytranslator+others}}

\renewbibmacro*{bytranslator+others}{%
  \ifnameundef{translator}
    {}
    {\printnames[bytranslator]{translator}%
     \setunit{\addspace}%
     \usebibmacro{bytranslator+othersstrg}%
     \clearname{translator}%
     \newunit}%
  \usebibmacro{withothers}}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@BOOK{flo1906,
  author    = {R. Flo},
  title     = {Midlandsmaal},
  year      = {1906},
  editor    = {Arne Garborg},
  location  = {Kristiania},
  publisher = {Olaf Norli},
}
@BOOK{ordbogoverdetdanskesprog,
  title       = {Ordbog over det danske sprog},
  date        = {1919/1956},
  editor      = {H. Juul-Jensen},
  editora     = {Verner Dahlerup},
  editoratype = {founder},
  location    = {København},
  publisher   = {Gyldendalske boghandel. Nordisk forlag},
  volumes     = {28},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

Flo, R. (1906). Midlandsmaal. Arne Garborg styrde. Kristiania: Olaf Norli.//Juul-Jensen, H., styrar (1919–1956). Ordbog over det danske sprog. Verner Dahlerup grunnade. 28 band. København: Gyldendalske boghandel. Nordisk forlag.

Tags:

Biblatex

Biber