diff options
Diffstat (limited to 'lib/bib-key.awk')
| -rw-r--r-- | lib/bib-key.awk | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/bib-key.awk b/lib/bib-key.awk index 41534ba..4223155 100644 --- a/lib/bib-key.awk +++ b/lib/bib-key.awk @@ -4,14 +4,12 @@ # <surname><year><word>, e.g. knuth1984literate. function bib_pass(raw) { - if (bib_out_n++) - print "" + bib_sep() print raw } function bib_entry(type, key, k, n) { - if (bib_out_n++) - print "" + bib_sep() k = bib_mkkey() # disambiguate collisions with b, c, ... suffixes if (k in BIB_KEYS_SEEN) { @@ -30,10 +28,9 @@ function bib_mkkey( a, y, t, surname, word, n, parts, i, w) { t = bib_get("title") # surname of the first author + a = bib_clean(a) if (match(a, / [Aa][Nn][Dd] /)) a = substr(a, 1, RSTART - 1) - gsub(/[{}]/, "", a) - a = bib_trim(a) if (index(a, ",") > 0) surname = substr(a, 1, index(a, ",") - 1) else { @@ -52,7 +49,7 @@ function bib_mkkey( a, y, t, surname, word, n, parts, i, w) { y = "" # first significant word of the title - gsub(/[{}]/, "", t) + t = bib_clean(t) word = "" n = split(tolower(t), parts, /[^a-z0-9]+/) for (i = 1; i <= n; i++) { |