emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

org-cite: enable inserting citation (org-cite-insert) after list bullet


From: Yuu Yin
Subject: org-cite: enable inserting citation (org-cite-insert) after list bullet [9.5 (9.5-7c78aca @ /home/yuu/.config/emacs/straight/build/org/)]
Date: Thu, 26 Aug 2021 12:18:14 +0000

** Expected behavior

Invoking ~org-cite-insert~ after list bullets (e.g. ~-~ and ~1.~ ) works.

*** Why

Being able to insert citations in lists is useful when the user wants to list works without text surround it, for instance a list akin to the ~Further reading~ section on Wikipedia (e.g. https://en.wikipedia.org/wiki/Wikipedia#Further_reading). Thus, current behavior is too strict.

** Actual behavior
Invoking ~org-cite-insert~ after list bullets (e.g. ~-~ and ~1.~ ) doesn't work.

#+begin_src emacs-lisp
org-cite-insert: Cannot insert a citation here
#+end_src

** Reproduce

1. Install Emacs master, and add to =~/.config/emacs/init.el=
    #+begin_src emacs-lisp
(require 'package)

(defvar bootstrap-version)
(let ((bootstrap-file
       (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
      (bootstrap-version 5))
  (unless (file-exists-p bootstrap-file)
    (with-current-buffer
        (url-retrieve-synchronously
         "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
         'silent 'inhibit-cookies)
      (goto-char (point-max))
      (eval-print-last-sexp)))
  (load bootstrap-file nil 'nomessage))

(straight-use-package 'use-package)

(setq straight-use-package-by-default t)

(defun my-call-process (command &rest args)
  "Execute COMMAND with ARGS synchronously.

Returns (STATUS . OUTPUT) when it is done, where STATUS is the returned error
code of the process and OUTPUT is its stdout output."
  (with-temp-buffer
    (cons (or (apply #'call-process command nil t nil (remq nil args))
              -1)
          (string-trim (buffer-string)))))

(use-package org
  :straight '(:type git :host github :repo "emacs-straight/org"
    :build t
    :pre-build
    (with-temp-file "org-version.el"
      (insert "(defun org-release () \"9.5\")\n"
      (format "(defun org-git-version (&rest _) \"9.5-%s\")\n"
      (cdr (my-call-process "git" "rev-parse" "--short" "HEAD")))
      "(provide 'org-version)\n")))
  :config
  (require 'oc-basic))
   #+end_src

2. Create bibtex file =org/test.bib= with
   #+begin_src bibtex
@book{test-2021-test,
title = {Test},
author = {{Test}},
year = {2021},
}
   #+end_src

3. Create org-mode file =org/test.org=
   #+begin_src org
,#+TITLE: Test
,#+BIBLIOGRAPHY: test.bib

,* Test

-
  +
-
  ,*


1.
   a.
   b.
2.
   a)
   b)
3.
   -
     +
4.
   1)
   #+end_src

4. Put cursor after any of the list bullets and ~org-cite-insert~

5. See message buffer ~Cannot insert a citation here~

** System information
Emacs  : GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.30, cairo version 1.16.0)
Package: Org mode version 9.5 (9.5-7c78aca @ /home/yuu/.config/emacs/straight/build/org/)

current state:
==============
(setq
org-link-elisp-confirm-function 'yes-or-no-p
org-bibtex-headline-format-function #[257 "\300\236A\207" [:title] 3 "\n\n(fn ENTRY)"]
org-export-before-parsing-hook '(org-attach-expand-links)
org-archive-hook '(org-attach-archive-delete-maybe)
org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines
  org-optimize-window-after-visibility-change)
org-mode-hook '(#[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-show-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-confirm-shell-link-function 'yes-or-no-p
org-reveal-start-hook '(org-decrypt-entry)
outline-isearch-open-invisible-function 'outline-isearch-open-invisible
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
org-confirm-elisp-link-function 'yes-or-no-p
org-speed-command-hook '(org-speed-command-activate org-babel-speed-command-activate)
org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
org-link-shell-confirm-function 'yes-or-no-p
org-babel-pre-tangle-hook '(save-buffer)
org-agenda-loop-over-headlines-in-active-region nil
org-occur-hook '(org-first-headline-recenter)
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-link-parameters '(("attachment" :follow org-attach-follow :complete org-attach-complete-link)
       ("id" :follow org-id-open) ("eww" :follow org-eww-open :store org-eww-store-link)
       ("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 :export org-irc-export)
       ("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)
       ("bibtex" :follow org-bibtex-open :store org-bibtex-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)
       ("doi" :follow org-link-doi-open :export org-link-doi-export) ("file+sys") ("file+emacs")
       ("shell" :follow org-link--open-shell)
       ("news" :follow
#[514 "\301\300\302Q\"\207" ["news" browse-url ":"] 6 "\n\n(fn URL ARG)"])
       ("mailto" :follow
#[514 "\301\300\302Q\"\207" ["mailto" browse-url ":"] 6 "\n\n(fn URL ARG)"])
       ("https" :follow
#[514 "\301\300\302Q\"\207" ["https" browse-url ":"] 6 "\n\n(fn URL ARG)"])
       ("http" :follow
#[514 "\301\300\302Q\"\207" ["http" browse-url ":"] 6 "\n\n(fn URL ARG)"])
       ("ftp" :follow #[514 "\301\300\302Q\"\207" ["ftp" browse-url ":"] 6 "\n\n(fn URL ARG)"])
       ("help" :follow org-link--open-help :store org-link--store-help)
       ("file" :complete org-link-complete-file) ("elisp" :follow org-link--open-elisp))
org-metaup-hook '(org-babel-load-in-session-maybe)
)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]