'(("article" . "%a, %t, <i>%j</i>, <b>%v(%n)</b>, %p (%y). <a href=\"%U\">link</a>. <a href=\"http://dx.doi.org/%D\">doi</a>.")
("book" . "%a, %t, %u (%y).")
-
+ ("techreport" . "%a, %t, %u (%y).")
("proceedings" . "%e, %t in %S, %u (%y).")
-
("inproceedings" . "%a, %t, %p, in %b, edited by %e, %u (%y)"))
-
"String to format an entry. Just the reference, no numbering at the beginning, etc... see the `org-ref-reftex-format-citation' docstring for the escape codes."
:type 'string
:group 'org-ref)
(insert-file-contents file)
(bibtex-search-entry key nil 0)
(setq bibtex-entry (bibtex-parse-entry))
+ ;; downcase field names so they work in the format-citation code
+ (dolist (cons-cell bibtex-entry)
+ (setf (car cons-cell) (downcase (car cons-cell))))
(setq entry-type (downcase (cdr (assoc "=type=" bibtex-entry))))
(setq format (cdr (assoc entry-type org-ref-bibliography-entry-format)))
(if format
(setq entry (org-ref-reftex-format-citation bibtex-entry format))
+ ;; if no format, we use the bibtex entry itself as a fallback
(save-restriction
(bibtex-narrow-to-entry)
(setq entry (buffer-string)))))
(defun org-ref-get-bibtex-entry-html (key)
"Return an html string for the bibliography entry corresponding to KEY."
- (format "<li><a id=\"%s\">[%s] %s</a></li>"
- key key (org-ref-get-bibtex-entry-citation key)))
+ (let ((output))
+ (setq output (org-ref-get-bibtex-entry-citation key))
+ ;; unescape the &
+ (setq output (replace-regexp-in-string "\\\\&" "&" output))
+ ;; hack to replace {} around text
+ (setq output (replace-regexp-in-string "{" "" output))
+ (setq output (replace-regexp-in-string "}" "" output))
+ ;; get rid of empty parens
+ (setq output (replace-regexp-in-string "()" "" output))
+ ;; get rid of empty link and doi
+ (setq output (replace-regexp-in-string " <a href=\"\">link</a>\\." "" output))
+ ;; change double dash to single dash
+ (setq output (replace-regexp-in-string "--" "-" output))
+ (setq output (replace-regexp-in-string " <a href=\"http://dx\\.doi\\.org/\">doi</a>\\." "" output))
+ (format "<li><a id=\"%s\">[%s] %s</a></li>"
+ key key output)))
(defun org-ref-get-html-bibliography ()
"Create an html bibliography when there are keys."