Привет,
Я предполагаю, что вы не должны столкнуться с этой ошибкой, поскольку ваши файлы уже настроены, но в первый раз, когда вы сделаете <spc> X
затем введете что-то вроде задачи или заметки, вы получите ошибку overlayp is nil
когда вводить заметку каждый раз, когда вы нажимаете пробел (она также вставляет новую строку или возвращается в начало строки).
Вы все еще можете нажать C-c C-c
чтобы завершить заметку, в результате чего будет создан файл todo.org
или notes.org
, и с этого момента ошибка не возникает.
Итак, я предполагаю, что шаги для воспроизведения:
todo.org
или notes.org
Это могла быть ошибка восходящего потока в yasnippet, учитывая, что ошибка в журнале сообщений:
yas--snapshot-overlay-location: Wrong type argument: overlayp, nil [2 times]
Я могу подтвердить. Далее то же самое произошло и с самым первым todo.org
и самым первым файлом notes.org
который у меня тоже. И больше никогда не появлялся после того, как файлы стали существовать.
Думаю, я наконец нашел эту проблему. Не могли бы вы попробовать следующее, чтобы увидеть, решает ли оно это?
(add-hook 'org-capture-mode-hook #'yas-abort-snippet)
21cf1c2 должен решить эту проблему. Дайте мне знать, если это не так, и я снова открою эту проблему. Спасибо, что обратили мое внимание!
@hlissner , сделаю, когда @ home. Напряженный день на работе ...
Нет, не исправил.
Находясь на ae365272.
Хм, в таком случае я больше не могу это воспроизвести. Вернуться к доске для рисования!
Это ужасно. я просто
mv org org_bak
<Space> h R
не воспроизводит его!)<Space> X>
Ввод -> вызывает такое странное поведение.
Воспроизведено второй раз только сейчас, для 100% уверенности.
mv org_bak org
устраняет проблему. На всякий случай вот моя 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 Сделал то же самое, но M-x doom/info
?
``
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)
Дополнительные сведения о моей конфигурации: https://github.com/rscircus/dotfiles/tree/master/config/doom.d - возможно, взаимодействие. 🤷
Если честно, исправление - довольно простой и необходимый шаг, поэтому, если у вас есть дела поважнее, те, кто действительно хочет покопаться в doom emacs, найдут эту проблему. ;)
У меня такая же проблема, и я не совсем понимаю предлагаемое здесь решение. Как вообще в игру вступает org_bak? Я не использую ~/org
в качестве файлов организации каталога, нужно ли мне подобное решение?
@rgrinberg Как я понимаю, когда вы вызываете org-capture, а ваш целевой файл org-capture не существует, он должен его создать. После создания пустого организационного файла шаблон организационного файла расширяется с помощью yasnippet (модулем :editor file-templates
). Обычно это создает наложения на все редактируемые области во фрагменте, однако у org-capture есть свои собственные идеи о том, как пользователь будет взаимодействовать с этим организационным файлом: он сужает его, так что расширенный фрагмент (и, следовательно, эти наложения) больше не видны. Yasnippet пытается взаимодействовать с этими наложениями, которые существовали всего мгновение назад, чтобы обнаружить, что они исчезли, и выдает ошибку типа, жалуясь, что ожидалось наложение. Отсюда и ошибка.
К сожалению, модуль file-templates не может многое с этим поделать, потому что нет способа определить, «этот организационный файл будет использоваться для буфера захвата организации» во время выполнения его логики.
@rscircus Кстати, у вас все еще
@rgrinberg Я думаю, вам нужно прочитать всю todo.org
или там, где существует ваш захват. В приведенном выше обсуждении я переместил org-directory
чтобы проверить. Исправление состоит в том, чтобы создать этот каталог и файлы вручную, и это нежелательное поведение исчезнет. Надеюсь, это тоже ответ на твой вопрос, @hlissner?
@rscircus Устраняет ли :editor file-templates
?
Хорошо, обо всем по порядку:
На feb9799f
(12.07.2017) ошибка все еще существует. Перемещение org-directory
и предоставление emacs возможности его создать привело к тому же поведению, что описано в @Ptival .
На de85f67b
(14.07.2017) тоже.
Отключение :editor file-templates
в init.el
не помогает.
Опять же, помогло создание файла захвата.
@rscircus Не могли бы вы произвести трассировку вашей ошибки? т.е. включите режим отладки с помощью SPC h d d
(или M-x doom/toggle-debug-mode
), затем заново создайте ошибку.
В тот момент, когда я нажму <space>
! Думаю, вы где-то добавили точку останова?
@rscircus Хм, ничего M-x doom/info
?
``
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/)
Когда вы отключили :editor file-templates
, запускали ли вы doom refresh
перед перезапуском Emacs и его тестированием?
Забавно, как часто я запускал vim
чтобы (поискать) исправить emacs
: joy: сегодня.
Как вы уже догадались, я не сделал doom refresh
после изменения init.el
.
Да, без :editor file-template
все работает как задумано.
Я считаю, что fb619bd представляет собой возможное решение этой проблемы. Может ли кто-нибудь проверить это и сообщить мне, так ли это?
Я считаю, что это еще не исправлено. Вот свежий стек:
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 Я до сих пор не могу воспроизвести это. Не могли бы вы поделиться своими 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))
Я не уверен, что дело в темпальтах. Я никогда не настраивал свои шаблоны, и это не проблема, которую я могу постоянно воспроизводить, поэтому корень кажется чем-то другим.
Нет, я не использую Emacs 27. Здесь Emacs 26.3 :)
30 октября 2019 г. 01:22 +0900 Хенрик Лисснер [email protected] написал:
@rgrinberg Я до сих пор не могу воспроизвести это. Не могли бы вы поделиться своими шаблонами org-capture?
-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub или откажитесь от подписки.
@rgrinberg fd00870 должен наконец решить эту проблему. Сообщите мне, если это не так, и я снова открою эту проблему.
Спасибо, что согласились со мной по этому поводу. Я дам вам знать, смогу ли я воспроизвести
2 ноября 2019 г., 2:21 AM +0900, Хенрик Лисснер [email protected] написал:
@rgrinberg fd00870 должен наконец решить эту проблему. Сообщите мне, если это не так, и я снова открою эту проблему.
-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub или откажитесь от подписки.
Начиная с 037bcf3 я реализовал новый обходной путь для подобных проблем с расширением шаблонов файлов. Это также должно касаться этого, но дайте мне знать, если это не так.