Org-bibtex is responsible for handling bibtex citation in orgmode. In contrib library there is an addition (org-bibtex-extras.el) by Eric Schulte. This can be used as an easy way to manage an annotated bibliography in orgmode. You can find a video demo to make the setup here.
In your init file you should add the following chunk.
;; load contrib library (add-to-list 'load-path (expand-file-name "/path/to/org-mode/contrib/lisp" (file-name-directory org-find-library-dir "org"))) ;; manage citations (require 'org-bibtex) ;; export citations (require 'ox-bibtex) (setq org-bibtex-file "papers.org")
There are three basic commands:
M-x org-bibtex
to export the citations in a bibtex file
M-x org-bibtex-yank
to import a citation from bibtex text (clipboard)
M-x org-bibtex-check-all
to check the validity of the entries
Note that below each heading you can keep your annotations.
* The Org Mode 7 Reference Manual-Organize your life with GNU Emacs :PROPERTIES: :TITLE: The Org Mode 7 Reference Manual-Organize your life with GNU Emacs :manual: :BTYPE: book :CUSTOM_ID: dominik2010org :AUTHOR: Dominik, Carsten :YEAR: 2010 :PUBLISHER: Network Theory Ltd. :END: This line is my annotation for the entry of Org Mode 7 Reference Manual. * A multi-language computing environment for literate programming and reproducible research :babel: :PROPERTIES: :BTYPE: article :AUTHOR: Eric Schulte and Dan Davidson and Tom Dye and Carsten Dominik :JOURNAL: Journal of Statistical Software :VOLUME: 46 :NUMBER: 3 :YEAR: 2012 :MONTH: January :CUSTOM_ID: schulte2012babel :END: Some annotation about babel.
org-bibtex.el
. If you do not do that you will not be able to yank citations. My routine is that I export and open my bibtex document in a new buffer before yanking a new entry.
Using tags and properties we can perform advanced searching for keywords in our entries. We can also use tags in our bibliographic headings, without affecting the export to *.bib file. We can add our bibliography in the front of the agenda (C-c [
) and we can use C-c a m
to search for tags and properties.
If we would like to begin our search based on a property, we have to set the key name followed by the value. Some examples for properties using C-c a m
:
Note that double quotes will match the exact key value, whereas curly brackets will perform partial matches.