jumper047 / fb2-reader

Emacs plugin to read .fb2 and .fb2.zip ebooks.
GNU General Public License v3.0
26 stars 2 forks source link

wrong-type-argument number-or-marker-p nil #12

Open rkeks opened 2 years ago

rkeks commented 2 years ago

Can't open any books. Error during redisplay: (eval (list (propertize " " 'display '((space :align-to 0))) (fb2-reader-header-line-text))) signaled (wrong-type-argument number-or-marker-p nil) Ubuntu 20.04.4 Emacs 28.1 from snap.

jumper047 commented 2 years ago

Interesting, have same Ubuntu version on my home PC, just installed emacs 28.1 from snap and all works as expected. Can you reproduce this again with enabled debug-on-error?

jumper047 commented 2 years ago

Seems like it connected somehow with #11 but I can't figure out what's wrong with it.

jumper047 commented 2 years ago

In addition to enabling debug-on-error set async-debug variable to 't

rkeks commented 2 years ago

Debugger entered--Lisp error: (wrong-type-argument char-or-string-p ##) fb2-reader-restore-buffer() fb2-reader-mode() set-auto-mode-0(fb2-reader-mode nil) set-auto-mode--apply-alist((("\.yml" . yaml-mode) ("\(?:\(?:\.\(?:b\(?:\(?:abel\|ower\)rc\)\|json\(?:l..." . json-mode) ("\.epub\'" . nov-mode) ("\.ahk\'" . ahk-mode) ("\.ino\'" . arduino-mode) ("\.pde\'" . arduino-mode) ("\.[Ss][Aa][Ss]\'" . SAS-mode) ("\.Sout\'" . S-transcript-mode) ("\.[Ss]t\'" . S-transcript-mode) ("\.Rd\'" . Rd-mode) ("DESCRIPTION\'" . conf-colon-mode) ("/Makevars\(\.win\)?\'" . makefile-mode) ("\.[Rr]out\'" . ess-r-transcript-mode) ("CITATION\'" . ess-r-mode) ("NAMESPACE\'" . ess-r-mode) ("\.[rR]profile\'" . ess-r-mode) ("\.[rR]\'" . ess-r-mode) ("/R/.*\.q\'" . ess-r-mode) ("\.[Jj][Aa][Gg]\'" . ess-jags-mode) ("\.[Bb][Mm][Dd]\'" . ess-bugs-mode) ("\.[Bb][Oo][Gg]\'" . ess-bugs-mode) ("\.[Bb][Uu][Gg]\'" . ess-bugs-mode) ("\.fb2\(\.zip\)?\'" . fb2-reader-mode) ("/git-rebase-todo\'" . git-rebase-mode) ("\.\(?:md\|markdown\|mkd\|mdown\|mkdn\|mdwn\)\'" . markdown-mode) ("\.ts\'" . typescript-mode) ("\.\(e?ya?\|ra\)ml\'" . yaml-mode) ("\.gpg\(~\|\.~[0-9]+~\)?\'" nil epa-file) ("\.elc\'" . elisp-byte-code-mode) ("\.zst\'" nil jka-compr) ("\.dz\'" nil jka-compr) ("\.xz\'" nil jka-compr) ("\.lzma\'" nil jka-compr) ("\.lz\'" nil jka-compr) ("\.g?z\'" nil jka-compr) ("\.bz2\'" nil jka-compr) ("\.Z\'" nil jka-compr) ("\.vr[hi]?\'" . vera-mode) ("\(?:\.\(?:rbw?\|ru\|rake\|thor\|jbuilder\|rabl\|ge..." . ruby-mode) ("\.re?st\'" . rst-mode) ("\.py[iw]?\'" . python-mode) ("\.m\'" . octave-maybe-mode) ("\.less\'" . less-css-mode) ("\.scss\'" . scss-mode) ("\.awk\'" . awk-mode) ("\.\(u?lpc\|pike\|pmod\(\.in\)?\)\'" . pike-mode) ("\.idl\'" . idl-mode) ("\.java\'" . java-mode) ("\.m\'" . objc-mode) ("\.ii\'" . c++-mode) ...) nil nil) set-auto-mode() normal-mode(t) after-find-file(nil t) find-file-noselect-1(# "~/sample.fb2" nil nil "~/sample.fb2" (7083832 2081)) find-file-noselect("/home/alex/sample.fb2" nil nil nil) find-file("/home/alex/sample.fb2") counsel-find-file-action("/home/alex/sample.fb2") ivy-call() ivy-read("Find file: " read-file-name-internal :matcher counsel--find-file-matcher :initial-input nil :action counsel-find-file-action :preselect nil :require-match confirm-after-completion :history file-name-history :keymap (keymap (remap keymap (undo . counsel-find-file-undo)) (67108960 lambda (&optional arg) "nil (`nil')" (interactive "p") (if (string= "" ivy-text) (execute-kbd-macro (kbd "M-o b")) (self-insert-command arg))) (96 . counsel-file-jump-from-find) (C-backspace . counsel-up-directory) (67108991 . counsel-up-directory)) :caller counsel-find-file) counsel--find-file-1("Find file: " nil counsel-find-file-action counsel-find-file) counsel-find-file() funcall-interactively(counsel-find-file) command-execute(counsel-find-file)

with "clean" init.el works properly. looks like problem with using "counsel" package

jumper047 commented 2 years ago

If you have enough time/willing you can "bisect" your config to figure out which part causes an issue (by bisecting I mean erase one half, run, check, if issue disappears take other half and bisect it again until part which causes this behavior will be found). I suppose counsel is not the cause, it was just used to find file to open.

rkeks commented 2 years ago

ok. i cleaned my .emacs.d and checked init.el. so, i think, the problem was wtith "no-littering" package. after cleaning emacs dir i opened sample file from previous issue without any problem.