X-Git-Url: https://git.donarmstrong.com/?p=org-ref.git;a=blobdiff_plain;f=org-ref.el;h=3de70ac3284be25767f5b3513e5cb5dd042648f7;hp=aecf1aea111d2ba034ec11f03f54673bbdf4ba18;hb=f441536510bee202f0c7ce373cc0d60b88a267fd;hpb=c8f07d16dd5ca2df8c0a913ffd5384e68e40a68e diff --git a/org-ref.el b/org-ref.el index aecf1ae..3de70ac 100644 --- a/org-ref.el +++ b/org-ref.el @@ -458,8 +458,11 @@ environment, only %l is available." ((= l ?E) (car (reftex-get-bib-names "editor" entry))) ((= l ?h) (org-ref-reftex-get-bib-field "howpublished" entry)) ((= l ?i) (org-ref-reftex-get-bib-field "institution" entry)) - ((= l ?j) (org-ref-reftex-get-bib-field "journal" entry)) - ((= l ?k) (org-ref-reftex-get-bib-field "key" entry)) + ((= l ?j) (let ((jt (reftex-get-bib-field "journal" entry))) + (if (string= "" jt) + (reftex-get-bib-field "journaltitle" entry) + jt))) + ((= l ?k) (org-ref-reftex-get-bib-field "=key=" entry)) ((= l ?m) (org-ref-reftex-get-bib-field "month" entry)) ((= l ?n) (org-ref-reftex-get-bib-field "number" entry)) ((= l ?o) (org-ref-reftex-get-bib-field "organization" entry)) @@ -507,6 +510,7 @@ Format according to the type in `org-ref-bibliography-entry-format'." (with-temp-buffer (insert-file-contents file) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key nil 0) (setq bibtex-entry (bibtex-parse-entry)) ;; downcase field names so they work in the format-citation code @@ -581,6 +585,7 @@ Format according to the type in `org-ref-bibliography-entry-format'." (with-temp-buffer (insert-file-contents file) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key nil 0) (setq entry (bibtex-parse-entry)) (format "** %s - %s @@ -972,7 +977,7 @@ ARG does nothing." (org-ref-count-labels label)))) (lambda (keyword desc format) (cond - ((eq format 'html) (format "()" keyword)) + ((eq format 'html) (format "
" keyword)) ((eq format 'latex) (format "\\label{%s}" keyword))))) @@ -1539,6 +1544,7 @@ falling back to what the user has set in `org-ref-default-bibliography'" (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) ;; I like this better than bibtex-url which does not always find ;; the urls @@ -1565,6 +1571,7 @@ falling back to what the user has set in `org-ref-default-bibliography'" (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (org-ref-open-bibtex-notes))))) @@ -1579,6 +1586,7 @@ falling back to what the user has set in `org-ref-default-bibliography'" (message "%s" (progn (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (org-ref-bib-citation)))))) @@ -1651,6 +1659,7 @@ Prompt for NEW-FILE includes bib files in `org-ref-default-bibliography', and bi (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (setq doi (bibtex-autokey-get-field "doi")) ;; in case doi is a url, remove the url part. @@ -1708,11 +1717,13 @@ get a lot of options. LINK-STRING is used by the link function." (url (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (bibtex-autokey-get-field "url")))) (doi (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) ;; I like this better than bibtex-url which does not always find ;; the urls @@ -1789,6 +1800,7 @@ get a lot of options. LINK-STRING is used by the link function." (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (org-ref-bib-citation)))) "\n" @@ -2103,7 +2115,10 @@ This assumes you are in an article." (year (reftex-get-bib-field "year" entry)) (author (replace-regexp-in-string "\n\\|\t\\|\s+" " " (reftex-get-bib-field "author" entry))) (key (reftex-get-bib-field "=key=" entry)) - (journal (reftex-get-bib-field "journal" entry)) + (journal (let ((jt (reftex-get-bib-field "journal" entry))) + (if (string= "" jt) + (reftex-get-bib-field "journaltitle" entry) + jt))) (volume (reftex-get-bib-field "volume" entry)) (pages (reftex-get-bib-field "pages" entry)) (doi (reftex-get-bib-field "doi" entry)) @@ -2740,6 +2755,7 @@ Shows bad citations, ref links and labels" (bibfile (cdr results))) (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key nil 0) (prog1 (reftex-get-bib-field "year" (bibtex-parse-entry t)) )))) @@ -3227,6 +3243,7 @@ With two prefix args, insert a label link." (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (org-ref-bib-citation))) "!!! No entry found !!!" ))) @@ -3242,11 +3259,13 @@ Checks for pdf and doi, and add appropriate functions." (url (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) (bibtex-autokey-get-field "url")))) (doi (save-excursion (with-temp-buffer (insert-file-contents bibfile) + (bibtex-set-dialect (parsebib-find-bibtex-dialect) t) (bibtex-search-entry key) ;; I like this better than bibtex-url which does not always find ;; the urls