biblatex で使用する文字列内の囲み中括弧を自動的に削除するように LaTeX に指示するにはどうすればよいでしょうか?

biblatex で使用する文字列内の囲み中括弧を自動的に削除するように LaTeX に指示するにはどうすればよいでしょうか?

私はbiblatexを参考文献管理ツールReferencerと一緒に使っています。bibファイルのurlフィールドを使ってページにリンクしたいのですが、Referencerには次のような形式のurlがあります。

url = {{ http://... }}

通常の形式(単一の中括弧のみ)ではなく、 を使用します。URL フィールドは biblatex で文字どおりに解釈されるため、{ http:// ... }pdf にリンクが表示されますが、結果的に機能しません。Referencer で参考文献ファイルを変更するたびに中括弧が再び表示されるため、bib ファイルを調べて余分な中括弧を削除するのは解決策になりません。LaTeX に結果を渡す前に自動的に中括弧を削除するように指示する方法はありますか\href?

答え1

biblatex 2.0+ および biber 1.0+ を使用していることを確認し、プリアンブルに次の内容を含めます。

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite]{
      \step[fieldsource=url,
            match=\regexp{\A\{(.+)\}\z},
            replace=$1]
    }
  }
}

もちろん、正規表現は好みに合わせて調整できます。現在のbiblatexマニュアルのセクション 4.5.2 を参照してください。

関連情報