]> git.donarmstrong.com Git - org-ref.git/blobdiff - org-ref.el
export 'eqref' in html just as in latex
[org-ref.git] / org-ref.el
index 837414428f13d7a36a524887b147820401d3d31f..a0191829ed1dd69428cfacd1eaa6d5857a56da21 100644 (file)
@@ -124,7 +124,8 @@ file, then open it.  The default function is
   "User-defined function to get a filename from a bibtex key.
 The function must take a key as an argument, and return the path
 to the corresponding filename. The default is
-`org-ref-get-pdf-filename'.")
+`org-ref-get-pdf-filename'. An alternative value is
+`org-ref-get-mendeley-filename'.")
 
 
 (defcustom org-ref-insert-cite-function
@@ -1422,9 +1423,10 @@ Optional argument ARG Does nothing."
  ;formatting
  (lambda (keyword desc format)
    (cond
-    ((eq format 'html) (format "(<eqref>%s</eqref>)" path))
-    ((eq format 'latex)
-     (format "\\eqref{%s}" keyword)))))
+    ((eq format 'latex) (format "\\eqref{%s}" keyword))
+    ;;considering the fact that latex's the standard of math formulas, just use mathjax to render the html
+    ;;customize the variable 'org-html-mathjax-template' and 'org-html-mathjax-options' refering to  'autonumber'
+    ((eq format 'html) (format "\\eqref{%s}" keyword)))))
 
 ;; ** cite link
 
@@ -1551,6 +1553,27 @@ falling back to what the user has set in `org-ref-default-bibliography'"
   "Return the pdf filename associated with a bibtex KEY."
   (format (concat org-ref-pdf-directory "%s.pdf") key))
 
+
+(defun org-ref-get-mendeley-filename (key)
+  "Return the pdf filename indicated by mendeley file field.
+Falls back to org-ref-get-pdf-filename if file filed does not exist.
+Contributed by https://github.com/autosquid."
+  (let* ((results (org-ref-get-bibtex-key-and-file key))
+        (bibfile (cdr results)))
+    (with-temp-buffer
+      (insert-file-contents bibfile)
+      (bibtex-set-dialect (parsebib-find-bibtex-dialect) t)
+      (bibtex-search-entry key nil 0)
+      (setq entry (bibtex-parse-entry))
+      (let ((e (org-ref-reftex-get-bib-field "file" entry)))
+       (if (> (length e) 4)
+           (remove-if
+            (lambda (ch)
+              (find ch "{}\\"))
+            (format "/%s" (subseq e 1 (- (length e) 4))))
+         (format (concat org-ref-pdf-directory "%s.pdf") key))))))
+
+
 (defun org-ref-open-pdf-at-point ()
   "Open the pdf for bibtex key under point if it exists."
   (interactive)