An application for opening PDF files is required. By default =DocView= is used
though it is highly recommended to enable =:tools pdf= in your personal ~init.el~
file to enable [[https://github.com/politza/pdf-tools][pdf-tools]].
** Bibtex completion
For vertico, helm, or ivy bibtex completion you should enable =:completion vertico=, =:completion helm=, or
=:completion ivy= respectively.
* Features
Both [[https://github.com/tmalsburg/helm-bibtex][helm-bibtex]] (includes helm-bibtex, ivy-bibtex and bibtex-completion code)
and [[https://github.com/bdarcus/bibtex-actions][citar]] provide an extensive range of features so it is best to check their
respective sites for a full list of features.
On a high-level you can expect:
+ bibliography management
+ Notes per reference
+ citation support
+ citation lookup
+ org integration for writing literate latex (org-roam)
+ fast indexing and searching of references.
To understand the interaction of these packages this [[https://www.reddit.com/r/emacs/comments/cxu0qg/emacs_org_and_bibtex_as_alternative_to_zotero_and/eyqe4vq/][reddit]] thread will explain
the unique features and the overlapping functionality if any.
In addition, this module provides support for native Org-mode citations: =org-cite=.
* Configuration
For all these packages it is advisable to use ~(after! package)~ in your
~config.el~ to override any default settings and tune the packages to your
needs.
** Org-cite
*** Processor configuration
=Org-cite= provides rich features and flexible configuration options via its "processor" capabilities.
1./insert/ provides =org-cite-insert= integration for inserting and editing citations.
2./activate/ provides fontification, previews, etc.
3./follow/ integrates contextual citation actions with =org-open-at-point=.
4./export/ for different output targets.
This module makes available the following processors:
1. The core =oc-basic=, =oc-natbib=, =oc-biblatex=, and =oc-csl=.
2. [[https://github.com/bdarcus/bibtex-actions][citar]] for integration with =vertico= completion.
For user-interface, the module configures these processors as follows for the different completion modules:
| Feature | Vertico | Ivy | Helm |
|----------+---------+----------+----------|
| Insert | citar | oc-basic | oc-basic |
| Activate | citar | oc-basic | oc-basic |
| Follow | citar | oc-basic | oc-basic |
*** Other configuration options
If you like, you can also set the =oc-csl= processor to look in a specific
directory for your CSL styles:
#+BEGIN_SRC emacs-lisp
(setq org-cite-csl-styles-dir "~/Zotero/styles")
#+END_SRC
** Path configuration
You must set the path variable for either =citar= (if using =vertico=
completion) or =bibtex-completion= (if using =ivy= or =helm=); this module will
in turn set the =org-cite-global-bibliography= path variable to this: