Fix BibTeX URLs and long lines

/ Published in: Bash
Save to your folder(s)

The tetex implementation of BibTeX, LaTeX's bibliography tool, forcibly breaks lines above a certain length (79 chars) by inserting % signs and line feeds, unless they can be broken between words. This is a problem when URLs are referenced, or if control sequences without spaces between them are used.

The following solution using sed improves on the one given in the post above in that it works if a line is broken twice or more times. It can be used as an example on how to concatenate lines ending with a specific character indicating continuation.

Copy this code and paste it in your HTML
  1. # shell functions save a lot of typing...
  2. function fixbbl()
  3. {
  4. # This will overwrite the target file in-place
  5. sed -i ':s
  6. /%$/{
  7. N
  8. bs
  9. }
  10. s/%\n//g' "$1"
  11. }
  13. # usage:
  14. fixbbl document.bbl


Report this snippet


RSS Icon Subscribe to comments

You need to login to post a comment.