Doom-emacs: Error de "superposición" cuando se usa "Org Capture" por primera vez

Creado en 10 may. 2019  ·  33Comentarios  ·  Fuente: hlissner/doom-emacs

Oye,

Supongo que no debe encontrar este error ya que ya tiene sus archivos configurados, pero la primera vez que hace <spc> X luego ingresa algo como una tarea o una nota, obtiene un error overlayp is nil cuando escribir la nota cada vez que presiona la barra espaciadora (también inserta una nueva línea o vuelve al principio de la línea).

Aún puede presionar C-c C-c para completar la nota, lo que crea el archivo todo.org o notes.org , y de ahora en adelante, el error no ocurre.

Entonces supongo que los pasos para reproducir son:

  • Nuke uno de sus todo.org o notes.org
  • luego intente crear un TODO o una nota, dependiendo de lo que haya nuked
  • comience a escribir el título de su TODO / nota, presione Espacio, vea el error

Podría ser un error ascendente en yasnippet, dado que el error en el registro de mensajes es:

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

Todos 33 comentarios

Puedo confirmar. Además, también sucedió con el primer archivo todo.org y el primer archivo notes.org conmigo. Y nunca volvió a aparecer después de que los archivos existieran.

Creo que finalmente encontré este problema. ¿Podría intentar lo siguiente para ver si lo resuelve?

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

21cf1c2 debería resolver este problema. Avíseme si ese no es el caso y reabriré este problema. ¡Gracias por llamar mi atención!

@hlissner , lo haré cuando @ en casa. Día ocupado en el trabajo ...

No, no lo arreglé.

Estar en ae365272.

Hmm, en ese caso ya no puedo reproducirlo. ¡De vuelta a la mesa de dibujo!

Es malvada. yo solo

mv org org_bak
  • Reinicie Emacs (¡A <Space> h R no lo reproduce!)

<Space> X>

Escribir -> produce este comportamiento extraño.

Lo reproduje por segunda vez hace un momento, para estar 100% seguro.

mv org_bak org soluciona el problema. Por si acaso, aquí mi config.el parte relevante:

;;
;;; :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 Hizo lo mismo, sin ningún efecto. ¿Puede proporcionar su M-x doom/info ?

''

  • SO: gnu / linux (x86_64-pc-linux-gnu)
  • Emacs: 25.3.2 (19 de abril de 2018)
  • Doom: 2.0.9 (HEAD -> desarrollar, _upgrade / desarrollar ae365272 2019-06-18 11:46:27 +0200)
  • Pantalla gráfica: t (daemon: nil)
  • Características del sistema: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFICAR LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES
  • Detalles:
    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)

Más detalles sobre mi configuración: https://github.com/rscircus/dotfiles/tree/master/config/doom.d - tal vez una interacción. 🤷

Para ser honesto, la solución es un paso bastante fácil y necesario, por lo que si tiene cosas más importantes que hacer, aquellos que realmente quieran profundizar en Doom emacs encontrarán este problema. ;)

Tengo el mismo problema y no entiendo bien la solución que se ofrece aquí. ¿Cómo entra en juego org_bak? No uso ~/org como archivos de organización de directorio, ¿necesito una solución similar?

@rgrinberg De la forma en que yo lo entiendo, cuando invoca org-capture y su archivo de destino de org-capture no existe, tiene que crear uno. Al crear un archivo org vacío, la plantilla del archivo org se expande con yasnippet (por el módulo :editor file-templates ). Esto normalmente crea superposiciones sobre todas las regiones editables en el fragmento; sin embargo, org-capture tiene sus propias ideas sobre cómo el usuario interactuará con este archivo de organización: lo reduce, de modo que el fragmento expandido (y en consecuencia, esas superposiciones) ya no son visibles. Yasnippet intenta interactuar con estas superposiciones que existían hace solo un momento, para descubrir que se han ido y arroja un error de tipo quejándose de que esperaba una superposición. De ahí el error.

Desafortunadamente, el módulo de plantillas de archivos no puede hacer mucho al respecto porque no hay forma de detectar "este archivo de organización se utilizará para un búfer de captura de organización" en el momento en que se ejecuta su lógica.

@rscircus Hablando de

@rgrinberg Creo que tienes que leer todo el hilo, pero probablemente aún sea confuso. Entonces, básicamente, este comportamiento extraño desaparece en el momento en que el directorio especificado a través de (setq org-directory "/ ruta / a / org /") y todo.org o donde sea que exista su captura. En la discusión anterior moví org-directory para verificar. La solución es crear ese directorio y archivos manualmente y este comportamiento indeseable desapareció. Espero que esto también responda a tu pregunta, ¿@hlissner?

@rscircus ¿La desactivación del módulo :editor file-templates soluciona el problema?

OK, lo primero es lo primero:

En feb9799f (2017-07-12) el error aún existe. Mover org-directory y dejar que emacs intente crearlo resultó en el mismo comportamiento descrito por @Ptival .

En de85f67b (2017-07-14), también.

Deshabilitar :editor file-templates en init.el no ayuda.

Nuevamente, lo que ayudó fue crear el archivo de captura.

@rscircus ¿Podrías producir un retroceso de tu error? es decir, habilite el modo de depuración con SPC h d d (o M-x doom/toggle-debug-mode ) y luego vuelva a crear el error.

image

En el momento en que llegué a <space> ! ¿Supongo que agregó un punto de interrupción en alguna parte?

@rscircus Hmm, no M-x doom/info ?

''

  • SO: gnu / linux (x86_64-pc-linux-gnu)
  • Shell: / bin / zsh
  • Emacs: 26.2 (12 de abril de 2019)
  • Doom: 2.0.9 (HEAD -> desarrollar, originar / desarrollar de85f67b 2019-07-14 05:35:51 +0200)
  • Pantalla gráfica: t (daemon: nil)
  • Características del sistema: 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 XDBE XIM MÓDULOS HILOS LCS XW
  • Detalles:
    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/)

Cuando desactivó :editor file-templates , ¿ejecutó doom refresh antes de reiniciar Emacs y probarlo?

Es curioso, la frecuencia con la que encendí vim para (buscar a) arreglar emacs : joy: today.

Bueno, como adivinaste correctamente, no lo hice doom refresh después de modificar init.el .

Sí, sin :editor file-template cosas funcionan según lo diseñado.

Creo que fb619bd presenta una posible solución para este problema. ¿Alguien podría probarlo y hacerme saber si ese es el caso?

Creo que esto aún no está arreglado. Aquí hay un seguimiento de pila nuevo:

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 Todavía no puedo reproducir esto. ¿Podrías compartir tus 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))

No estoy seguro si esto es una cuestión de tempaltes. Nunca personalicé mis plantillas y este no es un problema que pueda reproducir de manera consistente, por lo que la raíz parece ser otra cosa.

No, no estoy en Emacs 27. Emacs 26.3 aquí :)
El 30 de octubre de 2019 01:22 +0900, Henrik Lissner [email protected] , escribió:

@rgrinberg Todavía no puedo reproducir esto. ¿Podrías compartir tus plantillas de captura de organización?
-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub o cancele la suscripción.

@rgrinberg fd00870 finalmente debería abordar esto. Avíseme si ese no es el caso y reabriré este problema.

Gracias por aguantarme en esto. Te haré saber si puedo reproducir
El 2 de noviembre de 2019, 2:21 a.m. + 0900, Henrik Lissner [email protected] , escribió:

@rgrinberg fd00870 finalmente debería abordar esto. Avíseme si ese no es el caso y reabriré este problema.
-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub o cancele la suscripción.

A partir de 037bcf3, he implementado una nueva solución para problemas de expansión de plantilla de archivo como estos. Esto también debería abordar este, pero avíseme aquí si ese no es el caso.

¿Fue útil esta página
0 / 5 - 0 calificaciones