shg / org-inline-pdf.el

Inline PDF previewing for Org
GNU General Public License v3.0
48 stars 8 forks source link

compatibility with org 9.6 #6

Closed malcook closed 1 year ago

malcook commented 1 year ago
(use-package org-inline-pdf
  :ensure t
  :defer 5
  :mode ("\\.org\\'" . org-mode)
  :config
  (add-hook 'org-mode-hook #'org-inline-pdf-mode))

results in

Error (use-package): Failed to install org-inline-pdf: Package ‘org-9.4’ is unavailable Disable showing Disable logging

when already using org 9.6

(also #1 would be great to have too!)

shg commented 1 year ago

Hi @malcook

Thank you for the report. But I have not been able to reproduce it yet. I installed Org 9.6-pre and use-package on plain Emacs 28.2 and when I run the same use-package call, org-inline-pdf installs without error.

When that use-package call is executed in your environment, does the load-path contain the Org 9.6 path?

malcook commented 1 year ago

Thank you for the report. But I have not been able to reproduce it yet. I installed Org 9.6-pre and use-package on plain Emacs 28.2 and when I run the same use-package call, org-inline-pdf installs without error. When that use-package call is executed in your environment, does the load-path contain the Org 9.6 path?

No. I have purposefully removed the default occurrence of it from load-path in my init.el as follows

(require 'cl-seq)
(delete (car (cl-member "lisp/org" load-path :test  #'string-match)) load-path) ;; which removes "/home/mec/.emacs.d/emacs/lisp/org"

Later, I contrive to get org from specific location with:

(use-package org ;org-plus-contrib          ; instead of org-mode
  :pin manual 
  :load-path "~/.emacs.d/org-mode/lisp"
... etc
)

When I want to rebuild org, I do so from the shell, with:

 cd ~/.emacs.d/org-mode && git pull && make clean && make autoloads && make 

where initial installation was performed with:

cd ~/.emacs.d && git clone https://git.savannah.gnu.org/git/emacs/org-mode.git &&   cd org-mode && make autoloads && make

Perhaps some of this is overkill, or a bad workaround for this issue

I have now tried to temporarily tell emacs where to find my org:

(use-package org-inline-pdf
  :load-path "~/.emacs.d/org-mode" ;; which contains manually managed org sources
  :ensure t
  :defer 5
  :mode ("\\.org\\'" . org-mode)
  :config
  (add-hook 'org-mode-hook #'org-inline-pdf-mode))

And get the same error:

Error (use-package): Failed to install org-inline-pdf: Package ‘org-9.4’ is unavailable Disable showing Disable logging

Can you confirm that in your attempt to reproduce it, M-x org-version shows indeed you are running Org 9.6 ?

~Malcolm

shg commented 1 year ago

Can you confirm that in your attempt to reproduce it, M-x org-version shows indeed you are running Org 9.6 ?

For testing I also removed the default org path from load-path and added only the path to 9.6-pre. Thus M-x org-version shows: Org mode version 9.6-pre (release_9.5.5-1118-g70cee1 @ .../org-mode/lisp/)

I have now tried to temporarily tell emacs where to find my org:


  (use-package org-inline-pdf
    :load-path "~/.emacs.d/org-mode" ;; which contains manually managed org sources
    :ensure t
    :defer 5
    :mode ("\\.org\\'" . org-mode)
    :config
    (add-hook 'org-mode-hook #'org-inline-pdf-mode))```

Doesn't that load-path line have to be "~/.emacs.d/org-mode/lisp"?

malcook commented 1 year ago

Can you confirm that in your attempt to reproduce it, M-x org-version shows indeed you are running Org 9.6 ? For testing I also removed the default org path from load-path and added only the path to 9.6-pre. Thus M-x org-version shows: Org mode version 9.6-pre (release_9.5.5-1118-g70cee1 @ .../org-mode/lisp/) I have now tried to temporarily tell emacs where to find my org: (use-package org-inline-pdf :load-path "~/.emacs.d/org-mode" ;; which contains manually managed org sources :ensure t :defer 5 :mode ("\.org\'" . org-mode) :config (add-hook 'org-mode-hook #'org-inline-pdf-mode))```

Doesn't that load-path line have to be "~/.emacs.d/org-mode/lisp"?

Thanks. Yes. I've now tried it both ways to the same effect.

Can you confirm that in your attempt to reproduce it, M-x org-version shows indeed you are running Org 9.6 ?

shg commented 1 year ago

Please see previous comment for M-x org-version result in my testing environment. By the way, I don't use use-package and I have no idea your use-package calls are correct or not. Can you check with the bare package.el and how it works?

More specifically, you can test whether the issue exists in a minimum emacs by the following steps.

mkdir -p /tmp/testdir/
env HOME=/tmp/testdir emacs -Q
(setq package-archives '(("melpa" . "https://melpa.org/packages/")))
(package-initialize)
(add-to-list 'load-path "/path/to/org/lisp") ;; path to your manually installed org lisp dir

(package-install 'org-inline-pdf)
malcook commented 1 year ago

thanks - indeed that works - I'm still unsure as to why it does not in my environment - if I figure it out I'll follow up here.

shg commented 1 year ago

@malcook Thank you for testing. So probably, something is wrong in the config for Org. The package.el should be able to find Org when it tries to install org-inline-pdf. Maybe path to Org directory is not in load-path?