]> git.donarmstrong.com Git - org-ref.git/blobdiff - org-ref.org
open notes in second window. expand section
[org-ref.git] / org-ref.org
index acb199d379055a80d8c9816196815b145e9fa369..9685dca2929357c0301c64ef9830e23ccca17285 100644 (file)
@@ -568,7 +568,7 @@ We use a link for the bibliography so that we can click on it to open the biblio
                      ((eq format 'html) (org-ref-get-html-bibliography))
                      ((eq format 'latex)
                         ;; write out the latex bibliography command
-                      (format "\\bibliography{%s}" (replace-regexp-in-string  "\\.bib" "" keyword))))))
+                      (format "\\bibliography{%s}" (replace-regexp-in-string  "\\.bib" "" (expand-file-name keyword)))))))
 #+END_SRC
 
 #+BEGIN_SRC emacs-lisp :tangle org-ref.el
@@ -579,9 +579,9 @@ We use a link for the bibliography so that we can click on it to open the biblio
                       ((eq format 'org) (org-ref-get-org-bibliography))
                       ((eq format 'html) (org-ref-get-html-bibliography))
                      ((eq format 'latex)
-                      ;; write out the latex bibliography command
-                      (format "\\printbibliography" keyword))
-)))
+                      ;; write out the biblatex bibliography command
+                      "\\printbibliography"))
+))
 #+END_SRC
 
 We also create a bibliographystyle link. There is nothing to do on clicking here, and we create it for consistency. This sets the style for latex export, so use something appropriate there, e.g. unsrt, plain, plainnat, ...
@@ -1096,7 +1096,16 @@ keyword we clicked on. We also strip the text properties."
   (interactive)
   (let* ((object (org-element-context))         
         (link-string (org-element-property :path object)))
-
+    ;; you may click on the part before the citations. here we make
+    ;; sure to move to the beginning so you get the first citation.
+    (let ((cp (point)))
+      (goto-char (org-element-property :begin object))
+      (search-forward link-string (org-element-property :end object))
+      (goto-char (match-beginning 0))
+      ;; check if we clicked before the path and move as needed.
+      (unless (< cp (point))
+       (goto-char cp)))
+       
     (if (not (org-element-property :contents-begin object))
        ;; this means no description in the link
        (progn    
@@ -1182,11 +1191,9 @@ Now, we can see if an entry is in a file.
 (defun org-ref-key-in-file-p (key filename)
   "determine if the key is in the file"
   (interactive "skey: \nsFile: ")
-
-  (with-temp-buffer
-    (insert-file-contents filename)
-    (prog1
-        (bibtex-search-entry key nil 0))))
+  (save-current-buffer
+    (let ((bibtex-files (list filename)))
+      (bibtex-search-entry key t))))
 #+END_SRC
 
 Finally, we want to know which file the key is in.
@@ -1718,12 +1725,21 @@ construct the heading by hand."
     
     ;; now look for entry in the notes file
     (if  org-ref-bibliography-notes
-       (find-file org-ref-bibliography-notes)
+       (find-file-other-window org-ref-bibliography-notes)
       (error "org-ref-bib-bibliography-notes is not set to anything"))
     
     (goto-char (point-min))
     ;; put new entry in notes if we don't find it.
-    (unless (re-search-forward (format ":Custom_ID: %s$" key) nil 'end)
+    (if (re-search-forward (format ":Custom_ID: %s$" key) nil 'end)
+       (progn
+         (org-show-entry)
+          (show-branches)
+          (show-children)
+          (org-cycle '(64))
+          ;(org-tree-to-indirect-buffer)
+         (outline-previous-visible-heading 1)
+         (recenter-top-bottom 0))
+      ;; no entry found, so add one    
       (insert (format "\n** TODO %s - %s" year title))
       (insert (format"
  :PROPERTIES: