Doom-emacs: `overlayp` Fehler bei der ersten Verwendung von` Org Capture`

Erstellt am 10. Mai 2019  ·  33Kommentare  ·  Quelle: hlissner/doom-emacs

Hallo,

Ich gehe davon aus, dass Sie diesen Fehler nicht feststellen dürfen, da Sie Ihre Dateien bereits eingerichtet haben. Wenn Sie jedoch zum ersten Mal <spc> X ausführen und dann so etwas wie eine Aufgabe oder eine Notiz eingeben, wird ein Fehler von overlayp is nil angezeigt, wenn Geben Sie die Notiz jedes Mal ein, wenn Sie die Leertaste drücken (sie fügt auch eine neue Zeile ein oder kehrt zum Zeilenanfang zurück).

Sie können weiterhin C-c C-c drücken, um die Notiz zu vervollständigen, wodurch die Datei todo.org oder notes.org erstellt wird. Von nun an tritt der Fehler nicht mehr auf.

Die Schritte zur Reproduktion sind also:

  • Nuke eines deiner todo.org oder notes.org
  • Versuchen Sie dann, ein TODO oder eine Notiz zu erstellen, je nachdem, was Sie mit Atomwaffen versehen haben
  • Beginnen Sie mit der Eingabe des Titels Ihres TODO / Ihrer Notiz, drücken Sie die Leertaste und sehen Sie den Fehler

Könnte ein Upstream-Fehler in yasnippet sein, da der Fehler im Nachrichtenprotokoll lautet:

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

Alle 33 Kommentare

Ich kann bestätigen. Außerdem passierte es auch mit der allerersten todo.org und der allerersten notes.org Datei bei mir. Und nie wieder erschienen, nachdem die Dateien vorhanden sind.

Ich glaube, ich habe dieses Problem endlich aufgespürt. Könnten Sie Folgendes versuchen, um zu sehen, ob es das Problem löst?

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

21cf1c2 sollte dieses Problem beheben. Lassen Sie mich wissen, wenn dies nicht der Fall ist, und ich werde dieses Problem erneut öffnen. Vielen Dank, dass Sie mich darauf aufmerksam gemacht haben!

@hlissner , ich mache, wenn @ zu Hause. Beschäftigter Arbeitstag ...

Nein, habe es nicht behoben.

Auf ae365272 sein.

Hmm, in diesem Fall kann ich es nicht mehr reproduzieren. Zurück zum Zeichenbrett!

Es ist böse. Ich habe gerade

mv org org_bak
  • Starten Sie Emacs neu (A <Space> h R reproduziert es nicht!)

<Space> X>

Tippen -> erzeugt dieses seltsame Verhalten.

Ich habe es gerade ein zweites Mal reproduziert, um 100% sicher zu sein.

mv org_bak org behebt das Problem. Nur für den Fall, hier mein config.el relevanter Teil:

;;
;;; :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 Hat das Gleiche getan, ohne Wirkung. Können Sie Ihre M-x doom/info angeben?

`` `

  • Betriebssystem: gnu / linux (x86_64-pc-linux-gnu)
  • Emacs: 25.3.2 (19. April 2018)
  • Doom: 2.0.9 (HEAD -> entwickeln, _upgrade / entwickeln ae365272 2019-06-18 11:46:27 +0200)
  • Grafische Anzeige: t (Daemon: nil)
  • Systemmerkmale: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS Benachrichtigen Sie LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULE
  • Einzelheiten:
    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)

Weitere Details zu meiner Konfiguration: https://github.com/rscircus/dotfiles/tree/master/config/doom.d - möglicherweise eine Interaktion. 🤷

Um ehrlich zu sein, ist das Update ein ziemlich einfacher und notwendiger Schritt. Wenn Sie also wichtigere Dinge zu tun haben, werden diejenigen, die sich wirklich mit Doom-Emacs beschäftigen möchten, dieses Problem finden. ;)

Ich habe das gleiche Problem und verstehe die hier angebotene Problemumgehung nicht ganz. Wie kommt org_bak überhaupt ins Spiel? Ich verwende ~/org als Verzeichnis-Organisationsdateien. Benötige ich eine ähnliche Problemumgehung?

@rgrinberg So wie ich es verstehe, muss beim Fehlen Ihrer Org-Capture-Zieldatei eine erstellt werden. Beim Erstellen einer leeren Organisationsdatei wird die Organisationsdateivorlage mit yasnippet (durch das Modul :editor file-templates ) erweitert. Dadurch werden normalerweise Überlagerungen über alle bearbeitbaren Bereiche im Snippet erstellt. Org-Capture hat jedoch seine eigenen Vorstellungen darüber, wie der Benutzer mit dieser Org-Datei interagiert: Es wird sie eingegrenzt, sodass das erweiterte Snippet (und folglich diese Überlagerungen) sind nicht mehr sichtbar. Yasnippet versucht, mit diesen Überlagerungen zu interagieren, die erst vor einem Moment existierten, um festzustellen, dass sie verschwunden sind, und gibt einen Typfehler aus, der sich darüber beschwert, dass eine Überlagerung erwartet wird. Daher der Fehler.

Leider kann das Dateivorlagenmodul nicht viel dagegen tun, da zum Zeitpunkt der Ausführung seiner Logik nicht erkannt werden kann, dass "diese Organisationsdatei für einen Organisationserfassungspuffer verwendet wird".

@rscircus Apropos, tritt dieses Problem immer noch auf?

@rgrinberg Ich denke, du musst den ganzen Thread lesen, aber es ist wahrscheinlich immer noch verwirrend. Im Grunde genommen verschwindet dieses seltsame Verhalten in dem Moment, in dem das über (setq org-directory "/ path / to / org /") und todo.org angegebene Verzeichnis oder überall dort, wo Ihr Capture existiert, angegeben wird. In der obigen Diskussion habe ich org-directory verschoben, um dies zu überprüfen. Die Lösung besteht darin, dieses Verzeichnis und diese Dateien manuell zu erstellen, und dieses unerwünschte Verhalten ist verschwunden. Hoffe, das beantwortet auch deine Frage, @hlissner?

@rscircus Behebt das Deaktivieren des Moduls :editor file-templates das Problem?

OK, das Wichtigste zuerst:

Auf feb9799f (2017-07-12) existiert der Fehler immer noch. Das Verschieben von org-directory und das Versuchen von Emacs, es zu erstellen, führte zu demselben Verhalten wie von @Ptival beschrieben .

Auch auf de85f67b (2017-07-14).

Das Deaktivieren von :editor file-templates in init.el hilft nicht.

Auch hier hat es geholfen, die Erfassungsdatei zu erstellen.

@rscircus Könnten Sie aus Ihrem Fehler eine Rückverfolgung erstellen? Aktivieren Sie den Debug-Modus mit SPC h d d (oder M-x doom/toggle-debug-mode ) und erstellen Sie den Fehler erneut.

image

In dem Moment, in dem ich <space> ! Vermutlich haben Sie irgendwo einen Haltepunkt hinzugefügt?

@ rscircus Hmm , da M-x doom/info angeben?

`` `

  • Betriebssystem: gnu / linux (x86_64-pc-linux-gnu)
  • Shell: / bin / zsh
  • Emacs: 26,2 (12. April 2019)
  • Doom: 2.0.9 (HEAD -> Entwickeln, Ursprung / Entwickeln de85f67b 2019-07-14 05:35:51 +0200)
  • Grafische Anzeige: t (Daemon: nil)
  • Systemmerkmale: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT
  • Einzelheiten:
    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/)

Wenn Sie :editor file-templates deaktiviert haben, haben Sie doom refresh bevor Sie Emacs neu gestartet und getestet haben?

Komisch, wie oft ich vim ausgelöst habe, um (nach einem) Fix emacs zu suchen: Freude: heute.

Nun, wie Sie richtig geraten haben, habe ich nach dem Ändern von init.el nicht doom refresh init.el .

Ja, ohne :editor file-template funktionieren die Dinge wie geplant.

Ich glaube, fb619bd bietet eine mögliche Lösung für dieses Problem. Könnte jemand es ausprobieren und mich wissen lassen, ob dies der Fall ist?

Ich glaube, das ist noch nicht behoben. Hier ist eine neue Stapelspur:

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 Ich kann das immer noch nicht reproduzieren. Könnten Sie Ihre org-capture-templates teilen?

(("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))

Ich bin mir nicht sicher, ob dies eine Frage der Tempaltes ist. Ich habe meine Vorlagen nie angepasst und dies ist kein Problem, das ich konsistent reproduzieren kann, sodass der Stamm etwas anderes zu sein scheint.

Nein, ich bin nicht auf Emacs 27. Emacs 26.3 hier :)
Am 30. Oktober 2019 um 01:22 Uhr +0900 schrieb Henrik Lissner [email protected] :

@rgrinberg Ich kann das immer noch nicht reproduzieren. Könnten Sie Ihre Org-Capture-Vorlagen teilen?
- -
Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub an oder melden Sie sich ab.

@rgrinberg fd00870 sollte dies endlich ansprechen. Lassen Sie mich wissen, wenn dies nicht der Fall ist, und ich werde dieses Problem erneut öffnen.

Vielen Dank, dass Sie sich mit mir in Verbindung gesetzt haben. Ich werde Sie wissen lassen, ob ich reproduzieren kann
Am 2. November 2019, 02:21 Uhr +0900, schrieb Henrik Lissner [email protected] :

@rgrinberg fd00870 sollte dies endlich ansprechen. Lassen Sie mich wissen, wenn dies nicht der Fall ist, und ich werde dieses Problem erneut öffnen.
- -
Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub an oder melden Sie sich ab.

Ab 037bcf3 habe ich eine neue Problemumgehung für solche Probleme bei der Erweiterung von Dateivorlagen implementiert. Dies sollte auch dieses Problem angehen, aber lassen Sie mich hier wissen, wenn dies nicht der Fall ist.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen