Doom-emacs: [BUG] Ob-async tidak berfungsi.

Dibuat pada 4 Nov 2019  ·  25Komentar  ·  Sumber: hlissner/doom-emacs

keluaran bug
error in process sentinel: Cannot open load file: No such file or directory, org-version.el
lihat masalah
jika Anda membersihkan rm -rf ~/.emacs.d/.local/straight/build/org-plus-contrib/*.elc . bekerja.
Tapi, kami mendapat masalah baru, emacs tidak dapat menemukan versi org. serupa seperti masalah ini.

:lang org bug resolved

Komentar yang paling membantu

Bagus! Berhasil! 💯

Semua 25 komentar

Kami memiliki peretasan ini untuk mencegah masalah ini. Saya tidak dapat mereproduksinya. Harap sertakan M-x doom/info dan langkah-langkah untuk mereproduksinya.

Juga, ob-async sudah diinstal oleh Doom . Anda tidak perlu menginstal atau mengkonfigurasinya sendiri.

Juga, ob-async sudah diinstal oleh Doom . Anda tidak perlu menginstal atau mengkonfigurasinya sendiri.

Saya tahu, Ob-async termasuk dalam fitur org. Saya baru saja menambahkan (use-package! ob-async) di file konfigurasi saya. jika Anda tidak mengkonfigurasi ini. ob async tidak berfungsi.

Kami memiliki peretasan ini untuk mencegah masalah ini. Saya tidak dapat mereproduksinya. Harap sertakan M-x doom/info dan langkah-langkah untuk mereproduksinya.

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)

yang akan membantu Anda menguji dengan mudah: Org-src:

+BEGIN_SRC sh :async

tidur 4s && gema 'selesai'

+END_SRC

+HASIL:

: selesai

pastikan hasil memiliki ID tugas asinkron keluaran : 569af356b1428415f897587c8a351308
jika Anda mendapatkan masalah yang tidak menemukan org-version.el
coba jalankan ini:

+BEGIN_SRC sh

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

+END_SRC

Ah, saya bisa mereproduksinya. Coba ini dan lihat apakah itu menyelesaikan masalah:

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

terima kasih, itu memecahkan masalah. tetapi jika pengguna menempatkan logika inisialisasi di ob-async-pre-execute-src-block-hook, yang berjalan sebelum eksekusi setiap blok src. seperti Julia:
(add-hook 'ob-async-pre-execute-src-block-hook '(lambda () (setq inferior-julia-program-name "/nix/store/qzpr1kwkhnz55mdlq8skc5sqrc6l2j2b-system-path/bin/julia") ))

menambahkan konfigurasi Anda
`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))))

masalah baru.
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
Jadi, bagaimana menulis konfigurasi yang dapat memuat keduanya tanpa kesalahan.

Bagaimana tentang:

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

Ini harus memastikan bahwa hook kita selalu menjadi yang pertama.

(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

informasi debug:


Debugger dimasukkan--Kesalahan Lisp: (file hilang "Tidak dapat membuka file muat" "Tidak ada file atau direktori seperti itu" "org")
signal(file-missing ("Tidak dapat membuka file yang dimuat" "Tidak ada file atau direktori seperti itu" "org"))
async-handle-result((lambda (hasil) (dengan buffer-saat ini #(biarkan ((direktori default "/home/gtrun/project/kode-saya/julia-saya/")) (simpan-wisata (cond ((anggota "tidak ada" ...) (pesan "hasil dibungkam")) ((anggota "diam" ...) (pesan ...)) (t (goto-char #) (biarkan ... ... ... ...))) (run-hooks (kutipan org-babel-after-execute-hook)))))) (async-signal (file-hilang "Tidak dapat membuka memuat file" "Tidak ada file atau direktori seperti itu" "org")) #)
async-ketika-selesai(#"selesai")

Kesalahan itu tampaknya tidak terkait, tetapi coba ini:

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

Kesalahan itu tampaknya tidak terkait, tetapi coba ini:

(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!

Saya tidak dapat mereproduksi kesalahan baru ini, tetapi coba ini:

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

Jika memungkinkan, bisakah Anda mengikuti perselisihan kami ? Saya tidak ingin spam di sini.

Apakah masalah ini terpecahkan? Saya memiliki versi terbaru dari malapetaka sebagai 19/11/2019 20:30 PDT. Tapi saya masih kehilangan file org-version.el .

Apakah masalah ini terpecahkan? Saya memiliki versi terbaru dari malapetaka sebagai 19/11/2019 20:30 PDT. Tapi saya masih kehilangan file org-version.el .

~ Tentu, Tidak ada masalah yang muncul di konfigurasi saya dengan versi malapetaka terbaru. Anda hanya perlu satu konfigurasi untuk kehancuran Anda. untuk asinkron~
~(gunakan-paket! 'ob-async)~
Tidak lagi di konfigurasi saya
diuji pada darwin dan 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)

Saya tidak bisa lagi mereproduksi masalah ini. @ztlevi Coba doom build .

(gunakan-paket! 'ob-async)

Jangan lakukan ini. Itu tidak perlu dan memuat semua file org. ob-async akan dimuat secara otomatis jika blok src Anda memiliki properti :async non-nil.

Saya masih mendapatkan kesalahan.

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

Saya menggunakan org-wild-notifier. Bisakah Anda mencoba paket ini dan mengaktifkannya 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. Menambahkan (package! org-wild-notifier) ke ~/.doom.d/packages.el
  2. Menambahkan blok use-package! ke ~/.doom.d/config.el
  3. doom refresh
  4. Mulai ulang Emacs
  5. Membuka file org dan mengeksekusi

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

Berlari tanpa masalah. Menjalankannya berkali-kali, bahkan.

Saat ini di 24efd5b90 dengan Emacs 26.3.

Catatan sampingan: doom-post-init-hook tidak ada lagi. Itu diganti dengan doom-after-init-modules-hook beberapa waktu lalu, jadi org-wild-notifier bahkan tidak dimuat.

Bagaimana kalau Anda memicunya secara manual? Apakah Anda mendapatkan kesalahan?

Catatan sampingan: doom-post-init-hook tidak ada lagi. Itu diganti dengan doom-after-init-modules-hook beberapa waktu lalu, jadi org-wild-notifier bahkan tidak dimuat.

masalah ini bukan tentang org-babel-async. Saya mencoba mengunduh org-wild-notifier. juga mendapat laporan kesalahan yang sama.

Ah. Saya melihatnya. Ini adalah cara org-wild-notifier menggores file agenda org Anda. Ia menggunakan async seperti halnya ob-async, kecuali tidak seperti ob-async, ia tidak memberi kita cara untuk menyuntikkan status Doom sebelum dijalankan.

Ini tidak sepele untuk diperbaiki dari sisi Doom. Saya sarankan menggunakan org-alert sebagai gantinya (atau org-notify, disertakan dengan org-plus-contrib).

Emm, org-alert tidak benar-benar berfungsi. Sementara org-notify tidak memunculkan pemberitahuan tetapi pemberitahuan itu berulang setiap dua menit yang sangat mengganggu.

Apakah ini mungkin untuk memperbaikinya dari org-wild-notifier-mode ? Jika demikian, saya ingin membuka masalah

Pada 30f72da saya telah menggunakan solusi baru untuk ini dan masalah ob-async, yang seharusnya menyelesaikan masalah Anda dengan org-wild-notifier-mode. Beri tahu saya jika bukan itu masalahnya.

(Anda harus doom build setelah doom upgrade agar ini berfungsi sepenuhnya, kecuali paket org diperbarui)

Bagus! Berhasil! 💯

Apakah halaman ini membantu?
0 / 5 - 0 peringkat