Doom-emacs: Erreur `overlayp` lors de la première utilisation de` Org Capture`

Créé le 10 mai 2019  ·  33Commentaires  ·  Source: hlissner/doom-emacs

Hey,

Je suppose que vous ne devez pas rencontrer cette erreur puisque vos fichiers sont déjà configurés, mais la première fois que vous faites <spc> X puis entrez quelque chose comme un todo ou une note, vous obtenez une erreur overlayp is nil lorsque taper la note à chaque fois que vous appuyez sur espace (il insère également une nouvelle ligne ou revient au début de la ligne).

Vous pouvez toujours appuyer sur C-c C-c pour terminer la note, ce qui crée le fichier todo.org ou notes.org , et à partir de maintenant, l'erreur ne se produit pas.

Donc, je suppose que les étapes à reproduire sont:

  • bombardez l'un de vos todo.org ou notes.org
  • puis essayez de créer un TODO ou une note, selon ce que vous avez
  • commencez à taper le titre de votre TODO / note, appuyez sur Espace, voyez l'erreur

Il peut s'agir d'une erreur en amont dans yasnippet, étant donné que l'erreur dans le journal des messages est:

yas--snapshot-overlay-location: Wrong type argument: overlayp, nil [2 times]
:editor file-templates :lang org bug resolved

Tous les 33 commentaires

Je peux confirmer. De plus, cela s'est aussi produit avec le tout premier fichier todo.org et le tout premier fichier notes.org avec moi aussi. Et jamais réapparu une fois les fichiers existants.

Je pense que j'ai enfin retrouvé ce problème. Pourriez-vous essayer ce qui suit pour voir si cela résout le problème?

(add-hook 'org-capture-mode-hook #'yas-abort-snippet)

21cf1c2 devrait résoudre ce problème. Faites-moi savoir si ce n'est pas le cas et je rouvrirai ce numéro. Merci d'avoir porté à mon attention!

@hlissner , je le ferai, quand @ home. Journée chargée au travail ...

Non, je ne l'ai pas réparé.

Être sur ae365272.

Hmm, dans ce cas, je ne peux plus le reproduire. Retour à la planche à dessin!

C'est méchant. Je viens

mv org org_bak
  • Redémarrez Emacs (A <Space> h R ne le reproduit pas!)

<Space> X>

Taper -> produit ce comportement étrange.

Je l'ai reproduit une deuxième fois tout à l'heure, pour être sûr à 100%.

mv org_bak org résout le problème. Juste au cas où, voici ma partie pertinente config.el :

;;
;;; :lang org
(after! org
  (add-to-list 'org-modules 'org-habit t))

;; Pop-rule
(after! org
  (set-popup-rule! "^\\*Org Agenda.*\\*$" :size 0.5 :side 'right :vslot 1  :select t :quit t   :ttl nil :modeline nil :autosave t)
  (set-popup-rule! "^CAPTURE.*\\.org$"    :size 0.4 :side 'bottom          :select t                                  :autosave t))

;; automatically redisplay images generated by babel
(add-hook 'org-babel-after-execute-hook 'org-redisplay-inline-images)

;; place latex-captions below figures and tables
(setq org-latex-caption-above nil)

(setq org-directory "~/org/"
      org-agenda-files (list org-directory)
      org-ellipsis " ▼ "

      ;; The standard unicode characters are usually misaligned depending on the
      ;; font. This bugs me. Markdown #-marks for headlines are more elegant.
      org-bullets-bullet-list '("#"))

;; Org-Noter
(def-package! org-noter
  :defer t
  :after org-mode
  :config
  (map!
   (:leader
     (:prefix "n"
       :desc "Org-noter-insert" :n "i" #'org-noter-insert-note))))

;; Setup
(setq org-noter-always-create-frame nil
      org-noter-auto-save-last-location t)

@rscircus A fait la même chose, sans aucun effet. Pouvez-vous fournir votre M-x doom/info ?

''

  • Système d'exploitation: gnu / linux (x86_64-pc-linux-gnu)
  • Emacs: 25.3.2 (19 avril 2018)
  • Doom: 2.0.9 (HEAD -> develop, _upgrade / develop ae365272 2019-06-18 11:46:27 +0200)
  • Affichage graphique: t (démon: nil)
  • Caractéristiques du système: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES
  • Détails:
    elisp env bootstrapper: nil elc count: 0 uname -a: Linux 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64 modules: (:tools eval :editor evil file-templates :tools lookup :editor snippets :tools flyspell flycheck :ui workspaces :completion company helm :ui doom doom-dashboard modeline doom-quit ophints hl-todo nav-flash treemacs (popup +all +defaults) vc-gutter vi-tilde-fringe window-select :editor multiple-cursors rotate-text :emacs dired electric :editor fold :term term :emacs vc :tools editorconfig ein make magit tmux upload :lang clojure data emacs-lisp go (java +meghanada) javascript julia lua markdown (org +attach +babel +capture +habit +export +present) python rest (sh +fish) web :config default) packages: (emojify org-pomodoro org-noter writeroom-mode esh-autosuggest fish-completion) exec-path: (/home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin ~/.cargo/bin ~/bin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /snap/bin /usr/lib/x86_64-linux-gnu/emacs/25.3/x86_64-linux-gnu)

Plus de détails sur ma configuration: https://github.com/rscircus/dotfiles/tree/master/config/doom.d - peut-être une interaction. 🤷

Pour être honnête, le correctif est une étape assez simple et nécessaire, donc si vous avez des choses plus importantes à faire, ceux qui veulent vraiment creuser dans doom emacs trouveront ce problème. ;)

J'ai le même problème et je ne comprends pas très bien la solution de contournement proposée ici. Comment org_bak entre-t-il en jeu? Je n'utilise pas ~/org comme fichier org de répertoire, ai-je besoin d'une solution de contournement similaire?

@rgrinberg D'après ce que je comprends, lorsque vous invoquez org-capture et que votre fichier cible org-capture n'existe pas, il doit en créer un. Lors de la création d'un fichier org vide, le modèle de fichier org est développé avec yasnippet (par le module :editor file-templates ). Cela crée normalement des superpositions sur toutes les régions modifiables de l'extrait de code - cependant, org-capture a ses propres idées sur la façon dont l'utilisateur va interagir avec ce fichier d'organisation: il le rétrécit, de sorte que l'extrait de code développé (et par conséquent, ces superpositions) ne sont plus visibles. Yasnippet essaie d'interagir avec ces superpositions qui existaient il y a seulement un instant, pour constater qu'elles ont disparu, et lève une erreur de type se plaignant qu'il s'attendait à une superposition. D'où l'erreur.

Malheureusement, le module de modèles de fichiers ne peut pas faire grand-chose à ce sujet car il n'y a aucun moyen de détecter "ce fichier org sera utilisé pour un tampon de capture org" au moment où sa logique s'exécute.

@rscircus En parlant de, rencontrez-vous toujours ce problème?

@rgrinberg Je pense que vous devez lire tout le fil de discussion, mais il est probablement encore déroutant. Donc, fondamentalement, ce comportement étrange disparaît au moment où le répertoire spécifié via (setq org-directory "/ chemin / vers / org /") et todo.org ou partout où votre capture existe. Dans la discussion ci-dessus, j'ai déplacé org-directory pour vérifier. Le correctif est de créer ce répertoire et ces fichiers manuellement et ce comportement indésirable a disparu. J'espère que cela répond aussi à votre question, @hlissner?

@rscircus La désactivation du module :editor file-templates résout- elle le problème?

OK, tout d'abord:

Sur feb9799f (2017-07-12), le bogue existe toujours. Déplacer org-directory et laisser emacs essayer de le créer aboutit au même comportement que celui décrit par @Ptival .

Sur de85f67b (2017-07-14), aussi.

Désactiver :editor file-templates dans init.el n'aide pas.

Encore une fois, ce qui a aidé est de créer le fichier de capture.

@rscircus Pourriez-vous produire une trace de votre erreur? ie activer le mode de débogage avec SPC h d d (ou M-x doom/toggle-debug-mode ) puis recréer l'erreur.

image

Au moment où j'ai frappé <space> ! Je suppose que vous avez ajouté un point d'arrêt quelque part?

@rscircus Hmm, rien ne cloche. Pourriez-vous également inclure votre M-x doom/info ?

''

  • Système d'exploitation: gnu / linux (x86_64-pc-linux-gnu)
  • Shell: / bin / zsh
  • Emacs: 26.2 (12 avril 2019)
  • Doom: 2.0.9 (HEAD -> développer, créer / développer de85f67b 14/07/2019 05:35:51 +0200)
  • Affichage graphique: t (démon: nil)
  • Fonctionnalités du système: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBEETS XIM MODULES THREADMS XWIDS LIBS
  • Détails:
    elisp env bootstrapper: envvar-file elc count: 0 uname -a: Linux 4.15.0-51-generic #55-Ubuntu SMP Wed May 15 14:27:21 UTC 2019 x86_64 modules: (:completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) treemacs vc-gutter vi-tilde-fringe window-select workspaces :editor evil file-templates fold multiple-cursors rotate-text snippets :emacs dired electric vc :tools eval flycheck (lookup +docsets) magit :lang data emacs-lisp markdown (org +dragndrop +ipython +pandoc +present) sh :config default) packages: (emojify org-pomodoro org-noter org-trello writeroom-mode esh-autosuggest fish-completion) exec-path: (~/.cargo/bin ~/.local/bin /home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin ~/.emacs.d/bin ~/local/bin ~/local/bin ~/local/bin ~/local/bin ~/.cargo/bin ~/.local/share/umake/bin ~/.cargo/bin ~/.local/bin /home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin ~/.emacs.d/bin ~/.local/share/anaconda3/bin ~/.sdkman/candidates/java/current/bin ~/local/bin ~/local/bin ~/.cargo/bin ~/.local/share/umake/bin ~/.cargo/bin /home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin /home/linuxbrew/.linuxbrew/bin /home/linuxbrew/.linuxbrew/sbin ~/.local/bin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /snap/bin ~/bin /usr/lib/jvm/java-11-openjdk-amd64/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin ~/.local/bin ~/local/src/go/bin ~/.fzf/bin /snap/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin ~/.local/bin ~/local/src/go/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin /usr/local/bin/ /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin /usr/local/sbin ~/dotfiles/bin ~/.local/bin ~/local/src/go/bin /snap/bin /usr/lib/x86_64-linux-gnu/emacs/26.2/x86_64-linux-gnu/)

Lorsque vous avez désactivé :editor file-templates , avez-vous exécuté doom refresh avant de redémarrer Emacs et de le tester?

C'est drôle, combien de fois j'ai lancé vim pour (chercher un) fix emacs : joie: aujourd'hui.

Eh bien, comme vous l'avez deviné, je n'ai pas doom refresh après avoir modifié init.el .

Oui, sans :editor file-template choses fonctionnent comme prévu.

Je crois que fb619bd présente une solution possible à ce problème. Quelqu'un pourrait-il le tester et me faire savoir si tel est le cas?

Je pense que ce n'est pas encore réglé. Voici un nouveau stacktrace:

Debugger entered--Lisp error: (wrong-type-argument overlayp nil)
  overlay-start(nil)
  yas--snapshot-overlay-location(nil 54 168)
  yas--auto-fill()
  internal-auto-fill()
  self-insert-command(1)
  newline(nil t)
  (if (and (sp-point-in-comment) comment-line-break-function) (funcall comment-line-break-function) (delete-horizontal-space t) (newline nil t) (indent-according-to-mode))
  +default--newline-indent-and-continue-comments-a()
  apply(+default--newline-indent-and-continue-comments-a nil)
  newline-and-indent()
  org-return(t)
  #f(compiled-function () (interactive nil) #<bytecode 0x404ac0d1>)()
  apply(#f(compiled-function () (interactive nil) #<bytecode 0x404ac0d1>) nil)
  org-return-indent()
  funcall-interactively(org-return-indent)
  call-interactively(org-return-indent nil nil)
  command-execute(org-return-indent)

@rgrinberg Je ne peux toujours pas reproduire cela. Pouvez-vous partager votre org-capture-templates ?

(("t" "Personal todo" entry
  (file+headline +org-capture-todo-file "Inbox")
  "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
 ("n" "Personal notes" entry
  (file+headline +org-capture-notes-file "Inbox")
  "* %u %?\n%i\n%a" :prepend t :kill-buffer t)
 ("p" "Templates for projects")
 ("pt" "Project todo" entry
  (file+headline +org-capture-project-todo-file "Inbox")
  "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
 ("pn" "Project notes" entry
  (file+headline +org-capture-project-notes-file "Inbox")
  "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
 ("pc" "Project changelog" entry
  (file+headline +org-capture-project-notes-file "Unreleased")
  "* TODO %?\n%i\n%a" :prepend t :kill-buffer t))

Je ne suis pas sûr que ce soit une question de tempaltes. Je n'ai jamais personnalisé mes modèles et ce n'est pas un problème que je peux reproduire de manière cohérente, donc la racine semble être autre chose.

Non, je ne suis pas sur Emacs 27. Emacs 26.3 ici :)
Le 30 octobre 2019 01:22 +0900, Henrik Lissner [email protected] , a écrit:

@rgrinberg Je ne peux toujours pas reproduire cela. Pourriez-vous partager vos modèles de capture d'org?
-
Vous recevez cela parce que vous avez été mentionné.
Répondez directement à cet e-mail, affichez-le sur GitHub ou désabonnez-vous.

@rgrinberg fd00870 devrait enfin résoudre ce problème. Faites-moi savoir si ce n'est pas le cas et je rouvrirai ce numéro.

Merci de m'appuyer là-dessus. Je vous ferai savoir si je peux reproduire
Le 2 novembre 2019, 02:21 +0900, Henrik Lissner [email protected] , a écrit:

@rgrinberg fd00870 devrait enfin résoudre ce problème. Faites-moi savoir si ce n'est pas le cas et je rouvrirai ce numéro.
-
Vous recevez cela parce que vous avez été mentionné.
Répondez directement à cet e-mail, affichez-le sur GitHub ou désabonnez-vous.

Depuis 037bcf3, j'ai implémenté une nouvelle solution de contournement pour les problèmes d'expansion de modèle de fichier comme ceux-ci. Cela devrait également aborder celui-ci, mais faites-moi savoir ici si ce n'est pas le cas.

Cette page vous a été utile?
0 / 5 - 0 notes