X-Git-Url: https://git.donarmstrong.com/?p=org-ref.git;a=blobdiff_plain;f=org-ref.el;h=71252ebccd34183bb0a2f0db2b6d32177622dbd5;hp=4ad23bd0023dff86aaa39525e99965a46b7339e0;hb=5f80ebd42388dea16aeb397e0685500c4101f9cf;hpb=837a40a0aa440126af8ca228565373082f460a26 diff --git a/org-ref.el b/org-ref.el index 4ad23bd..71252eb 100644 --- a/org-ref.el +++ b/org-ref.el @@ -41,6 +41,7 @@ (require 'helm-config) (require 'helm-bibtex) (require 'org) +(require 'org-element) ;; * Custom variables (defgroup org-ref nil @@ -81,11 +82,9 @@ You should use full-paths for each file." '(("article" . "%a, %t, %j, %v(%n), %p (%y). link. doi.") ("book" . "%a, %t, %u (%y).") - + ("techreport" . "%a, %t, %i, %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) @@ -548,9 +547,15 @@ Format according to the type in `org-ref-bibliography-entry-format'." ;; unescape the & (setq output (replace-regexp-in-string "\\\\&" "&" output)) ;; hack to replace {} around text - (setq output (replace-regexp-in-string " {\\(.*\\)} " " \\1 " output)) + (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 " link\\." "" output)) + ;; change double dash to single dash + (setq output (replace-regexp-in-string "--" "-" output)) + (setq output (replace-regexp-in-string " doi\\." "" output)) (format "
  • [%s] %s
  • " key key output))) @@ -2747,7 +2752,7 @@ Shows bad citations, ref links and labels" (setq keys (org-ref-split-and-strip-string link-string)) (setq years (mapcar 'org-ref-get-citation-year keys)) (setq data (mapcar* (lambda (a b) `(,a . ,b)) years keys)) - (setq data (cl-sort data (lambda (x y) (< (string-to-int (car x)) (string-to-int (car y)))))) + (setq data (cl-sort data (lambda (x y) (< (string-to-number (car x)) (string-to-number (car y)))))) ;; now get the keys separated by commas (setq keys (mapconcat (lambda (x) (cdr x)) data ",")) ;; and replace the link with the sorted keys