Doom-emacs: [BUG] Ob-async funktioniert nicht.

Erstellt am 4. Nov. 2019  ·  25Kommentare  ·  Quelle: hlissner/doom-emacs

die Fehlerausgabe
error in process sentinel: Cannot open load file: No such file or directory, org-version.el
siehe Probleme
wenn Sie rm -rf ~/.emacs.d/.local/straight/build/org-plus-contrib/*.elc aufräumen. es funktioniert.
Aber wir haben ein neues Problem, der Emacs kann die Org-Version nicht finden. ähnliche wie diese Probleme .

:lang org bug resolved

Hilfreichster Kommentar

Schön! Es klappt! 💯

Alle 25 Kommentare

Wir haben diesen Hack eingerichtet , um dieses Problem zu verhindern. Ich kann es nicht reproduzieren. Bitte geben Sie Ihre M-x doom/info und Schritte zur Reproduktion an.

Außerdem ist ob-async bereits von Doom installiert . Sie müssen es nicht selbst installieren oder konfigurieren.

Außerdem ist ob-async bereits von Doom installiert . Sie müssen es nicht selbst installieren oder konfigurieren.

Ich wusste, dass Ob-Async in der Org-Funktion enthalten ist. Ich habe gerade (use-package! ob-async) in meiner Konfigurationsdatei hinzugefügt. wenn Sie dies nicht konfigurieren. das ob async funktioniert nicht.

Wir haben diesen Hack eingerichtet , um dieses Problem zu verhindern. Ich kann es nicht reproduzieren. Bitte geben Sie Ihre M-x doom/info und Schritte zur Reproduktion an.

emacs   version    26.3
        features   NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS
        build      Sep 02, 2019
        buildopts  (--with-ns '--enable-locallisppath=/Library/Application Support/Emacs/${version}/site-lisp:/Library/Application Support/Emacs/site-lisp' --with-modules)
        windowsys  ns
        daemonp    server-running
doom    version    2.0.9
        build      HEAD -> develop, origin/develop, origin/HEAD 04a2cb94c 2019-11-02 23:34:34 -0800
system  type       darwin
        config     x86_64-apple-darwin18.2.0
        shell      /bin/zsh
        uname      Darwin 19.0.0 Darwin Kernel Version 19.0.0: Thu Oct 17 16:17:15 PDT 2019; root:xnu-6153.41.3~29/RELEASE_X86_64 x86_64
        path       (~/.poetry/bin/ /usr/local/opt/texinfo/bin/ /usr/local/opt/nss/bin/ ~/anaconda3/bin/ /usr/local/opt/imagemagick@6/bin/ ~/.cargo/bin/ /usr/local/bin/ /usr/local/opt/texinfo/bin/ /usr/bin/ /bin/ /usr/sbin/ /sbin/ /Applications/VMware Fusion.app/Contents/Public/ /Library/TeX/texbin/ /usr/local/MacGPG2/bin/ /opt/X11/bin/ /Applications/Wireshark.app/Contents/MacOS/ /usr/local/opt/ ~/go/bin/ /Applications/Emacs.app/Contents/MacOS/libexec/)
config  envfile    envvar-file
        elc-files  0
        modules    (:input chinese :completion company helm 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 file-templates fold rotate-text snippets :emacs dired electric ibuffer vc :tools (eval +overlay) flycheck (lookup +docsets) lsp magit :lang cc common-lisp data emacs-lisp ess go (haskell +intero) julia latex markdown nix (org +dragndrop +hugo +ipython +pandoc +present) python sh :app (rss +org) :config (default +smartparens) :private spacemacs-default)
        packages   (n/a)
        elpa       (n/a)

das hilft Ihnen beim einfachen Testen: Org-src:

+BEGIN_SRC sh :async

Schlaf 4s && Echo 'fertig'

+END_SRC

+ ERGEBNISSE:

: getan

Stellen Sie sicher, dass die Ergebnisse die asynchrone Aufgaben-ID : 569af356b1428415f897587c8a351308 ausgegeben haben
Wenn Sie ein Problem erhalten, das org-version.el nicht findet
versuch mal dies auszuführen:

+BEGIN_SRC sh

rm -rf ~/.emacs.d/.local/straight/build/org-plus-contrib/*.elc

+END_SRC

Ah, ich kann es reproduzieren. Versuchen Sie dies und sehen Sie, ob das Problem dadurch behoben wird:

(add-hook! 'ob-async-pre-execute-src-block-hook
           (load (expand-file-name "init.el" user-emacs-directory)))

danke, das Problem ist damit gelöst. aber wenn der Benutzer die Initialisierungslogik in ob-async-pre-execute-src-block-hook platziert, die vor der Ausführung jedes src-Blocks ausgeführt wird. wie Julia:
(add-hook 'ob-async-pre-execute-src-block-hook '(lambda () (setq inferior-julia-program-name "/nix/store/qzpr1kwkhnz55mdlq8skc5sqrc6l2j2b-system-path/bin/julia") ))

deine Konfiguration hinzugefügt
`ob-async.el.

Value ((lambda nil (setq inferior-julia-program-name "/nix/store/qzpr1kwkhnz55mdlq8skc5sqrc6l2j2b-system-path/bin/julia")) (lambda (&rest _) (load (expand-file-name "init.el" user-emacs-directory))))

neues Problem.
error in process sentinel: async-handle-result: Cannot open load file: No such file or directory, ob-julia error in process sentinel: Cannot open load file: No such file or directory, ob-julia
Also, wie man eine Konfiguration schreibt, die von beiden ohne Fehler geladen werden kann.

Wie wäre es mit:

(defadvice! +org-init-doom-during-async-executation-a (orig-fn &rest args)
    :around #'ob-async-org-babel-execute-src-block
    (let ((ob-async-pre-execute-src-block-hook
           (cons (lambda () (load (expand-file-name "init.el" user-emacs-directory)))
                 ob-async-pre-execute-src-block-hook)))
      (apply orig-fn args)))

Dies sollte sicherstellen, dass unser Haken immer an erster Stelle steht.

(defadvice! +org-init-doom-during-async-executation-a (orig-fn &rest args)
    :around #'ob-async-org-babel-execute-src-block
    (let ((ob-async-pre-execute-src-block-hook
           (cons (lambda () (load (expand-file-name "init.el" user-emacs-directory)))
                 ob-async-pre-execute-src-block-hook)))
      (apply orig-fn args)))

error in process sentinel: async-handle-result: Cannot open load file: No such file or directory, org error in process sentinel: Cannot open load file: No such file or directory, org

Debug-Informationen :


Debugger eingegeben - Lisp-Fehler: (Datei fehlt "Kann Ladedatei nicht öffnen" "Keine solche Datei oder Verzeichnis" "org")
signal(file-missing ("Cannot open load file" "No such file or directory" "org"))
async-handle-result((lambda (result) (with-current-buffer #(let ((default-directory "/home/gtrun/project/my-code/my-julia/")) (save-excursion (cond ((member "none" ...) (message "result silent")) ((Mitglied "still" ...) (Nachricht ...)) (t (goto-char #) (lass ... ... ... ...))) (Run-Hooks (Zitat org-babel-after-execute-hook)))))) (Async-Signal (Datei fehlt "Cannot open Datei laden" "Keine solche Datei oder Verzeichnis" "org")) #)
async-wenn-fertig(#"fertig")

Diese Fehler scheinen nicht zusammenhängend zu sein, aber versuchen Sie Folgendes:

(defadvice! +org-init-doom-during-async-executation-a (orig-fn &rest args)
    :around #'ob-async-org-babel-execute-src-block
    (let ((ob-async-pre-execute-src-block-hook
           ;; Ensure our hook is always first
           (cons `(lambda ()
                    (load ,doom-autoload-file)
                    (load ,doom-package-autoload-file))
                 ob-async-pre-execute-src-block-hook)))
      (apply orig-fn args)))

Diese Fehler scheinen nicht zusammenhängend zu sein, aber versuchen Sie Folgendes:

(defadvice! +org-init-doom-during-async-executation-a (orig-fn &rest args)
    :around #'ob-async-org-babel-execute-src-block
    (let ((ob-async-pre-execute-src-block-hook
           ;; Ensure our hook is always first
           (cons `(lambda ()
                    (load ,doom-autoload-file)
                    (load ,doom-package-autoload-file))
                 ob-async-pre-execute-src-block-hook)))
      (apply orig-fn args)))

error in process sentinel: async-handle-result: Symbol’s function definition is void: after! error in process sentinel: Symbol’s function definition is void: after!

Ich kann diese neuen Fehler nicht reproduzieren, aber versuche Folgendes:

(defadvice! +org-init-doom-during-async-executation-a (orig-fn &rest args)
    :around #'ob-async-org-babel-execute-src-block
    (let ((ob-async-pre-execute-src-block-hook
           ;; Ensure our hook is always first
           (cons `(lambda ()
                    (load ,(expand-file-name "init.el" doom-emacs-dir)))
                 ob-async-pre-execute-src-block-hook)))
      (apply orig-fn args)))

Kannst du, wenn möglich, auf unseren Discord hüpfen ? Ich will hier nicht spammen.

Ist dieses Problem gelöst? Ich habe die neueste Version von Doom als 19.11.2019 20:30 PDT. Aber ich habe immer noch die Datei org-version.el vermisst.

Ist dieses Problem gelöst? Ich habe die neueste Version von Doom als 19.11.2019 20:30 PDT. Aber ich habe immer noch die Datei org-version.el vermisst.

~Sicher, in meiner Konfiguration mit der neuesten Doom-Version tritt kein Problem auf. Sie brauchen nur eine Konfiguration zu Ihrem Doom. für asynchron~
~(benutze-Paket! 'ob-async)~
Nicht mehr in meiner Konfiguration
getestet auf darwin und nixos

emacs   version    26.3
        features   NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS
        build      Sep 02, 2019
        buildopts  (--with-ns '--enable-locallisppath=/Library/Application Support/Emacs/${version}/site-lisp:/Library/Application Support/Emacs/site-lisp' --with-modules)
        windowsys  ns
        daemonp    server-running
doom    version    2.0.9
        build      HEAD -> develop, origin/develop, origin/HEAD ff179b080 2019-11-18 18:13:59 -0800
system  type       darwin
        config     x86_64-apple-darwin18.2.0
        shell      /bin/zsh
        uname      Darwin 19.0.0 Darwin Kernel Version 19.0.0: Thu Oct 17 16:17:15 PDT 2019; root:xnu-6153.41.3~29/RELEASE_X86_64 x86_64
        path       (~/.poetry/bin/ ~/.cargo/bin/ /usr/local/bin/ /usr/bin/ /bin/ /usr/sbin/ /sbin/ /Applications/VMware Fusion.app/Contents/Public/ /Library/TeX/texbin/ /usr/local/MacGPG2/bin/ /usr/local/share/dotnet/ /opt/X11/bin/ ~/.dotnet/tools/ /Applications/Wireshark.app/Contents/MacOS/ ~/.poetry/bin/ /usr/local/opt/texinfo/bin/ /usr/local/opt/nss/bin/ ~/anaconda3/bin/ /usr/local/opt/imagemagick@6/bin/ ~/.cargo/bin/ /usr/local/opt/ ~/go/bin/ /Applications/Emacs.app/Contents/MacOS/bin-x86_64-10_14/ /Applications/Emacs.app/Contents/MacOS/libexec-x86_64-10_14/ /Applications/Emacs.app/Contents/MacOS/libexec/)
config  envfile    envvar-file
        elc-files  0
        modules    (:input chinese :completion company helm ivy :ui doom doom-dashboard doom-quit hl-todo indent-guides modeline nav-flash ophints (popup +all +defaults) treemacs vc-gutter vi-tilde-fringe window-select workspaces :editor file-templates fold rotate-text snippets :emacs dired electric ibuffer vc :term eshell :tools (eval +overlay) flycheck (lookup +docsets) lsp magit pass upload :lang cc common-lisp data emacs-lisp ess go (haskell +intero) julia latex markdown nix (org +dragndrop +hugo +ipython +pandoc +present) python scheme sh :app (rss +org) :config (default +smartparens) :private spacemacs-default my-org my-code)
        packages   (n/a)
        elpa       (n/a)

Ich kann das Problem nicht mehr reproduzieren. @ztlevi Versuchen Sie doom build .

(use-package! 'ob-async)

Tun Sie dies nicht. Es ist unnötig und lädt alle org. ob-async wird automatisch geladen, wenn Ihr src-Block eine :async Eigenschaft ungleich Null hat.

Ich bekomme den Fehler immer noch.

error in process sentinel: async-handle-result: Cannot open load file: No such file or directory, org-version.el
error in process sentinel: Cannot open load file: No such file or directory, org-version.el

Ich verwende org-wild-notifier. Können Sie bitte dieses Paket ausprobieren und es aktivieren M-x org-wild-notifier-mode

(package! org-wild-notifier)
(use-package! org-wild-notifier
  :defer t
  :init
  (add-hook 'doom-post-init-hook #'org-wild-notifier-mode t)
  :config
  (setq org-wild-notifier-alert-time 15
        alert-default-style (if IS-MAC 'osx-notifier 'libnotify)))

@ztlevi

  1. (package! org-wild-notifier) zu ~/.doom.d/packages.el hinzugefügt
  2. use-package! Block zu ~/.doom.d/config.el hinzugefügt
  3. doom refresh
  4. Emacs neu starten
  5. Org-Datei geöffnet und ausgeführt

    #+BEGIN_SRC sh :async t
    sleep 2
    echo 25
    #+END_SRC
    

Lief ohne Probleme. Habe es sogar mehrmals laufen lassen.

Derzeit auf 24efd5b90 mit Emacs 26.3.

Randnotiz: doom-post-init-hook existiert nicht mehr. Es wurde vor einiger Zeit durch doom-after-init-modules-hook , also wird org-wild-notifier nicht einmal geladen.

Was ist, wenn Sie es manuell auslösen? Hast du den Fehler bekommen?

Randnotiz: doom-post-init-hook existiert nicht mehr. Es wurde vor einiger Zeit durch doom-after-init-modules-hook , also wird org-wild-notifier nicht einmal geladen.

dieses Problem nicht über org-babel-async. Ich habe versucht, den org-wild-notifier herunterzuladen. habe auch den gleichen fehlerbericht bekommen.

Agh. Ich sehe es. Auf diese Weise kratzt org-wild-notifier Ihre Org-Agenda-Dateien. Es verwendet async ähnlich wie ob-async, außer dass es uns im Gegensatz zu ob-async keine Möglichkeit bietet, den Zustand von Doom vor der Ausführung einzufügen.

Dies ist von Dooms Seite aus nicht trivial zu beheben. Ich schlage vor, stattdessen org-alert zu verwenden (oder org-notify, enthalten in org-plus-contrib).

Emm, Org-Alarm funktioniert nicht wirklich. org-notify macht zwar eine Pop-Benachrichtigung, aber es wiederholt die Benachrichtigung alle zwei Minuten, was sehr ärgerlich ist.

Ist dies möglich, um es von org-wild-notifier-mode zu beheben? Wenn ja, möchte ich ein Problem eröffnen

Ab 30f72da habe ich eine neue Lösung für dieses und das ob-async-Problem verwendet, die Ihr Problem mit dem org-wild-notifier-mode lösen sollte. Lassen Sie es mich wissen, wenn das nicht der Fall ist.

(Sie müssen doom build nach doom upgrade ausführen, damit dies vollständig funktioniert, es sei denn, das Organisationspaket wird aktualisiert.)

Schön! Es klappt! 💯

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen