Closed ed0mm closed 3 years ago
It's strange! I compiled gkroam.el in my computer, it doesn't get so many warnings except the first one 'Unused lexical argument ‘process’. What's the version of gkroam you installed? Gkroam version at this time is 20201106.231, emacs version 27.1.
I have worked around the first warning but cannot figure out the others.
Thanks for the fast reply and testing. I had installed gkroam just yesterday evening, I don't know which version but I suppose it was the last one. Can't access it easily anymore as I was booting live through usb to Pop!_OS (20.10). I do remember Emacs was 26.3 though. Do you think testing on a live boot could be a cause of the issue? I was trying things out this way as I can't get Emacs <25 (and thus gkroam) to work on elementary os (as explained here, sorry for the OT). I'd really like to get gkroam working on my machine but I'm quite stuck...
Why don't you build emacs27.1 from source code? That would be the easiest way.
BTW, add (require 'subr-x)
to your config may solve the error "void function string-trim...". If it gets another error, I will see.
So, I built from source code (had already tried but got gtk3 problems. This time I went on anyway, applied a possible workaround and it worked). So now, being on elementary os with Emacs 27.1 and gkroam-20201106.613, warnings I get are:
Warning (bytecomp): assignment to free variable ‘v-buffer-string’
Warning (bytecomp): reference to free variable ‘v-buffer-string’
Warning (bytecomp): Unused lexical variable ‘crm-separator’
Warning (bytecomp): reference to free variable ‘gkroam-pages’
Warning (bytecomp): reference to free variable ‘ivy-mode’
Warning (bytecomp): assignment to free variable ‘ivy-use-selectable-prompt’
Warning (bytecomp): assignment to free variable ‘gkroam-pages’
Warning (bytecomp): the following functions are not known to be defined:
org-element-property, org-element-type, org-element-map,
org-element-parse-buffer, org-element-headline-parser
things aren't working real fine. E.g. I do manage to follow links, but I can't see backlinks; dwim is not working; gkroam-rebuild-caches
causes file title deletion (they all go to nil
). I can be more specific with error messages if needed.
Another doubt I have is possibly not having ripgrep on exec-path. I can't see file name suggestions. I installed ripgrep, but how to put it in exec-path now?
For now I put the .deb file in .bin and added (setenv "PATH" (concat (getenv "PATH") "~/.bin")) (setq exec-path (append exec-path '("~/.bin")))
EDIT I changed the path to point to the location of the actual binary, i.e. /usr/bin
, that should (?) be correct now
I have fixed all warnings in the latest commit. Actually, byte compile warnings don't affect the usage of emacs package. So just let it be, it's not a big deal. The key point is ripgrep.
things aren't working real fine. E.g. I do manage to follow links, but I can't see backlinks; dwim is not working; gkroam-rebuild-caches causes file title deletion (they all go to nil). I can be more specific with error messages if needed.
All the problems above were caused because emacs cannot access ripgrep command line. Since you have installed rg properly, the next step is to make sure rg is in the exec-path
. The following code should work.
(add-to-list exec-path "<path/of/rg/bin>")
It's definitely working, thanks a lot! And excuse my n00b mistakes. Only thing I'm missing compared with your demo is company [edit: actually I mean dynamic suggestions for file names in the mini buffer, idk if this is actually obtained with company]. There again, excuse my silly questions and abusing your patience, but I'm a bit lost on how to set it up... I see there are backends and frontends? And which are you using/which would work best with gkroam?
Oh and second thing, the index buffer, I sometimes get to see the newer one (with word count and so on), but otherwise I generally just get the previous one (the one with the list of links and that's it)... any idea why?
I mean dynamic suggestions for file names in the mini buffer
You mean 'completion frontend' for emacs? Actually, it's not a must but it's better to install one. If you don't install third-party completion framework, emacs use the built-in one named "ido". For ido completion, you have to use <Tab>
to complete the candidates.
For third-party ones, you have two choices: ivy
and helm
. Personally, I use ivy
, it's the best choice for gkroam maybe.
Oh and second thing, the index buffer, I sometimes get to see the newer one (with word count and so on), but otherwise I generally just get the previous one (the one with the list of links and that's it)... any idea why?
I have no ideas. The following steps may help.
gkroam-rebuild-caches
For third-party ones, you have two choices:
ivy
andhelm
. Personally, I useivy
, it's the best choice for gkroam maybe.
Oh so that's what those ivy
and helm
I've been seen cited everywhere are all about :sweat_smile: thanks for the tip, installed ivy,
working fine.
Regarding the index buffer, It was one of my usual "mistakes"... I still had a gkroam.el file in .emacs.d, so emacs loaded that one and things didn't work for some reason. I deleted it and everything is running good right now.
So I'm closing the issue, I'll eventually reach out in case of problems or for suggestions. Thanks a lot for the support and the work on gkroam! :pray:
Enjoy :-)
Hello Kinney and thanks for a really promising package. After installation, upon opening Emacs, I get these warnings:
Then, if I create a link and try to follow it, I get
Error when following the link: (void-function string-trim-right)
I am using the
use-package
method detailed in your readme for installation. I'm very new to Emacs, I have no clue what's going on but I may be very well doing something wrong. Any support would be greatly appreciated