[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Generating helptags for vim plugins
From: |
Efraim Flashner |
Subject: |
Re: Generating helptags for vim plugins |
Date: |
Sun, 19 Feb 2023 22:06:10 +0200 |
On Sun, Feb 19, 2023 at 11:09:57AM +0100, nils@promisedlandt.de wrote:
> Hello everyone,
>
> I'm trying to switch my home environment to guix home (from Chef).
> As a first step, I'm writing package definitions for the various vim plugins
> I use.
> I followed the simple plugins in gnu/packages/vim, using git-fetch +
> copy-build-system. This worked fine, but I noticed that there is no code to
> generate the helptags, meaning the plugin documentations don't show up in vim
> when using :help. Having the documentations available is important to me!
>
> My solution was to write a vimplugin-build-system. It uses copy-build-system
> for most things, but generates the helptags for the plugin as an additional
> step after installation. Technically that works, in that the helptags for the
> plugin are generated and available in vim. Sadly the concept was wrong,
> because the helptags file is always named "tags" and needs to be in the same
> directory as the help file. This means installing multiple plugins has the
> doc files for all plugins symlinked in
> ~/.guix-home/profile/share/vim/vimfiles/doc , and then the "tags" file of
> (I'm guessing) the last plugin, meaning only that last plugin documentation
> is available in vim.
>
> Solutions I could think of:
>
> 1) Run the helptags generation after *all* plugins are installed
> 2) Do not install all plugins to ~/.guix-home/profile/share/vim/vimfiles but
> rather keep them in one subfolder per plugin (which is how the built-in vim
> package management works, and most or all vim plugin managers).
>
> How could 1) be implemented? I could do 2) rather easily I think, but it
> would contributing the plugin packages difficult, since it needs changes in
> the gnu/packages/aux-files/guix.vim to add those directories to the vim
> runtime path.
>
> Has anyone already spent some time on this? It looks to me like an issue that
> everyone would run into if they use the already packaged plugins in
> gnu/packages/vim.
There are two possibilities that I can see at this point:
1: There's a patch to install all the vim plugins into their own prefix
and use vim's :packadd to actually load the packages when they're
wanted. I feel like this is probably the technically correct way to do
it.
2: Add a profile hook to build all the help tags as part of building the
profile, similar to the emacs sub-directories or the font cache or the
mime database or other things. This would introduce the least amount of
change to users since they wouldn't need to start doing :packadd and the
help files would just show up.
As someone who actively wants the help files, I'm curious which you'd
prefer.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
signature.asc
Description: PGP signature