Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vimrc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Murukesh Mohanan
vimrc
Commits
edd892e8
Commit
edd892e8
authored
Mar 12, 2016
by
Murukesh Mohanan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
switch to vim-plug
parent
cf3a9bda
Changes
22
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
2202 additions
and
675 deletions
+2202
-675
.gitmodules
.gitmodules
+0
-55
autoload/deb.vim
autoload/deb.vim
+0
-258
autoload/pathogen.vim
autoload/pathogen.vim
+0
-326
autoload/plug.vim
autoload/plug.vim
+2176
-0
bundle/YouCompleteMe
bundle/YouCompleteMe
+0
-1
bundle/airline
bundle/airline
+0
-1
bundle/ctrlp.vim
bundle/ctrlp.vim
+0
-1
bundle/diffchar.vim
bundle/diffchar.vim
+0
-1
bundle/molokai
bundle/molokai
+0
-1
bundle/nerdtree
bundle/nerdtree
+0
-1
bundle/supertab
bundle/supertab
+0
-1
bundle/syntastic
bundle/syntastic
+0
-1
bundle/tabular
bundle/tabular
+0
-1
bundle/tagbar
bundle/tagbar
+0
-1
bundle/vim-fugitive
bundle/vim-fugitive
+0
-1
bundle/vim-go
bundle/vim-go
+0
-1
bundle/vim-markdown
bundle/vim-markdown
+0
-1
bundle/vim-surround
bundle/vim-surround
+0
-1
bundle/vim2hs
bundle/vim2hs
+0
-1
bundle/vimtex
bundle/vimtex
+0
-1
plugin/debPlugin.vim
plugin/debPlugin.vim
+0
-18
vimrc
vimrc
+26
-2
No files found.
.gitmodules
View file @
edd892e8
[submodule "bundle/diffchar.vim"]
path = bundle/diffchar.vim
url = https://github.com/vim-scripts/diffchar.vim
ignore = dirty
[submodule "bundle/eregex.vim"]
path = bundle/eregex.vim
url = https://github.com/othree/eregex.vim.git
ignore = dirty
[submodule "bundle/nerdtree"]
path = bundle/nerdtree
url = https://github.com/scrooloose/nerdtree.git
ignore = dirty
[submodule "bundle/supertab"]
path = bundle/supertab
url = https://github.com/ervandew/supertab.git
ignore = dirty
[submodule "bundle/syntastic"]
path = bundle/syntastic
url = https://github.com/scrooloose/syntastic.git
ignore = dirty
[submodule "bundle/vim2hs"]
path = bundle/vim2hs
url = https://github.com/dag/vim2hs
ignore = dirty
[submodule "bundle/vim-surround"]
path = bundle/vim-surround
url = https://github.com/tpope/vim-surround.git
ignore = dirty
[submodule "bundle/LaTeX-Box"]
path = bundle/LaTeX-Box
url = https://github.com/LaTeX-Box-Team/LaTeX-Box.git
...
...
@@ -34,37 +10,6 @@
path = bundle/ctrlp
url = https://github.com/kien/ctrlp.vim
ignore = dirty
[submodule "bundle/airline"]
path = bundle/airline
url = https://github.com/bling/vim-airline
ignore = dirty
[submodule "bundle/vim-fugitive"]
path = bundle/vim-fugitive
url = https://github.com/tpope/vim-fugitive.git
[submodule "bundle/AnsiEsc.vim"]
path = bundle/AnsiEsc.vim
url = https://github.com/vim-scripts/AnsiEsc.vim
[submodule "bundle/vimtex"]
path = bundle/vimtex
url = https://github.com/lervag/vimtex
[submodule "bundle/molokai"]
path = bundle/molokai
url = https://github.com/tomasr/molokai.git
[submodule "bundle/ctrlp.vim"]
path = bundle/ctrlp.vim
url = https://github.com/ctrlpvim/ctrlp.vim.git
[submodule "bundle/vim-markdown"]
path = bundle/vim-markdown
url = https://github.com/gabrielelana/vim-markdown
[submodule "bundle/tagbar"]
path = bundle/tagbar
url = https://github.com/majutsushi/tagbar.git
[submodule "bundle/vim-go"]
path = bundle/vim-go
url = https://github.com/fatih/vim-go.git
[submodule "bundle/YouCompleteMe"]
path = bundle/YouCompleteMe
url = https://github.com/Valloric/YouCompleteMe.git
[submodule "bundle/tabular"]
path = bundle/tabular
url = https://github.com/godlygeek/tabular.git
autoload/deb.vim
deleted
100644 → 0
View file @
cf3a9bda
" Vim autoload file for browsing debian package.
" copyright (C) 2007-2008, arno renevier <arenevier@fdn.fr>
" Distributed under the GNU General Public License (version 2 or above)
" Last Change: 2008 april 1
"
" Inspired by autoload/tar.vim by Charles E Campbell
"
" Latest version of that file can be found at
" http://www.fdn.fr/~arenevier/vim/autoload/deb.vim
" It should also be available at
" http://www.vim.org/scripts/script.php?script_id=1970
if
&
cp
||
exists
(
"g:loaded_deb"
)
||
v
:
version
<
700
finish
endif
let
g:loaded_deb
=
"v1.4"
fun
!
deb#
read
(
debfile
,
member
)
" checks if ar and tar are installed
if
!
s:hascmd
(
"ar"
)
||
!
s:hascmd
(
"tar"
)
return
endif
let
l
:
target
=
a:member
let
l
:
archmember
=
s:dataFileName
(
a:debfile
)
" default archive member
to
extract
if
l
:
archmember
==
""
echohl WarningMsg
|
echo
"***error*** (deb#read) no valid data file found in debian archive"
return
elseif
l
:
archmember
==
"data.tar.gz"
let
l
:
unpcmp
=
"tar zxfO "
elseif
l
:
archmember
==
"data.tar.bz2"
let
l
:
unpcmp
=
"tar jxfO "
elseif
l
:
archmember
==
"data.tar.lzma"
if
!
s:hascmd
(
"lzma"
)
return
endif
let
l
:
unpcmp
=
"lzma -d | tar xfO "
elseif
l
:
archmember
==
"data.tar"
let
l
:
unpcmp
=
"tar xfO "
endif
if
a:member
=~
'^\* '
" information control
file
let
l
:
archmember
=
"control.tar.gz"
let
l
:
target
=
substitute
(
l
:
target
,
"^\* "
,
""
,
""
)
let
l
:
unpcmp
=
"tar zxfO "
elseif
a:member
=~
' -> '
" symbolic link
let
l
:
target
=
split
(
a:member
,
' -> '
)[
0
]
let
l
:
linkname
=
split
(
a:member
,
' -> '
)[
1
]
if
l
:
linkname
=~
"^\/"
" direct symlink
:
path
is
already absolute
let
l
:
target
=
"."
.
l
:
linkname
else
" transform relative path to absolute path
" first, get basename for target
let
l
:
target
=
substitute
(
l
:
target
,
"\/[^/]*$"
,
""
,
""
)
" while it begins with ../
while
l
:
linkname
=~
"^\.\.\/"
" removes one level of ../ in linkname
let
l
:
linkname
=
substitute
(
l
:
linkname
,
"^\.\.\/"
,
""
,
""
)
" go one directory up in target
let
l
:
target
=
substitute
(
l
:
target
,
"\/[^/]*$"
,
""
,
""
)
endwhile
let
l
:
target
=
l
:
target
.
"/"
.
l
:
linkname
endif
endif
" we may preprocess some files (such as man pages, or changelogs)
let
l
:
preproccmd
=
""
"
" unzip man pages
"
if
l
:
target
=~
"\.\/usr\/share\/man\/.*\.gz$"
" try to fail gracefully if a command is not available
if
!
s:hascmd
(
"gzip"
)
return
elseif
!
s:hascmd
(
"nroff"
)
let
l
:
preproccmd
=
"| gzip -cd"
elseif
!
s:hascmd
(
"col"
)
let
l
:
preproccmd
=
"| gzip -cd | nroff -mandoc"
else
let
l
:
preproccmd
=
"| gzip -cd | nroff -mandoc | col -b"
endif
"
" unzip other .gz files
"
elseif
l
:
target
=~
'.*\.gz$'
if
!
s:hascmd
(
"gzip"
)
return
endif
let
l
:
preproccmd
=
"| gzip -cd"
endif
" read content
exe
"silent r! ar p "
.
s:QuoteFile
(
a:debfile
)
.
" "
.
s:QuoteFile
(
l
:
archmember
)
.
" | "
.
l
:
unpcmp
.
" - "
.
s:QuoteFile
(
l
:
target
)
.
l
:
preproccmd
" error will be treated in calling function
if
v
:
shell_error
!=
0
return
endif
exe
"file deb:"
.
l
:
target
0
d
setlocal
nomodifiable nomodified readonly
endfun
fun
!
deb#
browse
(
file
)
" checks if necessary utils are installed
if
!
s:hascmd
(
"dpkg"
)
||
!
s:hascmd
(
"ar"
)
||
!
s:hascmd
(
"tar"
)
return
endif
" checks if file is readable
if
!
filereadable
(
a:file
)
return
endif
if
a:file
=~
"'"
echohl WarningMsg
|
echo
"***error*** (deb#Browse) filename cannot contain quote character ("
.
a:file
.
")"
return
endif
let
keepmagic
=
&magic
set
magic
" set filetype to "deb"
set
ft
=
deb
setlocal
modifiable noreadonly
" set header
exe
"$put ='"
.
'\"'
.
" deb.vim version "
.
g:loaded_deb
.
"'"
exe
"$put ='"
.
'\"'
.
" Browsing debian package "
.
a:file
.
"'"
$
put
=
''
" package info
"exe "silent read! dpkg -I ".a:file
"$put=''
" display information control files
let
l
:
infopos
=
line
(
"."
)
exe
"silent read! ar p "
.
s:QuoteFile
(
a:file
)
.
" control.tar.gz | tar zt"
$
put
=
''
" display data files
let
l
:
listpos
=
line
(
"."
)
exe
"silent read! dpkg -c "
.
s:QuoteFile
(
a:file
)
" format information control list
" removes '* ./' line
exe
(
l
:
infopos
+
1
).
'd'
" add a star before each line
exe
"silent "
.
(
l
:
infopos
+
1
).
','
.
(
l
:
listpos
-
2
)
.
's/^/\* /'
" format data list
exe
"silent "
.
l
:
listpos
.
',$s/^.*\s\(\.\/\(\S\|\).*\)$/\1/'
if
v
:
shell_error
!=
0
echohl WarningMsg
|
echo
"***warning*** (deb#Browse) error when listing content of "
.
a:file
let
&magic
=
keepmagic
return
endif
0
d
setlocal
nomodifiable readonly
noremap
<
silent
>
<
buffer
>
<
cr
>
:
call
<
SID
>
DebBrowseSelect
()<
cr
>
let
&magic
=
keepmagic
endfun
fun
!
s:DebBrowseSelect
()
let
l
:
fname
=
getline
(
"."
)
" sanity check
if
(
l
:
fname
!~
'^\.\/'
)
&&
(
l
:
fname
!~
'^\* \.\/'
)
return
endif
if
l
:
fname
=~
"'"
echohl WarningMsg
|
echo
"***error*** (DebBrowseSelect) filename cannot contain quote character ("
.
l
:
fname
.
")"
return
endif
" do nothing on directories
" TODO: find a way to detect symlinks to directories, to be able not to
" open them
if
(
l
:
fname
=~
'\/$'
)
return
endif
" need to get it now since a new window will open
let
l
:
curfile
=
expand
(
"%"
)
" open new window
new
wincmd
_
call
deb#
read
(
l
:
curfile
,
l
:
fname
)
if
v
:
shell_error
!=
0
echohl WarningMsg
|
echo
"***warning*** (DebBrowseSelect) error when reading "
.
l
:
fname
return
endif
filetype
detect
" zipped files, are unziped in deb#read, but filetype may not
" automatically work.
if
l
:
fname
=~
"\.\/usr\/share\/man\/.*\.gz$"
set
filetype
=
man
elseif
l
:
fname
=~
"\.\/usr\/share\/doc\/.*\/changelog.Debian.gz$"
set
filetype
=
debchangelog
endif
endfun
" return data file name for debian package. This can be either data.tar.gz,
" data.tar.bz2 or data.tar.lzma
fun
s:dataFileName
(
deb
)
for
fn
in
[
"data.tar.gz"
,
"data.tar.bz2"
,
"data.tar.lzma"
,
"data.tar"
]
" [0:-2] is to remove trailing null character from command output
if
(
system
(
"ar t "
.
"'"
.
a:deb
.
"'"
.
" "
.
fn
))[
0
:
-2
]
==
fn
return
fn
endif
endfor
return
""
" no debian data format
in
this archive
endfun
fun
s:QuoteFile
(
file
)
" we need to escape %, #, <, and >
" see :help cmdline-specialk
return
"'"
.
substitute
(
a:file
,
'\([%#<>]\)'
,
'\\\1'
,
'g'
)
.
"'"
endfun
" return 1 if cmd exists
" display error message and return 0 otherwise
fun
s:hascmd
(
cmd
)
if
executable
(
a:cmd
)
return
1
else
echohl Error
|
echo
"***error*** "
.
a:cmd
.
" not available on your system"
return
0
else
endfu
autoload/pathogen.vim
deleted
100644 → 0
View file @
cf3a9bda
" pathogen.vim - path option manipulation
" Maintainer: Tim Pope <http://tpo.pe/>
" Version: 2.2
" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
"
" For management of individually installed plugins in ~/.vim/bundle (or
" ~\vimfiles\bundle), adding `execute pathogen#infect()` to the top of your
" .vimrc is the only other setup necessary.
"
" The API is documented inline below. For maximum ease of reading,
" :set foldmethod=marker
if
exists
(
"g:loaded_pathogen"
)
||
&
cp
finish
endif
let
g:loaded_pathogen
=
1
function
!
s:warn
(
msg
)
echohl WarningMsg
echomsg
a:msg
echohl
NONE
endfunction
" Point of entry for basic default usage. Give a relative path to invoke
" pathogen#incubate() (defaults to "bundle/{}"), or an absolute path to invoke
" pathogen#surround(). For backwards compatibility purposes, a full path that
" does not end in {} or * is given to pathogen#runtime_prepend_subdirectories()
" instead.
function
!
pathogen#infect
(...)
abort "
{{{
1
for
path
in
a:0
? reverse
(
copy
(
a:000
))
:
[
'bundle/{}'
]
if
path
=~
#
'^[^\\/]\+$'
call
s:warn
(
'Change pathogen#infect('
.
string
(
path
).
') to pathogen#infect('
.
string
(
path
.
'/{}'
).
')'
)
call
pathogen#incubate
(
path
.
'/{}'
)
elseif
path
=~
#
'^[^\\/]\+[\\/]\%({}\|\*\)$'
call
pathogen#incubate
(
path
)
elseif
path
=~
#
'[\\/]\%({}\|\*\)$'
call
pathogen#surround
(
path
)
else
call
s:warn
(
'Change pathogen#infect('
.
string
(
path
).
') to pathogen#infect('
.
string
(
path
.
'/{}'
).
')'
)
call
pathogen#surround
(
path
.
'/{}'
)
endif
endfor
call
pathogen#cycle_filetype
()
return
''
endfunction
"
}}}
1
" Split a path into a list.
function
!
pathogen#split
(
path
)
abort "
{{{
1
if
type
(
a:path
)
==
type
([])
|
return
a:path
|
endif
let
split
=
split
(
a:path
,
'\\\@<!\%(\\\\\)*\zs,'
)
return
map
(
split
,
'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")'
)
endfunction
"
}}}
1
" Convert a list to a path.
function
!
pathogen#
join
(...)
abort "
{{{
1
if
type
(
a:1
)
==
type
(
1
)
&&
a:1
let
i
=
1
let
space
=
' '
else
let
i
=
0
let
space
=
''
endif
let
path
=
""
while
i
<
a:0
if
type
(
a:000
[
i
])
==
type
([])
let
list
=
a:000
[
i
]
let
j
=
0
while
j
<
len
(
list
)
let
escaped
=
substitute
(
list
[
j
],
'[,'
.
space
.
']\|\\[\,'
.
space
.
']\@='
,
'\\&'
,
'g'
)
let
path
.=
','
.
escaped
let
j
+=
1
endwhile
else
let
path
.=
","
.
a:000
[
i
]
endif
let
i
+=
1
endwhile
return
substitute
(
path
,
'^,'
,
''
,
''
)
endfunction
"
}}}
1
" Convert a list to a path with escaped spaces for 'path', 'tag', etc.
function
!
pathogen#legacyjoin
(...)
abort "
{{{
1
return
call
(
'pathogen#join'
,[
1
]
+
a:000
)
endfunction
"
}}}
1
" Remove duplicates from a list.
function
!
pathogen#uniq
(
list
)
abort "
{{{
1
let
i
=
0
let
seen
=
{}
while
i
<
len
(
a:list
)
if
(
a:list
[
i
]
==
#
''
&& exists
(
'empty'
))
||
has_key
(
seen
,
a:list
[
i
])
call
remove
(
a:list
,
i
)
elseif
a:list
[
i
]
==
#
''
let
i
+=
1
let
empty
=
1
else
let
seen
[
a:list
[
i
]]
=
1
let
i
+=
1
endif
endwhile
return
a:list
endfunction
"
}}}
1
" \ on Windows unless shellslash is set, / everywhere else.
function
!
pathogen#separator
()
abort "
{{{
1
return
!
exists
(
"+shellslash"
)
||
&shellslash ?
'/'
:
'\'
endfunction
"
}}}
1
" Convenience wrapper around glob() which returns a list.
function
!
pathogen#glob
(
pattern
)
abort "
{{{
1
let
files
=
split
(
glob
(
a:pattern
),
"\n"
)
return
map
(
files
,
'substitute(v:val,"[".pathogen#separator()."/]$","","")'
)
endfunction
"
}}}
1
" Like pathogen#glob(), only limit the results to directories.
function
!
pathogen#glob_directories
(
pattern
)
abort "
{{{
1
return
filter
(
pathogen#glob
(
a:pattern
),
'isdirectory(v:val)'
)
endfunction
"
}}}
1
" Turn filetype detection off and back on again if it was already enabled.
function
!
pathogen#cycle_filetype
()
"
{{{
1
if
exists
(
'g:did_load_filetypes'
)
filetype
off
filetype
on
endif
endfunction
"
}}}
1
" Check if a bundle is disabled. A bundle is considered disabled if it ends
" in a tilde or its basename or full name is included in the list
" g:pathogen_disabled.
function
!
pathogen#is_disabled
(
path
)
"
{{{
1
if
a:path
=~
#
'\~$'
return
1
elseif
!
exists
(
"g:pathogen_disabled"
)
return
0
endif
let
sep
=
pathogen#separator
()
let
blacklist
=
g:pathogen_disabled
return
index
(
blacklist
,
strpart
(
a:path
,
strridx
(
a:path
,
sep
)+
1
))
!=
-1
&& index
(
blacklist
,
a:path
)
!=
1
endfunction
"
}}}
1
" Prepend the given directory to the runtime path and append its corresponding
" after directory. If the directory is already included, move it to the
" outermost position. Wildcards are added as is. Ending a path in /{} causes
" all subdirectories to be added (except those in g:pathogen_disabled).
function
!
pathogen#surround
(
path
)
abort "
{{{
1
let
sep
=
pathogen#separator
()
let
rtp
=
pathogen#split
(
&rtp
)
if
a:path
=~
#
'[\\/]{}$'
let
path
=
fnamemodify
(
a:path
[
0
:
-4
],
':p:s?[\\/]\=$??'
)
let
before
=
filter
(
pathogen#glob_directories
(
path
.
sep
.
'*'
),
'!pathogen#is_disabled(v:val)'
)
let
after
=
filter
(
reverse
(
pathogen#glob_directories
(
path
.
sep
.
"*"
.
sep
.
"after"
)),
'!pathogen#is_disabled(v:val[0:-7])'
)
call
filter
(
rtp
,
'v:val[0:strlen(path)-1] !=# path'
)
else
let
path
=
fnamemodify
(
a:path
,
':p:s?[\\/]\=$??'
)
let
before
=
[
path
]
let
after
=
[
path
.
sep
.
'after'
]
call
filter
(
rtp
,
'index(before + after, v:val) == -1'
)
endif
let
&rtp
=
pathogen#
join
(
before
,
rtp
,
after
)
return
&rtp
endfunction
"
}}}
1
" Prepend all subdirectories of path to the rtp, and append all 'after'
" directories in those subdirectories. Deprecated.
function
!
pathogen#runtime_prepend_subdirectories
(
path
)
"
{{{
1
call
s:warn
(
'Change pathogen#runtime_prepend_subdirectories('
.
string
(
a:path
).
') to pathogen#surround('
.
string
(
a:path
.
'/{}'
).
')'
)
return
pathogen#surround
(
a:path
.
pathogen#separator
()
.
'{}'
)
endfunction
"
}}}
1
" For each directory in the runtime path, add a second entry with the given
" argument appended. If the argument ends in '/{}', add a separate entry for
" each subdirectory. The default argument is 'bundle/{}', which means that
" .vim/bundle/*, $VIM/vimfiles/bundle/*, $VIMRUNTIME/bundle/*,
" $VIM/vim/files/bundle/*/after, and .vim/bundle/*/after will be added (on
" UNIX).
function
!
pathogen#incubate
(...)
abort "
{{{
1
let
sep
=
pathogen#separator
()
let
name
=
a:0
?
a:1
:
'bundle/{}'
if
"\n"
.
s:done_bundles
=~
#
"\\M\n"
.
name
.
"\n"
return
""
endif
let
s:done_bundles
.=
name
.
"\n"
let
list
=
[]
for
dir
in
pathogen#split
(
&rtp
)
if
dir
=~
#
'\<after$'
if
name
=~
#
'{}$'
let
list
+=
filter
(
pathogen#glob_directories
(
substitute
(
dir
,
'after$'
,
name
[
0
:
-3
],
''
).
'*'
.
sep
.
'after'
),
'!pathogen#is_disabled(v:val[0:-7])'
)
+
[
dir
]
else
let
list
+=
[
dir
,
substitute
(
dir
,
'after$'
,
''
,
''
)
.
name
.
sep
.
'after'
]
endif
else
if
name
=~
#
'{}$'
let
list
+=
[
dir
]
+
filter
(
pathogen#glob_directories
(
dir
.
sep
.
name
[
0
:
-3
].
'*'
),
'!pathogen#is_disabled(v:val)'
)
else
let
list
+=
[
dir
.
sep
.
name
,
dir
]
endif
endif
endfor
let
&rtp
=
pathogen#
join
(
pathogen#uniq
(
list
))
return
1
endfunction
"
}}}
1
" Deprecated alias for pathogen#incubate().
function
!
pathogen#runtime_append_all_bundles
(...)
abort "
{{{
1
if
a:0
call
s:warn
(
'Change pathogen#runtime_append_all_bundles('
.
string
(
a:1
).
') to pathogen#incubate('
.
string
(
a:1
.
'/{}'
).
')'
)
else
call
s:warn
(
'Change pathogen#runtime_append_all_bundles() to pathogen#incubate()'
)
endif
return
call
(
'pathogen#incubate'
,
map
(
copy
(
a:000
),
'v:val . "/{}"'
))
endfunction
let
s:done_bundles
=
''
" }}}1
" Invoke :helptags on all non-$VIM doc directories in runtimepath.
function
!
pathogen#
helptags
()
abort "
{{{
1
let
sep
=
pathogen#separator
()
for
glob
in
pathogen#split
(
&rtp
)
for
dir
in
split
(
glob
(
glob
),
"\n"
)
if
(
dir
.
sep
)[
0
:
strlen
(
$VIMRUNTIME
)]
!=
# $VIMRUNTIME
.
sep && filewritable
(
dir
.
sep
.
'doc'
)
==
2
&&
!
empty
(
filter
(
split
(
glob
(
dir
.
sep
.
'doc'
.
sep
.
'*'
),
"\n>"
),
'!isdirectory(v:val)'
))
&&
(!
filereadable
(
dir
.
sep
.
'doc'
.
sep
.
'tags'
)
||
filewritable
(
dir
.
sep
.
'doc'
.
sep
.
'tags'
))
silent
!
execute
'helptags'
pathogen#fnameescape
(
dir
.
'/doc'
)
endif
endfor
endfor
endfunction
"
}}}
1
command
!
-
bar Helptags
:
call
pathogen#
helptags
()
" Execute the given command. This is basically a backdoor for --remote-expr.
function
!
pathogen#execute
(...)
abort "
{{{
1
for
command
in
a:000
execute command
endfor
return
''
endfunction
"
}}}
1
" Like findfile(), but hardcoded to use the runtimepath.
function
!
pathogen#runtime_findfile
(
file
,
count
)
abort "
{{{
1
let
rtp
=
pathogen#
join
(
1
,
pathogen#split
(
&rtp
))
let
file
=
findfile
(
a:file
,
rtp
,
a:count
)
if
file
==
#
''
return
''
else
return
fnamemodify
(
file
,
':p'
)
endif
endfunction
"
}}}
1
" Backport of fnameescape().
function
!
pathogen#fnameescape
(
string
)
abort "
{{{
1
if
exists
(
'*fnameescape'
)
return
fnameescape
(
a:string
)
elseif
a:string
==
#
'-'
return
'\-'
else
return
substitute
(
escape
(
a:string
,
" \t\n*?[{`$\\%#'\"|!<"
),
'^[+>]'
,
'\\&'
,
''
)
endif
endfunction
"
}}}
1
if
exists
(
':Vedit'
)
finish
endif
let
s:vopen_warning
=
0
function
!
s:find
(
count
,
cmd
,
file
,
lcd
)
"
{{{
1
let
rtp
=
pathogen#
join
(
1
,
pathogen#split
(
&runtimepath
))
let
file
=
pathogen#runtime_findfile
(
a:file
,
a:count
)
if
file
==
#
''
return
"echoerr 'E345: Can''t find file \""
.
a:file
.
"\" in runtimepath'"
endif
if
!
s:vopen_warning
let
s:vopen_warning
=
1
let
warning
=
'|echohl WarningMsg|echo "Install scriptease.vim to continue using :V'
.
a:cmd
.
'"|echohl NONE'
else
let
warning
=
''
endif
if
a:lcd
let
path
=
file
[
0
:-
strlen
(
a:file
)
-2
]
execute
'lcd `=path`'
return
a:cmd
.
' '
.
pathogen#fnameescape
(
a:file
)
.
warning
else
return
a:cmd
.
' '
.
pathogen#fnameescape
(
file
)
.
warning
endif
endfunction
"
}}}
1
function
!
s:Findcomplete
(
A
,
L
,
P
)
"
{{{
1
let
sep
=
pathogen#separator
()
let
cheats
=
{
\
'a'
:
'autoload'
,
\
'd'
:
'doc'
,
\
'f'
:
'ftplugin'
,
\
'i'
:
'indent'
,
\
'p'
:
'plugin'
,
\
's'
:
'syntax'
}
if
a:A
=~
#
'^\w[\\/]'
&& has_key
(
cheats
,
a:A
[
0
])
let
request
=
cheats
[
a:A
[
0
]].
a:A
[
1
:
-1
]
else
let
request
=
a:A
endif
let
pattern
=
substitute
(
request
,
'/\|\'.sep,'
*
'.sep,'
g
').'
*'
let
found
=
{}
for
path
in
pathogen#split
(
&runtimepath
)
let
path
=
expand
(
path
,
':p'
)
let
matches
=
split
(
glob
(
path
.
sep
.
pattern
),
"\n"
)
call
map
(
matches
,
'isdirectory(v:val) ? v:val.sep : v:val'
)
call
map
(
matches
,
'expand(v:val, ":p")[strlen(path)+1:-1]'
)
for
match
in
matches
let
found
[
match
]
=
1
endfor
endfor
return
sort
(
keys
(
found
))
endfunction
"
}}}
1
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Ve
:
execute
s:find
(<
count
>,
'edit<bang>'
,<
q
-
args
>,
0
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vedit
:
execute
s:find
(<
count
>,
'edit<bang>'
,<
q
-
args
>,
0
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vopen
:
execute
s:find
(<
count
>,
'edit<bang>'
,<
q
-
args
>,
1
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vsplit
:
execute
s:find
(<
count
>,
'split'
,<
q
-
args
>,<
bang
>
1
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vvsplit
:
execute
s:find
(<
count
>,
'vsplit'
,<
q
-
args
>,<
bang
>
1
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vtabedit
:
execute
s:find
(<
count
>,
'tabedit'
,<
q
-
args
>,<
bang
>
1
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vpedit
:
execute
s:find
(<
count
>,
'pedit'
,<
q
-
args
>,<
bang
>
1
)
command
!
-
bar
-
bang
-
range
=
1
-
nargs
=
1
-
complete
=
customlist
,
s:Findcomplete
Vread
:
execute
s:find
(<
count
>,
'read'
,<
q
-
args
>,<
bang
>
1
)
" vim:set et sw=2:
autoload/plug.vim
0 → 100644
View file @
edd892e8
" vim-plug: Vim plugin manager
" ============================
"
" Download plug.vim and put it in ~/.vim/autoload
"
" curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
" https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
"
" Edit your .vimrc
"
" call plug#begin('~/.vim/plugged')
"
" " Make sure you use single quotes
"
" " Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
" Plug 'junegunn/vim-easy-align'
"
" " Any valid git URL is allowed
" Plug 'https://github.com/junegunn/vim-github-dashboard.git'
"
" " Group dependencies, vim-snippets depends on ultisnips
" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
"
" " On-demand loading
" Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
" Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
"
" " Using a non-master branch
" Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }
"
" " Plugin options
" Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }
"
" " Plugin outside ~/.vim/plugged with post-update hook
" Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
"
" " Unmanaged plugin (manually installed and updated)
" Plug '~/my-prototype-plugin'
"
" " Add plugins to &runtimepath
" call plug#end()
"
" Then reload .vimrc and :PlugInstall to install plugins.
"
" Plug options:
"
"| Option | Description |
"| ----------------------- | ------------------------------------------------ |
"| `branch`/`tag`/`commit` | Branch/tag/commit of the repository to use |
"| `rtp` | Subdirectory that contains Vim plugin |
"| `dir` | Custom directory for the plugin |
"| `as` | Use different name for the plugin |
"| `do` | Post-update hook (string or funcref) |
"| `on` | On-demand loading: Commands or `<Plug>`-mappings |
"| `for` | On-demand loading: File types |
"| `frozen` | Do not update unless explicitly specified |
"
" More information: https://github.com/junegunn/vim-plug
"
"
" Copyright (c) 2015 Junegunn Choi
"
" MIT License
"
" Permission is hereby granted, free of charge, to any person obtaining
" a copy of this software and associated documentation files (the
" "Software"), to deal in the Software without restriction, including
" without limitation the rights to use, copy, modify, merge, publish,
" distribute, sublicense, and/or sell copies of the Software, and to
" permit persons to whom the Software is furnished to do so, subject to
" the following conditions:
"
" The above copyright notice and this permission notice shall be
" included in all copies or substantial portions of the Software.
"
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
" NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
" LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
" OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
" WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
if
exists
(
'g:loaded_plug'
)
finish
endif
let
g:loaded_plug
=
1
let
s:cpo_save
=
&cpo
set
cpo&
vim