2013-02-13 23:20:11 +01:00
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
|
|
|
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
2019-02-13 20:06:17 +01:00
|
|
|
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
Correct name and email address for ng0.
* .mailmap, Makefile.am, doc/guix.de.texi, doc/guix.fr.texi,
doc/guix.texi, etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm,
gnu/packages/cdrom.scm, gnu/packages/check.scm,
gnu/packages/cinnamon.scm, gnu/packages/compression.scm,
gnu/packages/crypto.scm, gnu/packages/databases.scm,
gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm,
gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm,
gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/gtk.scm,
gnu/packages/guile-wm.scm,gnu/packages/guile-xyz.scm,
gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm,
gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
gnu/packages/image.scm, gnu/packages/irc.scm,
gnu/packages/language.scm, gnu/packages/libcanberra.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
gnu/packages/ncurses.scm, gnu/packages/networking.scm,
gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
gnu/packages/rust.scm, gnu/packages/scheme.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
gnu/packages/tor.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm:
Correct name and email address for ng0.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-03-14 10:33:38 +01:00
|
|
|
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
|
2017-01-24 15:40:15 +01:00
|
|
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
2017-03-20 06:57:09 +01:00
|
|
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
2018-01-14 11:53:25 +01:00
|
|
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
2019-05-10 23:36:47 +02:00
|
|
|
;;; Copyright © 2019 HiPhish <hiphish@posteo.de>
|
2019-06-12 18:42:17 +02:00
|
|
|
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
|
2013-02-13 23:20:11 +01:00
|
|
|
;;;
|
|
|
|
;;; This file is part of GNU Guix.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
|
|
;;; under the terms of the GNU General Public License as published by
|
|
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
|
|
;;; your option) any later version.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
;;; GNU General Public License for more details.
|
|
|
|
;;;
|
|
|
|
;;; You should have received a copy of the GNU General Public License
|
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
|
|
(define-module (gnu packages vim)
|
Use #:prefix instead of #:renamer with 'symbol-prefix-proc'.
* gnu/packages/abiword.scm, gnu/packages/admin.scm, gnu/packages/aidc.scm,
gnu/packages/backup.scm, gnu/packages/bittorrent.scm,
gnu/packages/boost.scm, gnu/packages/compression.scm,
gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
gnu/packages/cyrus-sasl.scm, gnu/packages/dc.scm, gnu/packages/emacs.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/geeqie.scm,
gnu/packages/ghostscript.scm, gnu/packages/gimp.scm,
gnu/packages/gkrellm.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gnutls.scm, gnu/packages/gnuzilla.scm, gnu/packages/gsasl.scm,
gnu/packages/gtk.scm, gnu/packages/gv.scm, gnu/packages/image.scm,
gnu/packages/indent.scm, gnu/packages/inkscape.scm,
gnu/packages/lesstif.scm, gnu/packages/links.scm, gnu/packages/lisp.scm,
gnu/packages/lsh.scm, gnu/packages/lsof.scm, gnu/packages/maths.scm,
gnu/packages/mp3.scm, gnu/packages/openssl.scm, gnu/packages/ots.scm,
gnu/packages/pciutils.scm, gnu/packages/pcre.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/slim.scm,
gnu/packages/ssh.scm, gnu/packages/texlive.scm, gnu/packages/vim.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wv.scm,
gnu/packages/xiph.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm,
gnu/packages/yasm.scm, gnu/packages/zip.scm,
guix/build/cmake-build-system.scm, guix/build/perl-build-system.scm,
guix/build/python-build-system.scm, guix/download.scm: Replaces uses of
#:renamer and 'symbol-prefix-proc' with #:prefix.
2014-09-23 22:44:22 +02:00
|
|
|
#:use-module ((guix licenses) #:prefix license:)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (guix packages)
|
2017-03-20 06:57:09 +01:00
|
|
|
#:use-module (guix utils)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (guix download)
|
2017-02-14 14:18:20 +01:00
|
|
|
#:use-module (guix git-download)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (guix build-system cmake)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (guix build-system gnu)
|
2019-06-12 18:42:17 +02:00
|
|
|
#:use-module (guix build-system python)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (gnu packages)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages acl)
|
|
|
|
#:use-module (gnu packages admin) ; For GNU hostname
|
|
|
|
#:use-module (gnu packages attr)
|
2018-12-29 19:23:18 +01:00
|
|
|
#:use-module (gnu packages autotools)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (gnu packages base)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages fontutils)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (gnu packages gawk)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages gettext)
|
|
|
|
#:use-module (gnu packages glib)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (gnu packages gperf)
|
2016-11-09 12:49:07 +01:00
|
|
|
#:use-module (gnu packages groff)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages gtk)
|
|
|
|
#:use-module (gnu packages image)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (gnu packages jemalloc)
|
|
|
|
#:use-module (gnu packages libevent)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages linux)
|
|
|
|
#:use-module (gnu packages lua)
|
2013-02-13 23:20:11 +01:00
|
|
|
#:use-module (gnu packages ncurses)
|
|
|
|
#:use-module (gnu packages perl)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages pkg-config)
|
|
|
|
#:use-module (gnu packages python)
|
2019-06-12 18:42:17 +02:00
|
|
|
#:use-module (gnu packages python-xyz)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages ruby)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (gnu packages serialization)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages shells)
|
|
|
|
#:use-module (gnu packages tcl)
|
2019-03-04 20:10:58 +01:00
|
|
|
#:use-module (gnu packages text-editors)
|
2017-01-24 15:40:15 +01:00
|
|
|
#:use-module (gnu packages terminals)
|
2016-10-15 22:38:41 +02:00
|
|
|
#:use-module (gnu packages xdisorg)
|
|
|
|
#:use-module (gnu packages xorg))
|
2013-02-13 23:20:11 +01:00
|
|
|
|
|
|
|
(define-public vim
|
|
|
|
(package
|
|
|
|
(name "vim")
|
2018-12-29 19:23:18 +01:00
|
|
|
(version "8.1.0644")
|
2013-02-13 23:20:11 +01:00
|
|
|
(source (origin
|
2018-12-27 14:18:37 +01:00
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/vim/vim")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
2013-02-13 23:20:11 +01:00
|
|
|
(sha256
|
|
|
|
(base32
|
2018-12-29 19:23:18 +01:00
|
|
|
"1xksb2v8rw1zgrd5fwqvrh44lf277k85sad2y4ia1z17y7i8j2fl"))))
|
2013-02-13 23:20:11 +01:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:test-target "test"
|
|
|
|
#:parallel-tests? #f
|
|
|
|
#:phases
|
2016-03-09 10:09:06 +01:00
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'configure 'patch-config-files
|
|
|
|
(lambda _
|
|
|
|
(substitute* "runtime/tools/mve.awk"
|
|
|
|
(("/usr/bin/nawk") (which "gawk")))
|
2016-09-12 19:55:21 +02:00
|
|
|
(substitute* '("src/testdir/Makefile"
|
2018-06-02 22:04:54 +02:00
|
|
|
"src/testdir/test_normal.vim"
|
|
|
|
"src/testdir/test_terminal.vim")
|
2016-09-12 19:55:21 +02:00
|
|
|
(("/bin/sh") (which "sh")))
|
2018-01-14 11:53:25 +01:00
|
|
|
#t))
|
2018-11-29 15:44:41 +01:00
|
|
|
(add-before 'check 'patch-failing-tests
|
2018-01-14 11:53:25 +01:00
|
|
|
(lambda _
|
|
|
|
;; XXX A single test fails with “Can't create file /dev/stdout” (at
|
|
|
|
;; Test_writefile_sync_dev_stdout line 5) while /dev/stdout exists.
|
|
|
|
(substitute* "src/testdir/test_writefile.vim"
|
|
|
|
(("/dev/stdout") "a-regular-file"))
|
2018-11-29 15:44:41 +01:00
|
|
|
|
|
|
|
;; XXX: This test fails when run in the build container:
|
|
|
|
;; <https://github.com/vim/vim/issues/3348>.
|
|
|
|
(substitute* "src/testdir/test_search.vim"
|
|
|
|
((".*'Test_incsearch_substitute_03'.*" all)
|
|
|
|
(string-append "\"" all "\n")))
|
2016-09-12 19:55:21 +02:00
|
|
|
#t)))))
|
2013-02-13 23:20:11 +01:00
|
|
|
(inputs
|
gnu: Fix misplaced commas (unquote).
Fix many occurrences of comma (unquote) being placed immediately after the
previous list item, e.g. ("ncurses", ncurses) in the inputs.
* gnu/packages/base.scm (patch, gnu-make),
gnu/packages/bioinformatics.scm (hmmer),
gnu/packages/bittorrent.scm (aria2),
gnu/packages/compression.scm (pbzip2),
gnu/packages/databases.scm (recutils),
gnu/packages/fonts.scm (font-terminus),
gnu/packages/freedesktop.scm (xdg-utils, elogind),
gnu/packages/games.scm (gnujump),
gnu/packages/gnome.scm (libidl, gnumeric, eog, gedit),
gnu/packages/gnunet.scm (gnunet),
gnu/packages/gnuzilla.scm (mozjs, nspr),
gnu/packages/gtk.scm (gtksourceview, gdk-pixbuf),
gnu/packages/lua.scm (lua),
gnu/packages/openstack.scm (python-swiftclient),
gnu/packages/perl.scm (perl-json-any),
gnu/packages/polkit.scm (polkit-qt),
gnu/packages/python.scm (wrap-python3, python-oauthlib)
(python-mccabe-0.2.1, python-contextlib2, python2-rauth),
gnu/packages/qt.scm (qtkeychain),
gnu/packages/ruby.scm (ruby-nokogiri),
gnu/packages/screen.scm (screen),
gnu/packages/ssh.scm (libssh),
gnu/packages/video.scm (ffmpeg, mplayer),
gnu/packages/vim.scm (vim),
gnu/packages/xdisorg.scm (redshift),
gnu/packages/xfce.scm (xfce4-panel, xfce4-settings),
gnu/packages/xnee.scm (xnee),
gnu/packages/xorg.scm (font-adobe100dpi, font-adobe75dpi),
gnu/packages/zsh.scm (zsh): Fix misplaced commas (unquote).
2016-02-27 14:37:28 +01:00
|
|
|
`(("gawk" ,gawk)
|
|
|
|
("ncurses" ,ncurses)
|
|
|
|
("perl" ,perl)
|
2013-02-13 23:20:11 +01:00
|
|
|
("tcsh" ,tcsh))) ; For runtime/tools/vim32
|
2018-12-29 19:23:18 +01:00
|
|
|
(native-inputs
|
|
|
|
`(("libtool" ,libtool)))
|
2018-12-27 14:18:07 +01:00
|
|
|
(home-page "https://www.vim.org/")
|
2014-03-31 01:09:10 +02:00
|
|
|
(synopsis "Text editor based on vi")
|
2013-02-13 23:20:11 +01:00
|
|
|
(description
|
|
|
|
"Vim is a highly configurable text editor built to enable efficient text
|
gnu: Some cleanup based on lint checkers.
* gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/algebra.scm,
gnu/packages/apr.scm, gnu/packages/avahi.scm, gnu/packages/backup.scm,
gnu/packages/base.scm, gnu/packages/calcurse.scm, gnu/packages/cdrom.scm,
gnu/packages/check.scm, gnu/packages/compression.scm, gnu/packages/cook.scm,
gnu/packages/crypto.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
gnu/packages/cyrus-sasl.scm, gnu/packages/databases.scm,
gnu/packages/doxygen.scm, gnu/packages/dwm.scm, gnu/packages/elf.scm,
gnu/packages/emacs.scm, gnu/packages/feh.scm, gnu/packages/file.scm,
gnu/packages/fish.scm, gnu/packages/flex.scm, gnu/packages/fltk.scm,
gnu/packages/fontutils.scm, gnu/packages/games.scm, gnu/packages/gcal.scm,
gnu/packages/gcc.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/gimp.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gperf.scm, gnu/packages/grub.scm, gnu/packages/gsasl.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile.scm,
gnu/packages/hurd.scm, gnu/packages/icu4c.scm, gnu/packages/image.scm,
gnu/packages/imagemagick.scm, gnu/packages/irssi.scm, gnu/packages/kde.scm,
gnu/packages/libdaemon.scm, gnu/packages/libevent.scm,
gnu/packages/libidn.scm, gnu/packages/libusb.scm, gnu/packages/linux.scm,
gnu/packages/lout.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm,
gnu/packages/lua.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm,
gnu/packages/mp3.scm, gnu/packages/netpbm.scm, gnu/packages/noweb.scm,
gnu/packages/ocaml.scm, gnu/packages/openssl.scm, gnu/packages/pcre.scm,
gnu/packages/pdf.scm, gnu/packages/pkg-config.scm,
gnu/packages/pretty-print.scm, gnu/packages/python.scm, gnu/packages/qt.scm,
gnu/packages/rsync.scm, gnu/packages/scheme.scm, gnu/packages/scrot.scm,
gnu/packages/sdl.scm, gnu/packages/skribilo.scm, gnu/packages/ssh.scm,
gnu/packages/stalonetray.scm, gnu/packages/tcl.scm, gnu/packages/tcsh.scm,
gnu/packages/telephony.scm, gnu/packages/texlive.scm, gnu/packages/tor.scm,
gnu/packages/valgrind.scm, gnu/packages/version-control.scm,
gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/web.scm, gnu/packages/wordnet.scm, gnu/packages/xiph.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/zile.scm,
gnu/packages/zip.scm, gnu/packages/zsh.scm [synopsis, description]: Adjust
according to lint checkers.
* gnu/packages/fltk.scm (fltk)[source]: Wrap long line in uri.
* /gnu/packages/xiph.scm (libogg, libtheora, vorbis-tools)[source]: Same.
2014-10-24 06:46:59 +02:00
|
|
|
editing. It is an improved version of the vi editor distributed with most UNIX
|
2013-02-13 23:20:11 +01:00
|
|
|
systems.
|
|
|
|
|
|
|
|
Vim is often called a \"programmer's editor,\" and so useful for programming
|
gnu: Some cleanup based on lint checkers.
* gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/algebra.scm,
gnu/packages/apr.scm, gnu/packages/avahi.scm, gnu/packages/backup.scm,
gnu/packages/base.scm, gnu/packages/calcurse.scm, gnu/packages/cdrom.scm,
gnu/packages/check.scm, gnu/packages/compression.scm, gnu/packages/cook.scm,
gnu/packages/crypto.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
gnu/packages/cyrus-sasl.scm, gnu/packages/databases.scm,
gnu/packages/doxygen.scm, gnu/packages/dwm.scm, gnu/packages/elf.scm,
gnu/packages/emacs.scm, gnu/packages/feh.scm, gnu/packages/file.scm,
gnu/packages/fish.scm, gnu/packages/flex.scm, gnu/packages/fltk.scm,
gnu/packages/fontutils.scm, gnu/packages/games.scm, gnu/packages/gcal.scm,
gnu/packages/gcc.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/gimp.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gperf.scm, gnu/packages/grub.scm, gnu/packages/gsasl.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile.scm,
gnu/packages/hurd.scm, gnu/packages/icu4c.scm, gnu/packages/image.scm,
gnu/packages/imagemagick.scm, gnu/packages/irssi.scm, gnu/packages/kde.scm,
gnu/packages/libdaemon.scm, gnu/packages/libevent.scm,
gnu/packages/libidn.scm, gnu/packages/libusb.scm, gnu/packages/linux.scm,
gnu/packages/lout.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm,
gnu/packages/lua.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm,
gnu/packages/mp3.scm, gnu/packages/netpbm.scm, gnu/packages/noweb.scm,
gnu/packages/ocaml.scm, gnu/packages/openssl.scm, gnu/packages/pcre.scm,
gnu/packages/pdf.scm, gnu/packages/pkg-config.scm,
gnu/packages/pretty-print.scm, gnu/packages/python.scm, gnu/packages/qt.scm,
gnu/packages/rsync.scm, gnu/packages/scheme.scm, gnu/packages/scrot.scm,
gnu/packages/sdl.scm, gnu/packages/skribilo.scm, gnu/packages/ssh.scm,
gnu/packages/stalonetray.scm, gnu/packages/tcl.scm, gnu/packages/tcsh.scm,
gnu/packages/telephony.scm, gnu/packages/texlive.scm, gnu/packages/tor.scm,
gnu/packages/valgrind.scm, gnu/packages/version-control.scm,
gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/web.scm, gnu/packages/wordnet.scm, gnu/packages/xiph.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/zile.scm,
gnu/packages/zip.scm, gnu/packages/zsh.scm [synopsis, description]: Adjust
according to lint checkers.
* gnu/packages/fltk.scm (fltk)[source]: Wrap long line in uri.
* /gnu/packages/xiph.scm (libogg, libtheora, vorbis-tools)[source]: Same.
2014-10-24 06:46:59 +02:00
|
|
|
that many consider it an entire IDE. It's not just for programmers, though.
|
|
|
|
Vim is perfect for all kinds of text editing, from composing email to editing
|
2014-03-31 01:09:10 +02:00
|
|
|
configuration files.")
|
2013-02-13 23:20:11 +01:00
|
|
|
(license license:vim)))
|
2016-10-15 22:38:41 +02:00
|
|
|
|
2017-09-22 11:55:00 +02:00
|
|
|
(define-public xxd
|
|
|
|
(package (inherit vim)
|
|
|
|
(name "xxd")
|
|
|
|
(arguments
|
|
|
|
`(#:make-flags '("CC=gcc")
|
|
|
|
#:tests? #f ; there are none
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(add-after 'unpack 'chdir
|
|
|
|
(lambda _
|
2018-06-02 21:34:23 +02:00
|
|
|
(chdir "src/xxd")
|
|
|
|
#t))
|
2017-09-22 11:55:00 +02:00
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
|
|
|
|
(install-file "xxd" bin)
|
|
|
|
#t))))))
|
2018-06-02 22:16:05 +02:00
|
|
|
(inputs `())
|
2018-12-29 19:23:18 +01:00
|
|
|
(native-inputs `())
|
2017-09-22 11:55:00 +02:00
|
|
|
(synopsis "Hexdump utility from vim")
|
|
|
|
(description "This package provides the Hexdump utility xxd that comes
|
|
|
|
with the editor vim.")))
|
|
|
|
|
2016-10-15 22:38:41 +02:00
|
|
|
(define-public vim-full
|
|
|
|
(package
|
2017-07-20 07:35:45 +02:00
|
|
|
;; This package should share its source with Vim, but it doesn't
|
|
|
|
;; build reliably, and we want to keep Vim up to date due to the
|
|
|
|
;; frequency of important bug fixes.
|
2016-10-15 22:38:41 +02:00
|
|
|
(inherit vim)
|
|
|
|
(name "vim-full")
|
|
|
|
(arguments
|
|
|
|
`(#:configure-flags
|
|
|
|
(list (string-append "--with-lua-prefix="
|
|
|
|
(assoc-ref %build-inputs "lua"))
|
|
|
|
"--with-features=huge"
|
|
|
|
"--enable-python3interp=yes"
|
|
|
|
"--enable-perlinterp=yes"
|
|
|
|
"--enable-rubyinterp=yes"
|
|
|
|
"--enable-tclinterp=yes"
|
|
|
|
"--enable-luainterp=yes"
|
|
|
|
"--enable-cscope"
|
|
|
|
"--enable-sniff"
|
|
|
|
"--enable-multibyte"
|
|
|
|
"--enable-xim"
|
|
|
|
"--disable-selinux"
|
|
|
|
"--enable-gui")
|
2017-03-20 06:57:09 +01:00
|
|
|
,@(substitute-keyword-arguments (package-arguments vim)
|
|
|
|
((#:phases phases)
|
|
|
|
`(modify-phases ,phases
|
2018-12-29 19:21:41 +01:00
|
|
|
(add-before 'check 'skip-test87
|
|
|
|
;; This test fails for unknown reasons after switching
|
|
|
|
;; to a git checkout.
|
|
|
|
(lambda _
|
|
|
|
(delete-file "src/testdir/test87.ok")
|
|
|
|
(delete-file "src/testdir/test87.in")
|
|
|
|
(substitute* '("src/Makefile"
|
|
|
|
"src/testdir/Make_vms.mms")
|
|
|
|
(("test87") ""))
|
|
|
|
(substitute* "src/testdir/Make_all.mak"
|
|
|
|
(("test86.out \\\\") "test86")
|
|
|
|
(("test87.out") ""))
|
|
|
|
#t))
|
2017-03-20 06:57:09 +01:00
|
|
|
(add-before 'check 'start-xserver
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
;; Some tests require an X server, but does not start one.
|
|
|
|
(let ((xorg-server (assoc-ref inputs "xorg-server"))
|
|
|
|
(display ":1"))
|
|
|
|
(setenv "DISPLAY" display)
|
|
|
|
(zero? (system (string-append xorg-server "/bin/Xvfb "
|
|
|
|
display " &")))))))))))
|
2016-10-15 22:38:41 +02:00
|
|
|
(native-inputs
|
2017-03-20 06:57:09 +01:00
|
|
|
`(("pkg-config" ,pkg-config)
|
2018-12-29 19:23:18 +01:00
|
|
|
("xorg-server" ,xorg-server)
|
|
|
|
,@(package-native-inputs vim)))
|
2016-10-15 22:38:41 +02:00
|
|
|
(inputs
|
|
|
|
`(("acl" ,acl)
|
|
|
|
("atk" ,atk)
|
|
|
|
("attr" ,attr)
|
|
|
|
("cairo" ,cairo)
|
|
|
|
("fontconfig" ,fontconfig)
|
|
|
|
("freetype" ,freetype)
|
|
|
|
("gdk-pixbuf" ,gdk-pixbuf)
|
2016-11-18 18:26:08 +01:00
|
|
|
("gettext" ,gettext-minimal)
|
2016-10-15 22:38:41 +02:00
|
|
|
("glib" ,glib)
|
|
|
|
("gpm" ,gpm)
|
|
|
|
("gtk" ,gtk+-2)
|
|
|
|
("harfbuzz" ,harfbuzz)
|
|
|
|
("libice" ,libice)
|
|
|
|
("libpng" ,libpng)
|
|
|
|
("libsm" ,libsm)
|
|
|
|
("libx11" ,libx11)
|
|
|
|
("libxdmcp" ,libxdmcp)
|
|
|
|
("libxt" ,libxt)
|
|
|
|
("libxpm" ,libxpm)
|
|
|
|
("lua" ,lua)
|
|
|
|
("pango" ,pango)
|
|
|
|
("pixman" ,pixman)
|
|
|
|
("python-3" ,python)
|
|
|
|
("ruby" ,ruby)
|
|
|
|
("tcl" ,tcl)
|
|
|
|
,@(package-inputs vim)))))
|
2016-11-09 12:49:07 +01:00
|
|
|
|
2017-02-14 14:18:19 +01:00
|
|
|
(define-public vim-neocomplete
|
|
|
|
(package
|
|
|
|
(name "vim-neocomplete")
|
|
|
|
(version "2.1")
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append "https://github.com/Shougo/neocomplete.vim/"
|
|
|
|
"archive/ver." version ".tar.gz"))
|
|
|
|
(file-name (string-append name "-" version ".tar.gz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"1307gbrdwam2akq9w2lpijc41740i4layk2qkd9sjkqxfch5lni2"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(plugin (string-append vimfiles "/plugin")))
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Next generation completion framework for Vim")
|
|
|
|
(description
|
|
|
|
"@code{neocomplete}, an abbreviation of 'neo-completion with cache',
|
|
|
|
is a plugin for Vim.
|
|
|
|
It provides keyword completion system by maintaining a cache of keywords in
|
|
|
|
the current buffer. Neocomplete can be customized easily and has many more
|
|
|
|
features than Vim's built-in completion.")
|
|
|
|
(home-page "https://github.com/Shougo/neocomplete.vim/")
|
|
|
|
(license license:expat)))
|
|
|
|
|
2017-02-14 14:18:21 +01:00
|
|
|
;; There are no release tarballs.
|
|
|
|
(define-public vim-neosnippet-snippets
|
|
|
|
(let ((commit "8e2b1c0cab9ed9a832b3743dbb65e9966a64331a")
|
|
|
|
(revision "1"))
|
|
|
|
(package
|
|
|
|
(name "vim-neosnippet-snippets")
|
|
|
|
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/Shougo/neosnippet-snippets")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"151wpvbj6jb9jdkbhj3b77f5sq7y328spvwfbqyj1y32rg4ifmc6"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles")))
|
|
|
|
(copy-recursively "neosnippets"
|
|
|
|
(string-append vimfiles "/neosnippets"))
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Snippets for neosnippet")
|
|
|
|
(description
|
|
|
|
"@code{neosnippet-snippets} provides standard snippets for the Vim plugin
|
|
|
|
@code{neosnippet}. Snippets are small templates for commonly used code that
|
|
|
|
you can fill in on the fly.")
|
|
|
|
(home-page "https://github.com/Shougo/neosnippet-snippets")
|
|
|
|
(license license:expat))))
|
|
|
|
|
2017-02-14 14:18:22 +01:00
|
|
|
;; The released tarball is too old for our Vim.
|
|
|
|
(define-public vim-neosnippet
|
|
|
|
(let ((commit "1bd7e23c79b73da16eb0c9469b25c376d3594583")
|
|
|
|
(revision "1"))
|
|
|
|
(package
|
|
|
|
(name "vim-neosnippet")
|
|
|
|
(version (string-append "4.2-" revision "." (string-take commit 7)))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/Shougo/neosnippet.vim/")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0k80syscmpnj38ks1fq02ds59g0r4jlg9ll7z4qc048mgi35alw5"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(ftdetect (string-append vimfiles "/ftdetect"))
|
|
|
|
(ftplugin (string-append vimfiles "/ftplugin"))
|
|
|
|
(indent (string-append vimfiles "/indent"))
|
|
|
|
(plugin (string-append vimfiles "/plugin"))
|
|
|
|
(rplugin (string-append vimfiles "/rplugin"))
|
|
|
|
(syntax (string-append vimfiles "/syntax")))
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "ftdetect" ftdetect)
|
|
|
|
(copy-recursively "ftplugin" ftplugin)
|
|
|
|
(copy-recursively "indent" indent)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
(copy-recursively "rplugin" rplugin)
|
|
|
|
(copy-recursively "syntax" syntax)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Snippet support for Vim")
|
|
|
|
(description
|
|
|
|
"@code{neosnippet}, is a plugin for Vim which adds snippet support to Vim.
|
|
|
|
Snippets are small templates for commonly used code that you can fill in on
|
|
|
|
the fly. To use snippets can increase your productivity in Vim a lot.
|
|
|
|
The functionality of this plug-in is quite similar to plug-ins like
|
|
|
|
@code{snipMate.vim} or @code{snippetsEmu.vim}. But since you can choose
|
|
|
|
snippets with the neocomplcache / neocomplete interface, you might have less
|
|
|
|
trouble using them, because you do not have to remember each snippet name.")
|
|
|
|
(home-page "https://github.com/Shougo/neosnippet.vim/")
|
|
|
|
(license license:expat))))
|
|
|
|
|
2017-02-14 14:18:20 +01:00
|
|
|
(define-public vim-scheme
|
|
|
|
(let ((commit "93827987c10f2d5dc519166a761f219204926d5f")
|
|
|
|
(revision "1"))
|
|
|
|
(package
|
|
|
|
(name "vim-scheme")
|
|
|
|
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "http://git.foldling.org/vim-scheme.git")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"1ynjr1109dxgj0lz261gmzz3wf5ap1m6j6hnvl3lcyv66a4y8pjv"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(after (string-append vimfiles "/after"))
|
|
|
|
(syntax (string-append vimfiles "/syntax"))
|
|
|
|
(ftplugin (string-append vimfiles "/ftplugin")))
|
|
|
|
(copy-recursively "after" after)
|
|
|
|
(copy-recursively "ftplugin" ftplugin)
|
|
|
|
(copy-recursively "syntax" syntax)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Scheme syntax for Vim")
|
|
|
|
(description
|
|
|
|
"@code{vim-scheme} provides Scheme support for Vim (R7RS and CHICKEN).")
|
|
|
|
(home-page "http://foldling.org/git/vim-scheme.git/")
|
|
|
|
(license license:public-domain))))
|
|
|
|
|
2017-02-14 14:18:23 +01:00
|
|
|
(define-public vim-luna
|
|
|
|
(let ((commit "633619953dcf8577168e255230f96b05f28d6371")
|
|
|
|
(revision "1"))
|
|
|
|
(package
|
|
|
|
(name "vim-luna")
|
|
|
|
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/notpratheek/vim-luna")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0ka3qbhsh8lix1vyj4678j7dnchkd8khhirrnn3aylxxf8fpqyg8"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(colors (string-append vimfiles "/colors")))
|
|
|
|
(copy-recursively "colors" colors)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Dark color theme for Vim")
|
|
|
|
(description
|
|
|
|
"@code{vim-luna} is a dark color theme for Vim.")
|
|
|
|
(home-page "https://github.com/notpratheek/vim-luna")
|
|
|
|
(license license:expat))))
|
|
|
|
|
2017-02-14 14:18:24 +01:00
|
|
|
;; There are no tarball releases.
|
|
|
|
(define-public vim-context-filetype
|
|
|
|
(let ((commit "5e85f8cae26806f391aefe2661791a6de53bcea2")
|
|
|
|
(revision "1"))
|
|
|
|
(package
|
|
|
|
(name "vim-context-filetype")
|
|
|
|
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/Shougo/context_filetype.vim")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0alvrfhmd91zkd9h83s8wvgyq4iakcf6rybsyjd369qbgpcqky89"))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(autoload (string-append vimfiles "/autoload")))
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Context filetype library for Vim")
|
|
|
|
(description
|
|
|
|
"@code{vim-context-filetype} is context filetype library for Vim script.")
|
|
|
|
(home-page "https://github.com/Shougo/context_filetype.vim")
|
|
|
|
(license license:expat)))) ; ??? check again
|
|
|
|
|
2017-11-26 19:26:43 +01:00
|
|
|
(define-public vim-fugitive
|
2018-06-12 10:07:57 +02:00
|
|
|
(package
|
|
|
|
(name "vim-fugitive")
|
2018-12-01 17:48:41 +01:00
|
|
|
(version "2.5")
|
2018-06-12 10:07:57 +02:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/tpope/vim-fugitive.git")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2018-12-01 17:48:41 +01:00
|
|
|
"17yz7gxn7a49jzndr4z5vnk1y4a6c22qss3mwxzmq4m46fni0k8q"))))
|
2018-06-12 10:07:57 +02:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
'(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
2018-12-01 17:48:41 +01:00
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
2018-06-12 10:07:57 +02:00
|
|
|
(doc (string-append vimfiles "/doc"))
|
2018-12-01 17:48:41 +01:00
|
|
|
(ftdetect (string-append vimfiles "/ftdetect"))
|
2018-06-12 10:07:57 +02:00
|
|
|
(plugin (string-append vimfiles "/plugin")))
|
2018-12-01 17:48:41 +01:00
|
|
|
(copy-recursively "autoload" autoload)
|
2018-06-12 10:07:57 +02:00
|
|
|
(copy-recursively "doc" doc)
|
2018-12-01 17:48:41 +01:00
|
|
|
(copy-recursively "ftdetect" ftdetect)
|
2018-06-12 10:07:57 +02:00
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
#t))))))
|
|
|
|
(home-page "https://github.com/tpope/vim-fugitive")
|
|
|
|
(synopsis "Vim plugin to work with Git")
|
|
|
|
(description "Vim-fugitive is a wrapper for Vim that complements the
|
2017-11-26 19:26:43 +01:00
|
|
|
command window, where you can stage and review your changes before the next
|
|
|
|
commit or run any Git arbitrary command.")
|
2018-06-12 10:07:57 +02:00
|
|
|
(license license:vim))) ; distributed under the same license as vim
|
2017-11-26 19:26:43 +01:00
|
|
|
|
2017-02-14 14:18:25 +01:00
|
|
|
(define-public vim-airline
|
|
|
|
(package
|
|
|
|
(name "vim-airline")
|
2019-02-13 20:06:17 +01:00
|
|
|
(version "0.10")
|
2017-02-14 14:18:25 +01:00
|
|
|
(source
|
|
|
|
(origin
|
2018-06-12 09:57:21 +02:00
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/vim-airline/vim-airline")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
2017-02-14 14:18:25 +01:00
|
|
|
(sha256
|
|
|
|
(base32
|
2019-02-13 20:06:17 +01:00
|
|
|
"0k3c6p3xy6514n1n347ci4q9xjm9wwqirpdysam6f7r39crgmfhd"))))
|
2017-02-14 14:18:25 +01:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(t (string-append vimfiles "/t"))
|
|
|
|
(plugin (string-append vimfiles "/plugin")))
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
(copy-recursively "t" t)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Statusline for Vim")
|
|
|
|
(description
|
|
|
|
"@code{vim-airline} is an extensible statusline for Vim.
|
|
|
|
It can be extended and costumized with themes, works with unicode fonts
|
|
|
|
and powerline symbols, etc.")
|
|
|
|
(home-page "https://github.com/vim-airline/vim-airline")
|
|
|
|
(license license:expat)))
|
|
|
|
|
2017-02-14 14:18:26 +01:00
|
|
|
;; There are no tarball releases.
|
|
|
|
(define-public vim-airline-themes
|
2019-07-11 13:57:38 +02:00
|
|
|
(let ((commit "e6f233231b232b6027cde6aebeeb18d9138e5324")
|
|
|
|
(revision "2"))
|
2017-02-14 14:18:26 +01:00
|
|
|
(package
|
|
|
|
(name "vim-airline-themes")
|
2019-07-11 13:57:38 +02:00
|
|
|
(version (git-version "0.0.0" revision commit))
|
2017-02-14 14:18:26 +01:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/vim-airline/vim-airline-themes")
|
|
|
|
(commit commit)))
|
2019-07-11 13:57:38 +02:00
|
|
|
(file-name (git-file-name name version))
|
2017-02-14 14:18:26 +01:00
|
|
|
(sha256
|
|
|
|
(base32
|
2019-07-11 13:57:38 +02:00
|
|
|
"1sb7nb7j7bz0pv1c9bgdy0smhr0jk2b1vbdv9yzghg5lrknpsbr6"))))
|
2017-02-14 14:18:26 +01:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(plugin (string-append vimfiles "/plugin"))
|
|
|
|
(autoload (string-append vimfiles "/autoload")))
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Collection of themes for Vim-airline")
|
|
|
|
(description
|
|
|
|
"@code{vim-airline-themes} is a collection of themes for @code{vim-airline}.")
|
|
|
|
(home-page "https://github.com/vim-airline/vim-airline-themes")
|
|
|
|
(license license:expat))))
|
|
|
|
|
2017-04-15 19:46:42 +02:00
|
|
|
(define-public vim-syntastic
|
|
|
|
(package
|
|
|
|
(name "vim-syntastic")
|
2018-06-12 10:12:33 +02:00
|
|
|
(version "3.9.0")
|
2017-04-15 19:46:42 +02:00
|
|
|
(source
|
|
|
|
(origin
|
2018-06-12 10:12:33 +02:00
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/vim-syntastic/syntastic")
|
|
|
|
(commit version)))
|
|
|
|
(file-name (git-file-name name version))
|
2017-04-15 19:46:42 +02:00
|
|
|
(sha256
|
|
|
|
(base32
|
2018-06-12 10:12:33 +02:00
|
|
|
"121a1mxgfng2y5zmivyyk02mca8pyw72crivf4f1q9nhn0barf57"))))
|
2017-04-15 19:46:42 +02:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(plugin (string-append vimfiles "/plugin"))
|
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
|
|
|
(syntax-checkers (string-append vimfiles "/syntax_checkers")))
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
(copy-recursively "syntax_checkers" syntax-checkers)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Syntax checking plugin for Vim")
|
|
|
|
(description
|
|
|
|
"Vim-syntastic is a syntax checking plugin for Vim. It runs files through
|
|
|
|
external syntax checkers and displays any resulting errors to the user. This
|
|
|
|
can be done on demand, or automatically as files are saved. If syntax errors
|
|
|
|
are detected, the user is notified.")
|
|
|
|
(home-page "https://github.com/vim-syntastic/syntastic")
|
|
|
|
(license license:wtfpl2)))
|
|
|
|
|
2019-03-04 20:10:58 +01:00
|
|
|
(define-public editorconfig-vim
|
|
|
|
(package
|
|
|
|
(name "editorconfig-vim")
|
|
|
|
(version "0.3.3")
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/editorconfig/editorconfig-vim.git")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"0vssfl1wjq0mv0p30c3dszwrh4yy90vwxmmdgqaxf5rykik7bdfd"))
|
|
|
|
(modules '((guix build utils)))
|
|
|
|
(snippet
|
|
|
|
'(begin
|
|
|
|
(delete-file-recursively "plugin/editorconfig-core-py") #t))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
'(#:tests? #f ; tests require ruby and plugin-test repository
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(add-after 'unpack 'patch-editorconfig-path
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
(let ((editorconfig (assoc-ref inputs "editorconfig-core")))
|
|
|
|
(substitute* "plugin/editorconfig.vim"
|
|
|
|
(("/opt") editorconfig))
|
|
|
|
#t)))
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(plugin (string-append vimfiles "/plugin"))
|
|
|
|
(autoload (string-append vimfiles "/autoload")))
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
#t))))))
|
|
|
|
(inputs
|
|
|
|
`(("editorconfig-core" ,editorconfig-core-c)))
|
|
|
|
(home-page "https://editorconfig.org/")
|
|
|
|
(synopsis "EditorConfig plugin for Vim")
|
|
|
|
(description "EditorConfig makes it easy to maintain the correct coding
|
|
|
|
style when switching between different text editors and between different
|
|
|
|
projects. The EditorConfig project maintains a file format and plugins for
|
|
|
|
various text editors which allow this file format to be read and used by those
|
|
|
|
editors.")
|
|
|
|
(license license:bsd-2)))
|
|
|
|
|
2017-04-15 19:46:43 +02:00
|
|
|
(define-public neovim-syntastic
|
|
|
|
(package
|
|
|
|
(inherit vim-syntastic)
|
|
|
|
(name "neovim-syntastic")
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(delete 'configure)
|
|
|
|
(delete 'build)
|
|
|
|
(replace 'install
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vimfiles (string-append out "/share/nvim/site"))
|
|
|
|
(doc (string-append vimfiles "/doc"))
|
|
|
|
(plugin (string-append vimfiles "/plugin"))
|
|
|
|
(autoload (string-append vimfiles "/autoload"))
|
|
|
|
(syntax-checkers (string-append vimfiles "/syntax_checkers")))
|
|
|
|
(copy-recursively "doc" doc)
|
|
|
|
(copy-recursively "autoload" autoload)
|
|
|
|
(copy-recursively "plugin" plugin)
|
|
|
|
(copy-recursively "syntax_checkers" syntax-checkers)
|
|
|
|
#t))))))
|
|
|
|
(synopsis "Syntax checking plugin for Neovim")
|
|
|
|
(description
|
|
|
|
"Vim-syntastic is a syntax checking plugin for Neovim. It runs files through
|
|
|
|
external syntax checkers and displays any resulting errors to the user. This
|
|
|
|
can be done on demand, or automatically as files are saved. If syntax errors
|
|
|
|
are detected, the user is notified.")))
|
|
|
|
|
2017-01-24 15:40:15 +01:00
|
|
|
(define-public neovim
|
|
|
|
(package
|
|
|
|
(name "neovim")
|
2019-06-05 15:14:55 +02:00
|
|
|
(version "0.3.7")
|
2017-01-24 15:40:15 +01:00
|
|
|
(source
|
|
|
|
(origin
|
2019-05-10 23:36:47 +02:00
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/neovim/neovim")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
2017-01-24 15:40:15 +01:00
|
|
|
(sha256
|
|
|
|
(base32
|
2019-06-05 15:14:55 +02:00
|
|
|
"1j6w5jvq5v7kf7diad91qs1acr427nidnk9s24yyrz0hwdd1c2lh"))))
|
2017-01-24 15:40:15 +01:00
|
|
|
(build-system cmake-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:modules ((srfi srfi-26)
|
|
|
|
(guix build cmake-build-system)
|
|
|
|
(guix build utils))
|
2018-11-30 05:37:23 +01:00
|
|
|
#:configure-flags '("-DPREFER_LUA:BOOL=YES")
|
2017-01-24 15:40:15 +01:00
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
2019-03-06 21:51:57 +01:00
|
|
|
;; TODO: remove 'patch-tic on update
|
|
|
|
;; see: https://github.com/neovim/neovim/issues/9687
|
|
|
|
(add-after 'unpack 'patch-tic
|
|
|
|
(lambda _
|
|
|
|
(substitute* "src/nvim/tui/tui.c"
|
2019-03-07 13:39:45 +01:00
|
|
|
(("value != NULL") "value != NULL && value != (char *)-1"))
|
|
|
|
#t))
|
2017-01-24 15:40:15 +01:00
|
|
|
(add-after 'unpack 'set-lua-paths
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
2019-04-10 13:21:26 +02:00
|
|
|
(let* ((lua-version "5.1")
|
2017-01-24 15:40:15 +01:00
|
|
|
(lua-cpath-spec
|
|
|
|
(lambda (prefix)
|
|
|
|
(let ((path (string-append prefix "/lib/lua/" lua-version)))
|
|
|
|
(string-append path "/?.so;" path "/?/?.so"))))
|
|
|
|
(lua-path-spec
|
|
|
|
(lambda (prefix)
|
|
|
|
(let ((path (string-append prefix "/share/lua/" lua-version)))
|
|
|
|
(string-append path "/?.lua;" path "/?/?.lua"))))
|
|
|
|
(lua-inputs (map (cute assoc-ref %build-inputs <>)
|
|
|
|
'("lua"
|
|
|
|
"lua-lpeg"
|
|
|
|
"lua-bitop"
|
|
|
|
"lua-libmpack"))))
|
|
|
|
(setenv "LUA_PATH"
|
|
|
|
(string-join (map lua-path-spec lua-inputs) ";"))
|
|
|
|
(setenv "LUA_CPATH"
|
|
|
|
(string-join (map lua-cpath-spec lua-inputs) ";"))
|
|
|
|
#t))))))
|
|
|
|
(inputs
|
|
|
|
`(("libuv" ,libuv)
|
|
|
|
("msgpack" ,msgpack)
|
|
|
|
("libtermkey" ,libtermkey)
|
|
|
|
("libvterm" ,libvterm)
|
|
|
|
("unibilium" ,unibilium)
|
|
|
|
("jemalloc" ,jemalloc)
|
|
|
|
("libiconv" ,libiconv)
|
2019-04-10 13:21:26 +02:00
|
|
|
("lua" ,lua-5.1)
|
|
|
|
("lua-lpeg" ,lua5.1-lpeg)
|
|
|
|
("lua-bitop" ,lua5.1-bitop)
|
|
|
|
("lua-libmpack" ,lua5.1-libmpack)))
|
2017-01-24 15:40:15 +01:00
|
|
|
(native-inputs
|
|
|
|
`(("pkg-config" ,pkg-config)
|
|
|
|
("gettext" ,gettext-minimal)
|
|
|
|
("gperf" ,gperf)))
|
2019-02-13 07:12:00 +01:00
|
|
|
(home-page "https://neovim.io")
|
2017-01-24 15:40:15 +01:00
|
|
|
(synopsis "Fork of vim focused on extensibility and agility")
|
|
|
|
(description "Neovim is a project that seeks to aggressively
|
|
|
|
refactor Vim in order to:
|
|
|
|
|
|
|
|
@itemize
|
|
|
|
@item Simplify maintenance and encourage contributions
|
|
|
|
@item Split the work between multiple developers
|
|
|
|
@item Enable advanced external UIs without modifications to the core
|
|
|
|
@item Improve extensibility with a new plugin architecture
|
|
|
|
@end itemize\n")
|
|
|
|
;; Neovim is licensed under the terms of the Apache 2.0 license,
|
|
|
|
;; except for parts that were contributed under the Vim license.
|
|
|
|
(license (list license:asl2.0 license:vim))))
|
|
|
|
|
2016-11-09 12:49:07 +01:00
|
|
|
(define-public vifm
|
|
|
|
(package
|
|
|
|
(name "vifm")
|
2019-08-12 10:51:23 +02:00
|
|
|
(version "0.10.1")
|
2016-11-09 12:49:07 +01:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
2017-08-20 22:22:32 +02:00
|
|
|
(uri (list
|
|
|
|
(string-append "https://github.com/vifm/vifm/releases/download/v"
|
|
|
|
version "/vifm-" version ".tar.bz2")
|
|
|
|
(string-append "https://sourceforge.net/projects/vifm/files/vifm/"
|
|
|
|
"vifm-" version ".tar.bz2")))
|
2016-11-09 12:49:07 +01:00
|
|
|
(sha256
|
|
|
|
(base32
|
2019-08-12 10:51:23 +02:00
|
|
|
"0fyhxh7ndjn8fyjhj14ymkr3pjcs3k1xbs43g7xvvq85vdb6y04r"))))
|
2016-11-09 12:49:07 +01:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
2019-08-12 10:52:01 +02:00
|
|
|
'(#:configure-flags '("--disable-build-timestamp")
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'patch-source-shebangs 'patch-test-shebangs
|
|
|
|
(lambda _
|
|
|
|
(substitute* (cons* "src/background.c"
|
|
|
|
"src/cfg/config.c"
|
|
|
|
(find-files "tests" "\\.c$"))
|
|
|
|
(("/bin/sh") (which "sh"))
|
|
|
|
(("/bin/bash") (which "bash")))
|
|
|
|
;; This test segfaults
|
|
|
|
(substitute* "tests/Makefile"
|
|
|
|
(("misc") ""))
|
|
|
|
#t))
|
|
|
|
(add-after 'install 'install-vim-plugin-files
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(vifm (string-append out "/share/vifm"))
|
|
|
|
(vimfiles (string-append out "/share/vim/vimfiles")))
|
|
|
|
(copy-recursively (string-append vifm "/colors")
|
|
|
|
(string-append vimfiles "/colors"))
|
|
|
|
(copy-recursively (string-append vifm "/vim")
|
|
|
|
vimfiles)
|
|
|
|
(delete-file-recursively (string-append vifm "/colors"))
|
|
|
|
(delete-file-recursively (string-append vifm "/vim")))
|
|
|
|
#t)))))
|
2016-11-09 12:49:07 +01:00
|
|
|
(native-inputs
|
2018-01-24 09:53:55 +01:00
|
|
|
`(("groff" ,groff))) ; for the documentation
|
2016-11-09 12:49:07 +01:00
|
|
|
(inputs
|
|
|
|
`(("libx11" ,libx11)
|
2018-01-24 09:53:55 +01:00
|
|
|
("ncurses" ,ncurses)
|
|
|
|
("perl" ,perl)))
|
|
|
|
(home-page "https://vifm.info/")
|
2016-11-09 12:49:07 +01:00
|
|
|
(synopsis "Flexible vi-like file manager using ncurses")
|
|
|
|
(description "Vifm is a file manager providing a @command{vi}-like usage
|
|
|
|
experience. It has similar keybindings and modes (e.g. normal, command line,
|
|
|
|
visual). The interface uses ncurses, thus vifm can be used in text-only
|
|
|
|
environments. It supports a wide range of features, some of which are known
|
|
|
|
from the @command{vi}-editor:
|
|
|
|
@enumerate
|
|
|
|
@item utf8 support
|
|
|
|
@item user mappings (almost like in @code{vi})
|
|
|
|
@item ranges in command
|
|
|
|
@item line commands
|
|
|
|
@item user defined commands (with support for ranges)
|
|
|
|
@item registers
|
|
|
|
@item operation undoing/redoing
|
|
|
|
@item fuse file systems support
|
|
|
|
@item trash
|
|
|
|
@item multiple files renaming
|
|
|
|
@item support of filename modifiers
|
|
|
|
@item colorschemes support
|
|
|
|
@item file name color according to file type
|
|
|
|
@item path specific colorscheme customization
|
|
|
|
@item bookmarks
|
|
|
|
@item operation backgrounding
|
|
|
|
@item customizable file viewers
|
|
|
|
@item handy @code{less}-like preview mode
|
|
|
|
@item filtering out and searching for files using regular expressions
|
|
|
|
@item one or two panes view
|
|
|
|
@end enumerate
|
|
|
|
With the package comes a plugin to use vifm as a vim file selector.")
|
|
|
|
(license license:gpl2+)))
|
2019-06-12 18:42:17 +02:00
|
|
|
|
|
|
|
(define-public python-pynvim
|
|
|
|
(package
|
|
|
|
(name "python-pynvim")
|
|
|
|
(version "0.3.2")
|
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (pypi-uri "pynvim" version))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"01dybk4vs452pljn1q3il5z2sd313ki0lgiglc0xmjc6wp290r6g"))))
|
|
|
|
(build-system python-build-system)
|
|
|
|
(propagated-inputs
|
|
|
|
`(("python-greenlet" ,python-greenlet)
|
|
|
|
("python-msgpack" ,python-msgpack)))
|
|
|
|
(arguments
|
|
|
|
`(#:tests? #f))
|
|
|
|
(home-page "https://github.com/neovim/pynvim")
|
|
|
|
(synopsis "Python client and plugin host for neovim")
|
|
|
|
(description "Pynvim implements support for python plugins in neovim. It
|
|
|
|
also works as a library for connecting to and scripting neovim processes
|
|
|
|
through its msgpack-rpc API.")
|
|
|
|
(license license:asl2.0)))
|
|
|
|
|
|
|
|
(define-public python2-pynvim
|
|
|
|
(package-with-python2 python-pynvim))
|