emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Bug: :cache doesn't [9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)]
@ 2018-09-30  6:44 Emmanuel Charpentier
  2018-10-22  8:39 ` Nicolas Goaziou
  0 siblings, 1 reply; 2+ messages in thread
From: Emmanuel Charpentier @ 2018-09-30  6:44 UTC (permalink / raw)
  To: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 340 bytes --]

The attached file is a dump of a Gnus buffer prepared by org-mode's
"Report bug" functionj, which I can't sed, Gnus making (wildly)
incorrect assumptions about my mail setup. An attempt to cutn'paste in
my usual mailed failed, due to "unpastable" characters somewhere in the
buffer.

Sorry for the inconvenience...

--
Emmanuel Charpentier

[-- Attachment #2: BugReportCache --]
[-- Type: text/plain, Size: 147626 bytes --]

To: emacs-orgmode@gnu.org
Subject: Bug: :cache doesn't [9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)]
From: Emmanuel Charpentier <charpent@asus16-ec.bacbuc.dyndns.org>
--text follows this line--

Remember to cover the basics, that is, what you expected to happen and
what in fact did happen.  You don't know how to make a good report?  See

     https://orgmode.org/manual/Feedback.html#Feedback

Your bug report will be posted to the Org mailing list.
------------------------------------------------------------------------

Motivation :

I am exploring the use of org-mode as a programming tool for statistics
among others. In this domain, modern use tends to use computationally
intensive tasks such as resampling methods, numerical multidimensional
optimization, MCMC, etc... The ability to cache results is vital
(dependencies can be managed by use of digests of (large) results).

Using org-mode for this kind of tasks would allow me to use more than
one tool for a given paper (e. g. using R for actial computation, Sage
for symbolic work and python for further similation).

But I stumble on a slight difficulty : I am unable to get org-mode to
cache results.

Minimal (non-)working example :

1) Org source :

#+author:
#+options: toc:nil


#+name: toto
#+BEGIN_SRC R :cache yes :eval no-expand
  ## Simulate a (not too) long computation
  Sys.sleep(3)
  Sys.time()
#+END_SRC

#+RESULTS[6b7eeb22cb3d78d2af82298b4aef0eda5043bcee]: toto
: 2018-09-30 08:01:23

#+name: titi
#+call: toto()

#+call: titi()

En ligne : call_titi(). Et call_toto()

2) Results (as exported to an ASCII buffer by C-c C-e t A) :

,----
| Sys.sleep(3)
| Sys.time()
`----

,----
| 2018-09-30 08:03:14
`----

,----
| 2018-09-30 08:03:17
`----

En ligne : `2018-09-30 08:03:20'. Et `2018-09-30 08:03:24'


3) (Unfulfilled) expectations :

I expected the four timestamps to be identical (up to the resolution of
R's Sys.time()) ; the real timestamps ares separated by 3 seconds
deltas, thus hinting at four executions of the supposedly cached
function.

Note : I got the same results (up to base time) when running in session
mode (by placing :
#+property: header-args:R :session
at the start of the buffer).

--
Emmanuel Charpentier

Emacs  : GNU Emacs 25.2.2 (x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
 of 2018-08-27, modified by Debian
Package: Org mode version 9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)

current state:
==============
(setq
 org-src-lang-modes '(("mathematica" . "mma") ("sage" . sage-shell:sage)
		      ("ocaml" . tuareg) ("elisp" . emacs-lisp)
		      ("ditaa" . artist) ("asymptote" . asy)
		      ("dot" . fundamental) ("sqlite" . sql)
		      ("calc" . fundamental) ("C" . c) ("cpp" . c++)
		      ("C++" . c++) ("screen" . shell-script) ("shell" . sh)
		      ("bash" . sh))
 org-ref-get-pdf-filename-function 'org-ref-get-pdf-filename
 org-tab-first-hook '(org-babel-hide-result-toggle-maybe
		      org-babel-header-arg-expand)
 org-speed-command-hook '(org-speed-command-activate
			  org-babel-speed-command-activate)
 org-ref-create-notes-hook '((lambda nil (org-narrow-to-subtree)
			      (insert
			       (format "cite:%s\n"
				(org-entry-get (point) "Custom_ID"))
			       )
			      )
			     )
 org-occur-hook '(org-first-headline-recenter)
 org-metaup-hook '(org-babel-load-in-session-maybe)
 org-html-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
 org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function
 org-confirm-shell-link-function 'yes-or-no-p
 org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
 org-ref-open-pdf-function 'org-ref-open-pdf-at-point
 org-ref-cite-onclick-function 'org-ref-cite-click-helm
 org-ref-insert-label-function 'org-ref-helm-insert-label-link
 org-latex-format-headline-function 'org-latex-format-headline-default-function
 org-after-todo-state-change-hook '(org-clock-out-if-current)
 org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"]
 org-odt-format-headline-function 'org-odt-format-headline-default-function
 org-from-is-user-regexp "\\<Emmanuel Charpentier\\>"
 org-src-mode-hook '(org-src-babel-configure-edit-buffer
		     org-src-mode-configure-edit-buffer)
 org-agenda-before-write-hook '(org-agenda-add-entry-text)
 org-babel-pre-tangle-hook '(save-buffer)
 org-mode-hook '(org-ref-org-menu
		 #[0 "\300\301\302\303\304$\207"
		   [add-hook change-major-mode-hook org-show-block-all append
		    local]
		   5]
		 #[0 "\300\301\302\303\304$\207"
		   [add-hook change-major-mode-hook org-babel-show-result-all
		    append local]
		   5]
		 org-babel-result-hide-spec org-babel-hide-all-hashes
		 org-eldoc-load)
 org-ref-insert-cite-function 'org-ref-helm-insert-cite-link
 org-bibtex-headline-format-function #[257 "\300\x01\236A\207" [:title] 3 "\n\n(fn ENTRY)"]
 org-archive-hook '(org-attach-archive-delete-maybe)
 org-ascii-format-drawer-function #[771 "\x01\207" [] 4 "\n\n(fn NAME CONTENTS WIDTH)"]
 org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function
 org-ref-insert-ref-function 'org-ref-helm-insert-ref-link
 org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers
		  org-cycle-show-empty-lines
		  org-optimize-window-after-visibility-change)
 org-ref-bibtex-assoc-pdf-with-entry-move-function 'rename-file
 org-ref-clean-bibtex-key-function '(lambda (key)
				     (replace-regexp-in-string ":" "" key))
 org-ref-clean-bibtex-entry-hook '(org-ref-bibtex-format-url-if-doi
				   orcb-key-comma org-ref-replace-nonascii
				   orcb-& orcb-% org-ref-title-case-article
				   orcb-clean-year orcb-key orcb-clean-doi
				   orcb-clean-pages orcb-check-journal
				   org-ref-sort-bibtex-entry)
 org-babel-tangle-lang-exts '(("mathematica" . "m") ("maxima" . "max")
			      ("julia" . "jl") ("sage" . "sage")
			      ("python" . "py") ("emacs-lisp" . "el")
			      ("elisp" . "el"))
 org-confirm-elisp-link-function 'yes-or-no-p
 org-metadown-hook '(org-babel-pop-to-session-maybe)
 org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
 org-ditaa-jar-path "/usr/share/ditaa/ditaa.jar"
 org-ref-open-notes-function '(lambda nil (org-show-entry)
			       (outline-show-branches) (outline-show-children)
			       (org-cycle (quote (64))) (recenter-top-bottom 0))
 org-html-format-headline-function 'org-html-format-headline-default-function
 org-link-parameters '(("id" :follow org-id-open)
		       ("rmail" :follow org-rmail-open :store
			org-rmail-store-link)
		       ("mhe" :follow org-mhe-open :store org-mhe-store-link)
		       ("irc" :follow org-irc-visit :store org-irc-store-link)
		       ("info" :follow org-info-open :export org-info-export
			:store org-info-store-link)
		       ("gnus" :follow org-gnus-open :store org-gnus-store-link)
		       ("docview" :follow org-docview-open :export
			org-docview-export :store org-docview-store-link)
		       ("bbdb" :follow org-bbdb-open :export org-bbdb-export
			:complete org-bbdb-complete-link :store
			org-bbdb-store-link)
		       ("w3m" :store org-w3m-store-link)
		       ("printindex" :follow org-ref-index :export
			#[(path desc format)
			  "\b\301=\205	\0\300\302!\207"
			  [format latex "\\printindex"] 2]
			)
		       ("index" :follow #[(path) "\301\b!\207" [path occur] 2]
			:export
			#[(path desc format) "\b\302=\205\n\0\300\303	\"\207"
			  [format path latex "\\index{%s}"] 3]
			)
		       ("bibentry" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-bibentry :complete
			org-bibentry-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Autocites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Autocites :complete
			org-Autocites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("autocites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-autocites :complete
			org-autocites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("supercites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-supercites :complete
			org-supercites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Textcites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Textcites :complete
			org-Textcites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("textcites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-textcites :complete
			org-textcites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Smartcites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Smartcites :complete
			org-Smartcites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("smartcites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-smartcites :complete
			org-smartcites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("footcitetexts" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-footcitetexts :complete
			org-footcitetexts-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("footcites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-footcites :complete
			org-footcites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Parencites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Parencites :complete
			org-Parencites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("parencites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-parencites :complete
			org-parencites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Cites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Cites :complete
			org-Cites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("cites" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-cites :complete
			org-cites-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("fnotecite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-fnotecite :complete
			org-fnotecite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Pnotecite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Pnotecite :complete
			org-Pnotecite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("pnotecite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-pnotecite :complete
			org-pnotecite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Notecite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Notecite :complete
			org-Notecite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("notecite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-notecite :complete
			org-notecite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("footfullcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-footfullcite :complete
			org-footfullcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("fullcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-fullcite :complete
			org-fullcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeurl" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeurl :complete
			org-citeurl-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citedate*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citedate* :complete
			org-citedate*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citedate" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citedate :complete
			org-citedate-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citetitle*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citetitle* :complete
			org-citetitle*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citetitle" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citetitle :complete
			org-citetitle-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citeauthor*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citeauthor* :complete
			org-Citeauthor*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Autocite*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Autocite* :complete
			org-Autocite*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("autocite*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-autocite* :complete
			org-autocite*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Autocite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Autocite :complete
			org-Autocite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("autocite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-autocite :complete
			org-autocite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("supercite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-supercite :complete
			org-supercite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("parencite*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-parencite* :complete
			org-parencite*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("cite*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-cite* :complete
			org-cite*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Smartcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Smartcite :complete
			org-Smartcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("smartcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-smartcite :complete
			org-smartcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Textcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Textcite :complete
			org-Textcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("textcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-textcite :complete
			org-textcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("footcitetext" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-footcitetext :complete
			org-footcitetext-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("footcite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-footcite :complete
			org-footcite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Parencite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Parencite :complete
			org-Parencite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("parencite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-parencite :complete
			org-parencite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Cite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Cite :complete
			org-Cite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citeauthor" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citeauthor :complete
			org-Citeauthor-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citealp" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citealp :complete
			org-Citealp-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citealt" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citealt :complete
			org-Citealt-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citep" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citep :complete
			org-Citep-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("Citet" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-Citet :complete
			org-Citet-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeyearpar" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeyearpar :complete
			org-citeyearpar-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeyear*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeyear* :complete
			org-citeyear*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeyear" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeyear :complete
			org-citeyear-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeauthor*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeauthor* :complete
			org-citeauthor*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citeauthor" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citeauthor :complete
			org-citeauthor-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citetext" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citetext :complete
			org-citetext-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citenum" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citenum :complete
			org-citenum-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citealp*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citealp* :complete
			org-citealp*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citealp" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citealp :complete
			org-citealp-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citealt*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citealt* :complete
			org-citealt*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citealt" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citealt :complete
			org-citealt-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citep*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citep* :complete
			org-citep*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citep" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citep :complete
			org-citep-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citet*" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citet* :complete
			org-citet*-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("citet" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-citet :complete
			org-citet-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("nocite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-nocite :complete
			org-nocite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			)
		       ("cite" :follow
			(lambda (_) (funcall org-ref-cite-onclick-function nil))
			:export org-ref-format-cite :complete
			org-cite-complete-link :help-echo
			(lambda (window object position)
			 (when org-ref-show-citation-on-enter
			  (save-excursion (goto-char position)
			   (let
			    ((s
			      (org-ref-format-entry
			       (org-ref-get-bibtex-key-under-cursor))
			      )
			     )
			    (with-temp-buffer (insert s) (fill-paragraph)
			     (buffer-string))
			    )
			   )
			  )
			 )
			:face org-ref-cite-link-face-fn :display full :keymap
			(keymap (S-up . org-ref-sort-citation-link)
			 (S-right lambda nil (interactive)
			  (org-ref-swap-citation-link 1))
			 (S-left lambda nil (interactive)
			  (org-ref-swap-citation-link -1))
			 (C-right . org-ref-next-key)
			 (C-left . org-ref-previous-key)
			 (16777337 lambda nil
			  "Paste key at point. Assumes the first thing in the killring is a key."
			  (interactive)
			  (org-ref-insert-key-at-point (car kill-ring)))
			 (16777303 lambda nil "Copy all the keys at point."
			  (interactive)
			  (kill-new
			   (org-element-property :path (org-element-context)))
			  )
			 (16777335 lambda nil (interactive)
			  (kill-new (car (org-ref-get-bibtex-key-and-file))))
			 (16777318 lambda nil (interactive)
			  (save-excursion (org-ref-open-citation-at-point)
			   (kill-new (org-ref-format-bibtex-entry-at-point)))
			  )
			 (16777319 . org-ref-google-scholar-at-point)
			 (16777317 lambda nil "Email entry at point"
			  (interactive) (org-ref-open-citation-at-point)
			  (org-ref-email-bibtex-entry))
			 (16777315 . org-ref-wos-citing-at-point)
			 (16777330 . org-ref-wos-related-at-point)
			 (16777326 . org-ref-open-notes-at-point)
			 (16777328 . org-ref-open-pdf-at-point)
			 (16777333 . org-ref-open-url-at-point)
			 (16777314 . org-ref-open-citation-at-point)
			 (follow-link . mouse-face)
			 (mouse-3 . org-find-file-at-mouse)
			 (mouse-2 . org-open-at-mouse))
			:store org-ref-bibtex-store-link)
		       ("Cref" :follow org-ref-ref-follow :export
			org-ref-Cref-export :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("cref" :follow org-ref-ref-follow :export
			org-ref-cref-export :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("autoref" :follow org-ref-ref-follow :export
			org-ref-autoref-export :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("eqref" :follow org-ref-ref-follow :export
			org-ref-eqref-export :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("nameref" :follow org-ref-ref-follow :export
			org-ref-export-nameref :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("pageref" :follow org-ref-ref-follow :export
			#[(path desc format)
			  "\b\302=\203\v\0\300\303	\"\207\b\304=\205\x15\0\300\305	\"\207"
			  [format path html "(<pageref>%s</pageref>)" latex
			   "\\pageref{%s}"]
			  3]
			:face org-ref-ref-face-fn :complete
			org-pageref-complete-link :help-echo
			org-ref-ref-help-echo)
		       ("ref" :follow org-ref-ref-follow :export
			org-ref-ref-export :complete org-ref-complete-link
			:face org-ref-ref-face-fn :help-echo
			org-ref-ref-help-echo)
		       ("label" :follow
			#[(label)
			  "\302\b!\x19\303\304\305	\211\306U\204\x14\0	\307V\203\x18\0\310\202\x19\0\311#\302\b!\")\207"
			  [label count org-ref-count-labels message format
			   "%s occurence%s" 0 1 "s" ""]
			  6
			  "On clicking count the number of label tags used in the buffer.\nA number greater than one means multiple labels!"]
			:export
			#[(keyword desc format)
			  "\b\302=\203\v\0\300\303	\"\207\b\304=\203\x16\0\300\305	\"\207\b\306=\205 \0\300\307	\"\207"
			  [format keyword html "<div id=\"%s\"></div>" md
			   "<a name=\"%s\"></a>" latex "\\label{%s}"]
			  3]
			:store org-label-store-link :face org-ref-label-face-fn
			:help-echo
			#[(window object position)
			  "\212\bb\210\303 \x19\304\305!\x1ar\nq\210\306\216	c\210\307 \210\310 -\207"
			  [position
			   
			   s
			   
			   temp-buffer
			   
			   org-ref-link-message
			   
			   generate-new-buffer
			   
			   " *temp*"
			   
			   #[nil
			     
													     
														       
																	   
																				
																					    
																					      
			     "\301\b!\205	\0\302\b!\207"
			     
													     
														       
																	   
																				
																					    
																					      
			     [temp-buffer buffer-name kill-buffer]
			     
			     
			     
			     
			     
			     
													     
														       
																	   
																				
																					    
																					      
			     2]
			   
			   fill-paragraph buffer-string]
			  2]
			)
		       ("list-of-tables" :follow org-ref-list-of-tables :export
			#[(keyword desc format)
			  "\b\301=\205	\0\300\302!\207"
			  [format latex "\\listoftables"] 2]
			)
		       ("list-of-figures" :follow org-ref-list-of-figures
			:export
			#[(keyword desc format)
			  "\b\301=\205	\0\300\302!\207"
			  [format latex "\\listoffigures"] 2]
			)
		       ("addbibresource" :follow org-ref-follow-addbibresource
			:export
			#[(keyword desc format)
			  "\b\302=\203\n\0\300\303!\207\b\304=\205\x14\0\300\305	\"\207"
			  [format keyword html "" latex "\\addbibresource{%s}"]
			  3]
			)
		       ("bibliographystyle" :export
			#[(keyword desc format)
			  "\b\302=\204\f\0\b\303=\203\x11\0\300\304	\"\207\305\207"
			  [format keyword latex beamer
			   "\\bibliographystyle{%s}" ""]
			  3]
			)
		       ("printbibliography" :follow org-ref-open-bibliography
			:export
			#[(keyword desc format)
			  "\b\301=\203	\0\302 \207\b\303=\203\x12\0\304 \207\b\305=\205\x19\0\306\207"
			  [format org org-ref-get-org-bibliography html
			   org-ref-get-html-bibliography latex
			   "\\printbibliography"]
			  2]
			)
		       ("nobibliography" :follow org-ref-open-bibliography
			:export org-ref-nobibliography-format)
		       ("bibliography" :follow org-ref-open-bibliography
			:export org-ref-bibliography-format :complete
			org-bibliography-complete-link :help-echo
			#[(window object position)
			  "\212\bb\210\303 \x19\304\305!\x1ar\nq\210\306\216	c\210\307 \210\310 -\207"
			  [position
			   
			   s
			   
			   temp-buffer
			   
			   org-ref-link-message
			   
			   generate-new-buffer
			   
			   " *temp*"
			   
			   #[nil
			     
													     
														       
																	   
																				
																					    
																					      
			     "\301\b!\205	\0\302\b!\207"
			     
													     
														       
																	   
																				
																					    
																					      
			     [temp-buffer buffer-name kill-buffer]
			     
			     
			     
			     
			     
			     
													     
														       
																	   
																				
																					    
																					      
			     2]
			   
			   fill-paragraph buffer-string]
			  2]
			:face org-ref-bibliography-face-fn)
		       ("Acp" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("Acp" . "Glspl")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("acp" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("acp" . "glspl")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("Ac" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("Ac" . "Gls")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("ac" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("ac" . "gls")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("acrfull" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("acrfull" . "acrfull")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("acrlong" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("acrlong" . "acrlong")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("acrshort" :follow or-follow-acronym :face
			org-ref-acronym-face :help-echo or-acronym-tooltip
			:export
			#[771
			  "\211\301=\203\r\0\302\303\300A\x05#\207\302\304\x04\226\"\207"
			  [("acrshort" . "acrshort")
			   
			   latex format "\\%s{%s}" "%s"]
			  7 "\n\n(fn PATH _ FORMAT)"]
			)
		       ("glslink" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\300=\203\f\0\301\302\x04\x04#\207\301\303\x04\"\207"
			  [latex format "\\glslink{%s}{%s}" "%s"] 7
			  "\n\n(fn PATH DESC FORMAT)"]
			)
		       ("glsdesc" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["glsdesc" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("glssymbol" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["glssymbol" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("Glspl" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["Glspl" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("Gls" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["Gls" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("glspl" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["glspl" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("gls" :follow or-follow-glossary :face
			org-ref-glossary-face :help-echo or-glossary-tooltip
			:export
			#[771
			  "\211\301=\203\f\0\302\303\300\x05#\207\302\304\x04\"\207"
			  ["gls" latex format "\\%s{%s}" "%s"] 7
			  "\n\n(fn PATH _ FORMAT)"]
			)
		       ("bibtex" :follow org-bibtex-open :store
			org-bibtex-store-link)
		       ("file+sys") ("file+emacs")
		       ("doi" :follow doi-link-menu :export
			#[(doi desc format)
			  "\b\304=\203\x13\0\300\305	\n\v\206\x11\0\306\nP$\207\b\307=\205%\0\300\310	\n\v\206$\0\306\nP$\207"
			  [format doi-utils-dx-doi-org-url doi desc html
			   "<a href=\"%s%s\">%s</a>" "doi:" latex
			   "\\href{%s%s}{%s}"]
			  6]
			)
		       ("elisp" :follow org--open-elisp-link)
		       ("file" :complete org-file-complete-link)
		       ("ftp" :follow
			(lambda (path) (browse-url (concat "ftp:" path))))
		       ("help" :follow org--open-help-link)
		       ("http" :follow
			(lambda (path) (browse-url (concat "http:" path))))
		       ("https" :follow
			(lambda (path) (browse-url (concat "https:" path))))
		       ("mailto" :follow
			(lambda (path) (browse-url (concat "mailto:" path))))
		       ("news" :follow
			(lambda (path) (browse-url (concat "news:" path))))
		       ("shell" :follow org--open-shell-link))
 org-babel-load-languages '((ditaa . t) (emacs-lisp . t) (R . t) (python . t)
			    (sagemath . t) (julia . t) (gnuplot . t)
			    (maxima . t) (stan . t) (mathematica . t))
 org-ref-insert-link-function 'org-ref-helm-insert-cite-link
 org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function
 org-ref-notes-function 'org-ref-notes-function-one-file
 org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
 org-confirm-babel-evaluate nil
 )

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Bug: :cache doesn't [9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)]
  2018-09-30  6:44 Bug: :cache doesn't [9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)] Emmanuel Charpentier
@ 2018-10-22  8:39 ` Nicolas Goaziou
  0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2018-10-22  8:39 UTC (permalink / raw)
  To: Emmanuel Charpentier; +Cc: emacs-orgmode

Hello,

Emmanuel Charpentier <emm.charpentier@free.fr> writes:

> But I stumble on a slight difficulty : I am unable to get org-mode to
> cache results.
>
> Minimal (non-)working example :
>
> 1) Org source :
>
> #+author:
> #+options: toc:nil
>
>
> #+name: toto
> #+BEGIN_SRC R :cache yes :eval no-expand
>   ## Simulate a (not too) long computation
>   Sys.sleep(3)
>   Sys.time()
> #+END_SRC
>
> #+RESULTS[6b7eeb22cb3d78d2af82298b4aef0eda5043bcee]: toto
> : 2018-09-30 08:01:23
>
> #+name: titi
> #+call: toto()

:cache is per source block. CALL keyword generates a new source block,
so it gets its own cache. So Org actually does cache results — try,
e.g., to re-eval the first source block — in a very basic way, and
you're mis-using the feature.

HTH,

-- 
Nicolas Goaziou

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-10-22  8:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-30  6:44 Bug: :cache doesn't [9.1.14 (9.1.14-3-geb9955a-elpa @ /home/charpent/.emacs.d/elpa/org-20180924/)] Emmanuel Charpentier
2018-10-22  8:39 ` Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).