From: "Vadim A. Misbakh-Soloviov" <gentoo@mva.name>
To: gentoo-dev@lists.gentoo.org
Cc: vim@gentoo.org
Subject: [gentoo-dev] [RFC] NeoVim and vim-syntax
Date: Thu, 01 Jun 2017 02:32:24 +0700 [thread overview]
Message-ID: <15162118.1WtZIBpG5a@note> (raw)
Currently, we have a situation, that there are two Vim's: "old" one (vim8) and
NeoVim (for those who do not know: a fork of Vim with much and much more clean
code, many neat features and so on).
Unfortunately, both of them have different runtimedirs: XDG ones for NeoVim
and the ones you know for Vim8, while NeoVim is fully compatible with Vim's
plugins, and epecially with vimscripts (like syntax definitions and ftdetect
scripts).
On the other side, we have a bunch of packages in the portage tree, that have
"vim syntax" support (use-flags, or direct vim-syntax packages), or even vim-
plugins.
All of them goes to `/usr/share/vim/vimfiles`, while correct path for NeoVim
would be `/usr/share/nvim/site` (does not exist at the moment, but nvim checks
for it).
So, that situation leads to impossibility to get all of that syntax definitions
and plugins when user uses NeoVim.
As I said above, NeoVim supports Vim's plugins/scripts very well (although I
didn't find any evidence of the opposite), so it is possible to fix that
situation by many of "kludge" ways, including:
- implementing "nvim-syntax" (and `app-nvim/*`?) and duplicate all the
installed files
- patching NeoVim source to include Vim's runtimedirs (incl. "after" dir),
// NeoVim upstream highly disagree with such way, if any
- patching VIMRUNTIME environment variable,
- making a wrapper,
- rewrite all the existing ebuilds to take nvim into account and force all
newcomers to also take it,
- symlinking a directory,
// mostly bad way, since opposite plugin compatibility is not garanteed and
users can install nvim-only plugins in the future
- making postinst hook to regenerate content of NeoVim's site-directory
(maybe, by symlinking installed vim modules there)
or even:
- making eselect module for user to rule that.
Although, talking on eselect module, I've two visions of the situation:
a) it can be something like bashcomp module, where users can select which of
installed vim modules they want to "enable" in NeoVim
or (better, imo) way:
b) it can be something like php module, where portage installs all the stuff
in the location neither available to Vim nor NeoVim, and users selects which
modules they enable for either implementation.
Module can be called something like "eselect-vim" or "eselect-vim-modules"
(?), if any.
For now, I have preview of neither of eselect module variants, nor even
patches for another "ways". I'd very like to discuss the situation and find a
better of possible solution first.
Maybe, when (if?) we found such a solution, I'd contribute a PR with it on GH.
--
wbr,
mva
next reply other threads:[~2017-05-31 19:32 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-31 19:32 Vadim A. Misbakh-Soloviov [this message]
2017-05-31 20:09 ` [gentoo-dev] [RFC] NeoVim and vim-syntax Peter Volkov
2017-05-31 22:54 ` Ciaran McCreesh
2017-06-01 1:21 ` Kent Fredric
2017-06-01 1:38 ` Daniel Campbell
2017-06-01 5:00 ` Michał Górny
2017-06-01 5:49 ` Ciaran McCreesh
2017-06-01 8:42 ` Vadim A. Misbakh-Soloviov
2017-06-01 13:38 ` Walter Dnes
2017-06-01 14:54 ` Ciaran McCreesh
2017-06-02 1:14 ` Kent Fredric
2017-06-02 19:34 ` Walter Dnes
2017-06-02 19:39 ` Ciaran McCreesh
2017-06-01 21:56 ` Vadim A. Misbakh-Soloviov
2017-06-02 4:59 ` Michał Górny
2017-06-02 7:13 ` Vadim A. Misbakh-Soloviov
2017-07-23 14:17 ` [gentoo-dev] " Patrice Clement
2017-07-23 21:39 ` William Hubbs
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=15162118.1WtZIBpG5a@note \
--to=gentoo@mva.name \
--cc=gentoo-dev@lists.gentoo.org \
--cc=vim@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox