--- /dev/null
+" Default Gentoo configuration file for neovim
+" Based on the default vimrc shipped by Gentoo with app-editors/vim-core
+" $Id$
+
+" You can override any of these settings on a global basis via the
+" "/etc/vim/nvimrc.local" file, and on a per-user basis via "~/.nvimrc".
+" You may need to create these.
+
+" Neovim comes with sensible defaults, see:
+" https://github.com/neovim/neovim/issues/2676
+" Most of the general settings from Gentoo's vimrc have been dropped here.
+" We add only some necessary fixes and a few Gentoo specific settings.
+
+" {{{ Locale settings
+" If we have a BOM, always honour that rather than trying to guess.
+if &fileencodings !~? "ucs-bom"
+ set fileencodings^=ucs-bom
+endif
+
+" Always check for UTF-8 when trying to determine encodings.
+if &fileencodings !~? "utf-8"
+ " If we have to add this, the default encoding is not Unicode.
+ let g:added_fenc_utf8 = 1
+ set fileencodings+=utf-8
+endif
+" }}}
+
+" {{{ Fix &shell, see bug #101665.
+if "" == &shell
+ if executable("/bin/bash")
+ set shell=/bin/bash
+ elseif executable("/bin/sh")
+ set shell=/bin/sh
+ endif
+endif
+"}}}
+
+" {{{ Our default /bin/sh is bash, not ksh, so syntax highlighting for .sh
+" files should default to bash. See :help sh-syntax and bug #101819.
+if has("eval")
+ let is_bash=1
+endif
+" }}}
+
+" {{{ Autocommands
+if has("autocmd")
+
+augroup gentoo
+ au!
+
+ " Gentoo-specific settings for ebuilds. These are the federally-mandated
+ " required tab settings. See the following for more information:
+ " http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml
+ " Note that the rules below are very minimal and don't cover everything.
+ " Better to emerge app-vim/gentoo-syntax, which provides full syntax,
+ " filetype and indent settings for all things Gentoo.
+ au BufRead,BufNewFile *.e{build,class} set ts=4 sw=4 noexpandtab
+
+ " In text files, limit the width of text to 78 characters, but be careful
+ " that we don't override the user's setting.
+ autocmd BufNewFile,BufRead *.txt
+ \ if &tw == 0 && ! exists("g:leave_my_textwidth_alone") |
+ \ setlocal textwidth=78 |
+ \ endif
+
+ " When editing a file, always jump to the last cursor position
+ autocmd BufReadPost *
+ \ if ! exists("g:leave_my_cursor_position_alone") |
+ \ if line("'\"") > 0 && line ("'\"") <= line("$") |
+ \ exe "normal g'\"" |
+ \ endif |
+ \ endif
+
+ " When editing a crontab file, set backupcopy to yes rather than auto. See
+ " :help crontab and bug #53437.
+ autocmd FileType crontab set backupcopy=yes
+
+ " If we previously detected that the default encoding is not UTF-8
+ " (g:added_fenc_utf8), assume that a file with only ASCII characters (or no
+ " characters at all) isn't a Unicode file, but is in the default encoding.
+ " Except of course if a byte-order mark is in effect.
+ autocmd BufReadPost *
+ \ if exists("g:added_fenc_utf8") && &fileencoding == "utf-8" &&
+ \ ! &bomb && search('[\x80-\xFF]','nw') == 0 && &modifiable |
+ \ set fileencoding= |
+ \ endif
+
+ " Strip trailing spaces on write
+ autocmd BufWritePre *.e{build,class}
+ \ if ! exists("g:leave_my_trailing_space_alone") |
+ \ :%s/\s\+$//e |
+ \ endif
+
+augroup END
+
+endif " has("autocmd")
+" }}}
+
+" {{{ nvimrc.local
+if filereadable("/etc/vim/nvimrc.local")
+ source /etc/vim/nvimrc.local
+endif
+" }}}
+
+" vim: set tw=80 sw=2 sts=2 et foldmethod=marker :
--- /dev/null
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils eutils flag-o-matic
+
+DESCRIPTION="Vim-fork focused on extensibility and agility."
+HOMEPAGE="https://neovim.io"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="git://github.com/neovim/neovim.git"
+else
+ SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="Apache-2.0 vim"
+SLOT="0"
+IUSE="+nvimpager perl python +jemalloc"
+
+CDEPEND="dev-lang/luajit:2
+ >=dev-libs/libtermkey-0.17
+ >=dev-libs/libuv-1.2.0
+ >=dev-libs/msgpack-0.6.0_pre20150220
+ >=dev-libs/unibilium-1.1.1
+ dev-libs/libvterm
+ dev-lua/lpeg
+ dev-lua/messagepack
+ jemalloc? ( dev-libs/jemalloc )
+"
+DEPEND="${CDEPEND}
+ virtual/libiconv
+ virtual/libintl"
+RDEPEND="${CDEPEND}
+ perl? ( dev-lang/perl )
+ python? ( dev-python/neovim-python-client )"
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+ # use our system vim dir
+ sed -e '/^# define SYS_VIMRC_FILE/s|$VIM|'"${EPREFIX}"'/etc/vim|' \
+ -i src/nvim/os/unix_defs.h || die
+
+ # add eclass to bash filetypes
+ sed -e 's|*.ebuild|*.ebuild,*.eclass|' -i runtime/filetype.vim || die
+
+ # make less.sh macro actually work with neovim
+ sed -e 's|vim |nvim |g' -i runtime/macros/less.sh || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ export USE_BUNDLED_DEPS=OFF
+ append-cflags "-Wno-error"
+ local mycmakeargs=(
+ $(cmake-utils_use_enable jemalloc JEMALLOC)
+ -DLIBUNIBILIUM_USE_STATIC=OFF
+ -DLIBTERMKEY_USE_STATIC=OFF
+ -DLIBVTERM_USE_STATIC=OFF
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ # install a default configuration file
+ insinto /etc/vim
+ doins "${FILESDIR}"/sysinit.vim
+
+ # conditionally install a symlink for nvimpager
+ if use nvimpager; then
+ dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
+ fi
+}