diff options
Diffstat (limited to 'app-editors')
-rw-r--r-- | app-editors/neovim/files/nvimrc | 101 | ||||
-rw-r--r-- | app-editors/neovim/metadata.xml | 11 | ||||
-rw-r--r-- | app-editors/neovim/neovim-9999.ebuild | 17 |
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 } |