Commit graph

19 commits

Author SHA1 Message Date
Maximilian Bosch 8e70725077
vim_configurable: enable overrides
Sometimes it's needed to override parts of `vim_configurable`, for
instance when using ENSIME (http://ensime.github.io/), in this case you
need a Python interpreter and the modules `sexpdata` and
`websocket_client`.

However overriding `vim_configurable` is quite hard as we run
`vimUtils.makeCustomizable` over the default comming from
`configurable.nix`. Therefore it's necessary to copy the code from
`all-packages.nix` and alter the parts you need: https://nixos.org/nix-dev/2017-April/023364.html

In order to simplify overriding `vim_configurable` I added an
`override` and an `overrideAttrs` function to `vimutils.makeCustomizable`
to ensure that the customization capabilities won't be lost after
altering the derivation.

Now it's possible to write expressions like this without evaluation
failures:

```
with pkgs;

let
  vimPy3 = vim_configurable.override {
    python = python3;
  };
in vimPy3.customize { ... }
```
2018-02-07 16:57:40 +01:00
Maximilian Bosch acf0ee69ba
vim-plugins: add overrideAttrs support for buildVimPluginFrom2Nix 2017-10-01 11:33:12 +02:00
Maximilian Bosch 5fb2184bd3
vim-plugins: add {pre,post}Install hooks to buildVimPlugin 2017-09-25 22:18:47 +02:00
Evan Danaher c34aa75d30 vim-utils: Handle overriding knownPlugins betters. 2017-03-19 18:44:02 -04:00
Michael Raskin 846b6d250a Merge pull request #23256 from edanaher/ensime
Ensime
2017-03-18 18:24:19 +01:00
Daiderd Jordan 8977b1f2ee vim-plugins: use https for github repositories 2017-03-04 13:16:46 +01:00
Evan Danaher dcab427908 vim-plugins: Add infrastructure for python[3]Dependencies.
This allows vim plugins to specify python dependencies required at
runtime, and they will be added to the python environment.
2017-02-27 12:36:03 -05:00
Nick Novitski 7bb0611e2e vim_configurable: Add packPath option to vimrcConfig (#22776)
* vim_configurable: Add packages option to vimrcConfig

Version 8 of vim adds the concept of "vim packages": directories which
contain one or more vim plugins, in either "start" or "opt"
subdirectories. Those in "start" are to be loaded automatically, while
those in "opt" can be loaded manually. Vim detects any packages located
in one of its "packpaths".

The packages option takes a set of sets describing one or more vim
packages, and adds the derivation containing these packages to the
packpath.

* fix documentation.
2017-02-22 01:06:34 +01:00
Jörg Thalheim b7d65f8af0
vim.vam: fix filetype detection
According to https://github.com/MarcWeber/vim-addon-manager/blob/master/doc/vim-addon-manager-additional-documentation.txt#L1310
`filetype on` must be called after all VAM plugins are initialized.
Otherwise vim set `conf` filetype for some files containing hash tags.
2017-02-13 14:10:23 +01:00
Vladimír Čunát 49b136377a
Merge #16501: add a guide about vim plugins 2017-01-30 18:28:20 +01:00
Joe Hermaszewski d6a3aaef89 vim-utils: fix typo 2016-11-13 12:07:10 +00:00
Rok Garbas 963327aacb vimPlugins: updating plugin and adding floobits plugin 2016-07-11 22:49:16 +02:00
Marc Weber c3f56e912a Add nixpkgs documentation about how to create a derivation with Vim + plugins 2016-06-25 21:39:00 +02:00
Arseniy Seroka 4a0a0592db vimPlugins: move vim2nix into nixpkgs repo 2016-01-10 13:19:06 +03:00
Tuomas Tynkkynen c47910ae4e nix-prefetch-scripts: Split into multiple derivations
This makes it possible to e.g. only install nix-prefetch-git and not the
others.

Closes #7399.
2015-12-04 14:38:41 +02:00
Benjamin Staffin 5fe9618a30 vimUtils.pluginnames2nix: fixes for non-nixos systems
Now referring to the nix prefetch scripts through their nixpkgs
derivation in order to make sure their shebang lines are rewritten
properly.  Otherwise nix-prefetch-hg fails on Ubuntu (and probably
Debian) systems, where /bin/sh is not bash.
2015-08-28 19:27:33 -07:00
Arseniy Seroka 9cd797ff26 vim plugins: refactor and regenerate 2015-06-01 23:40:29 +03:00
Arseniy Seroka ec21d9d526 vimPlugins: update 2015-03-26 22:54:29 +03:00
Marc Weber abd016cea8 Refactoring vim plugins again:
- sort automatcially generated vim derivations
- move the plugins to be derived by VAM into its own file: vim-plugin-names
- rename vimrc into vimUtils moving all common code into it
  so that it is possible to use it within ~/.nixpkgs/config.nix
- Moving all important documentation into vimUtils
- provide vimPlugins.pluginnames2Nix to provide a bin/vim-* command
  writing updated derivations into its buffer

VAM's repository's nix.vim got some improvements @ VAM repository, eg hg
fetchout out got fixed and shell failures are noticed now (Thanks to Arseniy
Seroka)
2014-12-04 15:32:38 +01:00