summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-editors/neovim/files/nvimrc101
-rw-r--r--app-editors/neovim/metadata.xml11
-rw-r--r--app-editors/neovim/neovim-9999.ebuild17
3 files changed, 41 insertions, 88 deletions
diff --git a/app-editors/neovim/files/nvimrc b/app-editors/neovim/files/nvimrc
index e49b3c4..635fc62 100644
--- a/app-editors/neovim/files/nvimrc
+++ b/app-editors/neovim/files/nvimrc
@@ -1,42 +1,15 @@
" Default Gentoo configuration file for neovim
" Based on the default vimrc shipped by Gentoo with app-editors/vim-core
-" $Header: $
+" $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.
-" {{{ General settings
-" The following are some sensible defaults for Vim for most users.
-set bs=2 " Allow backspacing over everything in insert mode
-set ai " Always set auto-indenting on
-set history=50 " keep 50 lines of command history
-set ruler " Show the cursor position all the time
-set formatoptions+=j " Delete comment character when joining commented lines
-
-" Don't use Ex mode, use Q for formatting
-map Q gq
-
-" When doing tab completion, give the following files lower priority. You may
-" wish to set 'wildignore' to completely ignore files, and 'wildmenu' to enable
-" enhanced tab completion. These can be done in the user vimrc file.
-set suffixes+=.info,.aux,.log,.dvi,.bbl,.out,.o,.lo
-
-" When displaying line numbers, don't use an annoyingly wide number column. This
-" doesn't enable line numbers -- :set number will do that. The value given is a
-" minimum width to use for the number column, not a fixed size.
-set numberwidth=3
-
-" Use sensible whitespace indicators
-set listchars=tab:>\ ,trail:-,extends:>,precedes:<,nbsp:+
-" }}}
-
-" {{{ Modeline settings
-" We don't allow modelines by default. See bug #14088 and bug #73715.
-" If you're not concerned about these, you can enable them on a per-user
-" basis by adding "set modeline" to your ~/.vimrc file.
-set nomodeline
-" }}}
+" 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.
@@ -52,44 +25,6 @@ if &fileencodings !~? "utf-8"
endif
" }}}
-" {{{ Syntax highlighting settings
-" Switch syntax highlighting on, when the terminal has colors
-" Also switch on highlighting the last used search pattern.
-if &t_Co > 2 || has("gui_running")
- syntax on
- set hlsearch
-endif
-" }}}
-
-" {{{ Terminal fixes
-if &term ==? "xterm"
- set t_Sb=^[4%dm
- set t_Sf=^[3%dm
- set ttymouse=xterm2
-endif
-
-if &term ==? "gnome" && has("eval")
- " Set useful keys that vim doesn't discover via termcap but are in the
- " builtin xterm termcap. See bug #122562. We use exec to avoid having to
- " include raw escapes in the file.
- exec "set <C-Left>=\eO5D"
- exec "set <C-Right>=\eO5C"
-endif
-" }}}
-
-" {{{ Filetype plugin settings
-" Enable plugin-provided filetype settings, but only if the ftplugin
-" directory exists (which it won't on livecds, for example).
-if isdirectory(expand("$VIMRUNTIME/ftplugin"))
- filetype plugin on
-
- " Uncomment the next line (or copy to your ~/.vimrc) for plugin-provided
- " indent settings. Some people don't like these, so we won't turn them on by
- " default.
- " filetype indent on
-endif
-" }}}
-
" {{{ Fix &shell, see bug #101665.
if "" == &shell
if executable("/bin/bash")
@@ -119,22 +54,21 @@ augroup gentoo
" 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} let is_bash=1|setfiletype sh
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 |
+ \ 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 |
+ \ if line("'\"") > 0 && line ("'\"") <= line("$") |
+ \ exe "normal g'\"" |
+ \ endif |
\ endif
" When editing a crontab file, set backupcopy to yes rather than auto. See
@@ -147,22 +81,25 @@ augroup gentoo
" 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= |
+ \ ! &bomb && search('[\x80-\xFF]','nw') == 0 && &modifiable |
+ \ set fileencoding= |
\ endif
-augroup END
+ " Strip trailing spaces on write
+ autocmd BufWritePre *.e{build,class}
+ \ if ! exists("g:leave_my_trailing_space_alone") |
+ \ :%s/\s\+$//e |
+ \ endif
-" Strip trailing spaces on write
-autocmd BufWritePre * :%s/\s\+$//e
+augroup END
endif " has("autocmd")
" }}}
-" {{{ vimrc.local
+" {{{ nvimrc.local
if filereadable("/etc/vim/nvimrc.local")
source /etc/vim/nvimrc.local
endif
" }}}
-" vim: set fenc=utf-8 tw=80 sw=2 sts=2 et foldmethod=marker :
+" vim: set tw=80 sw=2 sts=2 et foldmethod=marker :
diff --git a/app-editors/neovim/metadata.xml b/app-editors/neovim/metadata.xml
index f2b4a5d..4ead8c2 100644
--- a/app-editors/neovim/metadata.xml
+++ b/app-editors/neovim/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>yngwin@gentoo.org</email>
- <name>Ben de Groot</name>
- </maintainer>
+ <herd>vim</herd>
+ <use>
+ <flag name='nvimpager'>Install nvimpager symlink to less.sh macro</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">neovim/neovim</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-editors/neovim/neovim-9999.ebuild b/app-editors/neovim/neovim-9999.ebuild
index a2b7f2b..27615d2 100644
--- a/app-editors/neovim/neovim-9999.ebuild
+++ b/app-editors/neovim/neovim-9999.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/neovim/neovim-0.0.0_pre20150329.ebuild,v 1.1 2015/03/29 04:03:56 yngwin Exp $
+# $Id$
EAPI=5
inherit cmake-utils flag-o-matic
@@ -17,7 +17,7 @@ fi
LICENSE="Apache-2.0 vim"
SLOT="0"
-IUSE="perl python"
+IUSE="+nvimpager perl python"
CDEPEND="dev-lang/luajit:2
>=dev-libs/libtermkey-0.17
@@ -38,6 +38,13 @@ 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
}
@@ -56,7 +63,13 @@ src_configure() {
src_install() {
cmake-utils_src_install
+
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/nvimrc
+
+ # conditionally install a symlink for nvimpager
+ if use nvimpager; then
+ dosym /usr/share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
+ fi
}