Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC] re-integrate runtime/ #938

Closed
wants to merge 7 commits into from

Conversation

justinmk
Copy link
Member

Re-integrating these separate repos into the core repo under the runtime/ folder:

I resisted the urge to rename runtime to something like user or share, because considering the contents of the directory it is really an appropriate name. I looked at projects like emacs and git for alternative precedents, and came away with the impression that Vim is actually a pretty nicely organized project: user-deployable files are in a single runtime/ folder instead of scattered and glued together by a build script.

todo:

  • add vim-patch:0 to commit message
  • credit contributors of docs and vimscript repos in the commit message
  • move issues from docs to main Neovim repo
  • move issues from vimscript to main Neovim repo
  • remove tutor/, spell/ and some other directories for the time being, until it is clear that we want to maintain these (it may also make more sense for these to be downloaded as plugins instead of of being distributed with the Neovim package). These can always be added later if needed!
  • verify/repair/create Makefile/CMake targets (note @rjw57 work in https://github.com/neovim/docs/commits/master)

More details/background on why we're moving away from the separate repos: #633 (comment)


Update:

The last the two tasks above are not complete, but I committed runtime/ in order to unblock several PRs.

@splinterofchaos
Copy link

Any updates on this? It's been over two weeks with at least four PRs blocked on it.

@justinmk justinmk changed the title [WIP] re-integrate runtime/ [RFC] re-integrate runtime/ Jul 28, 2014
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7

remove Amiga icons (*info, icons/)
remove doc/hangulin.txt

vim-patch:0

Helped-by: Rich Wareham <rjw57@cam.ac.uk>
Helped-by: John <john.schmidt.h@gmail.com>
Helped-by: Yann <yann@yann-salaun.com>
Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com>
Helped-by: drasill <github@tof2k.com>
Helped-by: Tae Sandoval Murgan <taecilla@gmail.com>
Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
  These were used to test vi compatibility.
  "Demonstration of a termcap file (for the Amiga and Archimedes)"
justinmk added a commit that referenced this pull request Jul 29, 2014
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7

Excluding:
  Amiga icons (*.info, icons/)
  doc/hangulin.txt
  tutor/
  spell/
  lang/ (only used for menu translations)
  macros/maze/, macros/hanoi/, macros/life/, macros/urm/
      These were used to test vi compatibility.
  termcap
      "Demonstration of a termcap file (for the Amiga and Archimedes)"

Helped-by: Rich Wareham <rjw57@cam.ac.uk>
Helped-by: John <john.schmidt.h@gmail.com>
Helped-by: Yann <yann@yann-salaun.com>
Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com>
Helped-by: drasill <github@tof2k.com>
Helped-by: Tae Sandoval Murgan <taecilla@gmail.com>
Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
This was referenced Aug 13, 2014
justinmk added a commit to justinmk/neovim that referenced this pull request Aug 17, 2014
uncomment some patch numbers that were satisfied by neovim#938
justinmk added a commit to justinmk/neovim that referenced this pull request Aug 17, 2014
uncomment some patch numbers that were satisfied by neovim#938
fmoralesc pushed a commit to fmoralesc/neovim that referenced this pull request Aug 19, 2014
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7

Excluding:
  Amiga icons (*.info, icons/)
  doc/hangulin.txt
  tutor/
  spell/
  lang/ (only used for menu translations)
  macros/maze/, macros/hanoi/, macros/life/, macros/urm/
      These were used to test vi compatibility.
  termcap
      "Demonstration of a termcap file (for the Amiga and Archimedes)"

Helped-by: Rich Wareham <rjw57@cam.ac.uk>
Helped-by: John <john.schmidt.h@gmail.com>
Helped-by: Yann <yann@yann-salaun.com>
Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com>
Helped-by: drasill <github@tof2k.com>
Helped-by: Tae Sandoval Murgan <taecilla@gmail.com>
Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
@sotte
Copy link

sotte commented Aug 22, 2014

I'd really like to start using nvim from my day to day tasks. I think once this PR is merged is is much easier for many people to use nvim. (Alternatively, if the install instructions in the wiki contained instructions to install the runtime files that would be nice as well...).

@fwalch
Copy link
Member

fwalch commented Aug 22, 2014

@sotte: The runtime is already merged:

The last the two tasks above are not complete, but I committed runtime/ in order to unblock several PRs.

Installing the runtime should happen more or less automatically, as make install does it for you.

I have been using neovim instead of vim for a while now, and it works quite well :-) Nevertheless:

Is it ready to download and run now with all the features?
No. Although some features are a work in progress, Neovim isn't at a stable point. Using Neovim should be done with caution as things may change.

@sotte
Copy link

sotte commented Aug 22, 2014

I should have been more clear. sudo make install installs the runtime files to /usr/local/share/vim/runtime/ but :help does not find any help and I don't have any syntax hl. So I guess something does not work as expected then.

@fwalch
Copy link
Member

fwalch commented Aug 22, 2014

Oh, okay.. syntax highlighting works for me (installed Neovim from Arch Linux package), but :help not working is a known problem: #1056

@sotte
Copy link

sotte commented Aug 22, 2014

I linked the runtime folder from neovim to ~/.nvim and ran :helptags ~/.nvim/doc. Now I'm able to get the help. I can't run :helptags /usr/local/share/nvim/runtime/doc because I don't have the permissions.

I still don't have syntax hl.

The runtime path looks like this:
runtimepath=/.nvim,/usr/local/share/nvim/vimfiles,/usr/local/share/nvim/runtime,/usr/local/share/nvim/vimfiles/after,/.nvim/after

@splinterofchaos
Copy link

@sotte Could you post the output of $ echo VIMRUNTIME? I had an issue with this yesterday that I fixed by setting it manually to /usr/share/vim/vim74/--which is obviously wrong for nvim to use, but it worked.

I haven't investigated this very thoroughly, but under certain conditions, vim actually sets this variable while running and I wonder if that might be part of the problem:

neovim/src/nvim/misc1.c

Lines 3034 to 3047 in 118a31c

/*
* Set the environment variable, so that the new value can be found fast
* next time, and others can also use it (e.g. Perl).
*/
if (p != NULL) {
if (vimruntime) {
vim_setenv((char_u *)"VIMRUNTIME", p);
didset_vimruntime = TRUE;
} else {
vim_setenv((char_u *)"VIM", p);
didset_vim = TRUE;
}
}
return p;

We should probably use NVIMRUNTIME or something instead.

I can't run :helptags /usr/local/share/nvim/runtime/doc because I don't have the permissions.

You shouldn't need write permissions for it. Do you not have read permissions?

@sotte
Copy link

sotte commented Aug 22, 2014

VIMRUNTIME was empty. Setting it to /usr/share/vim/vim74/ or to the path of the neovim runtime files gives me the help and syntax hl. Thanks!

I don't know why it worked before.

@splinterofchaos
Copy link

@sotte What's the exact path you used for the neovim runtime files? Setting it to /usr/local/share/nvim/runtime does not work for me.

@sotte
Copy link

sotte commented Aug 22, 2014

I remove the system wide install and set it to my git folder of nvim:

export VIMRUNTIME=$HOME/coding/neovim/runtime

nvim is a symlink to my local bin folder ~/bin.

@splinterofchaos
Copy link

Hmmm... not sure what the problem was because now it works. Maybe I set it wrong before.

@justinmk justinmk added the RFC label Nov 12, 2014
@justinmk
Copy link
Member Author

Migrated issues, then deleted the old docs repository. So all tasks in this issue are done.

@justinmk justinmk closed this Dec 17, 2014
@justinmk justinmk removed the RFC label Dec 17, 2014
@ghost
Copy link

ghost commented Jun 30, 2015

@justinmk I just noticed that this was the PR which removed the spell files. If they are infrequently updated, then perhaps they should be included with the runtime?

Vim, at least on my machine, only has english ASCII & UTF-8 spell files, but we could go one further and only supply the UTF-8 ones.

@justinmk justinmk deleted the reintegrate_runtime branch June 30, 2015 00:29
@justinmk
Copy link
Member Author

It downloads them automatically. We should work on making that more seamless.

One of our early goals was to delegate things to plugins where it makes sense to do so. Adding the spell files to the repo would be a step backwards in that respect. I think we should give it a chance before giving up...

@ghost
Copy link

ghost commented Jun 30, 2015

One of our early goals was to delegate things to plugins where it makes sense to do so

I think that's a great idea, but not much is really being delegated in this case, given spell.c is still 13K SLoC. I see your point though; there's not much harm in giving this a chance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build building and installing Neovim using the provided scripts documentation vimscript
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants