mirror of
https://github.com/junegunn/vim-plug.git
synced 2025-12-08 18:04:46 +08:00
Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2f8f04cf79 | ||
|
|
3264b81e7a | ||
|
|
64b9f9e3c3 | ||
|
|
6154433e22 | ||
|
|
eee20c7e79 | ||
|
|
ade078e362 | ||
|
|
6dd068e8d8 | ||
|
|
e07c18608f | ||
|
|
ca0ae0a8b1 | ||
|
|
034e844590 | ||
|
|
ddce935b16 | ||
|
|
e531dbec2a | ||
|
|
b6739f358b | ||
|
|
f308ef394e | ||
|
|
d94d234548 | ||
|
|
d6cb65753f | ||
|
|
87a160a1c3 | ||
|
|
8fdabfba0b | ||
|
|
be55ec46b5 | ||
|
|
93ab590978 |
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
github: junegunn
|
||||||
9
.github/ISSUE_TEMPLATE.md
vendored
9
.github/ISSUE_TEMPLATE.md
vendored
@@ -10,7 +10,12 @@ Explain the problem here ...
|
|||||||
|
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
<!-- Put the contents of `:version` below -->
|
<!-- Paste your Plug block (from `call plug#begin()` to `call plug#end()`) -->
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
<!-- Paste the contents of `:version` below -->
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -24,7 +29,7 @@ Explain the problem here ...
|
|||||||
- OS:
|
- OS:
|
||||||
- [ ] All/Other
|
- [ ] All/Other
|
||||||
- [ ] Linux
|
- [ ] Linux
|
||||||
- [ ] OS X
|
- [ ] macOS
|
||||||
- [ ] Windows
|
- [ ] Windows
|
||||||
- Vim:
|
- Vim:
|
||||||
- [ ] Terminal Vim
|
- [ ] Terminal Vim
|
||||||
|
|||||||
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
doc/tags
|
||||||
96
README.md
96
README.md
@@ -1,4 +1,22 @@
|
|||||||
<img src="https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.png" height="75" alt="vim-plug">[](https://travis-ci.org/junegunn/vim-plug)
|
<div align="center">
|
||||||
|
<sup>Special thanks to:</sup>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<a href="https://warp.dev/?utm_source=github&utm_medium=referral&utm_campaign=vimplug_20240209">
|
||||||
|
<div>
|
||||||
|
<img src="https://raw.githubusercontent.com/junegunn/i/master/warp.png" width="300" alt="Warp">
|
||||||
|
</div>
|
||||||
|
<b>Warp is a modern, Rust-based terminal with AI built in so you and your team can build great software, faster.</b>
|
||||||
|
<div>
|
||||||
|
<sup>Visit warp.dev to learn more.</sup>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<img src="https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.png" height="75" alt="vim-plug">[](https://github.com/junegunn/vim-plug/actions/workflows/test.yml?query=branch%3Amaster)
|
||||||
===
|
===
|
||||||
|
|
||||||
A minimalist Vim plugin manager.
|
A minimalist Vim plugin manager.
|
||||||
@@ -117,7 +135,7 @@ Plug 'https://github.com/junegunn/vim-github-dashboard.git'
|
|||||||
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
||||||
|
|
||||||
" On-demand loading
|
" On-demand loading
|
||||||
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }
|
||||||
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
||||||
|
|
||||||
" Using a non-default branch
|
" Using a non-default branch
|
||||||
@@ -136,11 +154,62 @@ Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
|
|||||||
Plug '~/my-prototype-plugin'
|
Plug '~/my-prototype-plugin'
|
||||||
|
|
||||||
" Initialize plugin system
|
" Initialize plugin system
|
||||||
|
" - Automatically executes `filetype plugin indent on` and `syntax enable`.
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
" You can revert the settings after the call like so:
|
||||||
|
" filetype indent off " Disable file-type-specific indentation
|
||||||
|
" syntax off " Disable syntax highlighting
|
||||||
```
|
```
|
||||||
|
|
||||||
Reload .vimrc and `:PlugInstall` to install plugins.
|
Reload .vimrc and `:PlugInstall` to install plugins.
|
||||||
|
|
||||||
|
#### Example (Lua configuration for Neovim)
|
||||||
|
|
||||||
|
In Neovim, you can write your configuration in a Lua script file named
|
||||||
|
`init.lua`. The following code is the Lua script equivalent to the VimScript
|
||||||
|
example above.
|
||||||
|
|
||||||
|
```lua
|
||||||
|
local vim = vim
|
||||||
|
local Plug = vim.fn['plug#']
|
||||||
|
|
||||||
|
vim.call('plug#begin')
|
||||||
|
|
||||||
|
-- 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')
|
||||||
|
|
||||||
|
-- Multiple Plug commands can be written in a single line using ; separators
|
||||||
|
Plug('SirVer/ultisnips'); Plug('honza/vim-snippets')
|
||||||
|
|
||||||
|
-- On-demand loading
|
||||||
|
Plug('preservim/nerdtree', { ['on'] = 'NERDTreeToggle' })
|
||||||
|
Plug('tpope/vim-fireplace', { ['for'] = 'clojure' })
|
||||||
|
|
||||||
|
-- Using a non-default branch
|
||||||
|
Plug('rdnetto/YCM-Generator', { ['branch'] = 'stable' })
|
||||||
|
|
||||||
|
-- Using a tagged release; wildcard allowed (requires git 1.9.2 or above)
|
||||||
|
Plug('fatih/vim-go', { ['tag'] = '*' })
|
||||||
|
|
||||||
|
-- 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')
|
||||||
|
|
||||||
|
vim.call('plug#end')
|
||||||
|
```
|
||||||
|
|
||||||
|
More examples can be found in:
|
||||||
|
|
||||||
|
* https://gitlab.com/sultanahamer/dotfiles/-/blob/master/nvim/lua/plugins.lua?ref_type=heads
|
||||||
|
|
||||||
### Commands
|
### Commands
|
||||||
|
|
||||||
| Command | Description |
|
| Command | Description |
|
||||||
@@ -203,7 +272,7 @@ call plug#end()
|
|||||||
|
|
||||||
```vim
|
```vim
|
||||||
" NERD tree will be loaded on the first invocation of NERDTreeToggle command
|
" NERD tree will be loaded on the first invocation of NERDTreeToggle command
|
||||||
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }
|
||||||
|
|
||||||
" Multiple commands
|
" Multiple commands
|
||||||
Plug 'junegunn/vim-github-dashboard', { 'on': ['GHDashboard', 'GHActivity'] }
|
Plug 'junegunn/vim-github-dashboard', { 'on': ['GHDashboard', 'GHActivity'] }
|
||||||
@@ -242,8 +311,14 @@ If the value starts with `:`, it will be recognized as a Vim command.
|
|||||||
Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' }
|
Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' }
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To call a Vim function, you can pass a lambda expression like so:
|
||||||
|
|
||||||
|
```vim
|
||||||
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
||||||
|
```
|
||||||
|
|
||||||
If you need more control, you can pass a reference to a Vim function that
|
If you need more control, you can pass a reference to a Vim function that
|
||||||
takes a single argument.
|
takes a dictionary argument.
|
||||||
|
|
||||||
```vim
|
```vim
|
||||||
function! BuildYCM(info)
|
function! BuildYCM(info)
|
||||||
@@ -259,14 +334,13 @@ endfunction
|
|||||||
Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') }
|
Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') }
|
||||||
```
|
```
|
||||||
|
|
||||||
Both forms of post-update hook are executed inside the directory of the plugin
|
A post-update hook is executed inside the directory of the plugin and only run
|
||||||
and only run when the repository has changed, but you can force it to run
|
when the repository has changed, but you can force it to run unconditionally
|
||||||
unconditionally with the bang-versions of the commands: `PlugInstall!` and
|
with the bang-versions of the commands: `PlugInstall!` and `PlugUpdate!`.
|
||||||
`PlugUpdate!`.
|
|
||||||
|
|
||||||
Make sure to escape BARs and double-quotes when you write the `do` option inline
|
Make sure to escape BARs and double-quotes when you write the `do` option
|
||||||
as they are mistakenly recognized as command separator or the start of the
|
inline as they are mistakenly recognized as command separator or the start of
|
||||||
trailing comment.
|
the trailing comment.
|
||||||
|
|
||||||
```vim
|
```vim
|
||||||
Plug 'junegunn/fzf', { 'do': 'yes \| ./install' }
|
Plug 'junegunn/fzf', { 'do': 'yes \| ./install' }
|
||||||
|
|||||||
25
doc/plug.txt
25
doc/plug.txt
@@ -1,4 +1,4 @@
|
|||||||
plug.txt plug Last change: January 3 2022
|
plug.txt plug Last change: February 23 2024
|
||||||
PLUG - TABLE OF CONTENTS *plug* *plug-toc*
|
PLUG - TABLE OF CONTENTS *plug* *plug-toc*
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@@ -153,7 +153,7 @@ Example~
|
|||||||
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
||||||
|
|
||||||
" On-demand loading
|
" On-demand loading
|
||||||
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }
|
||||||
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
||||||
|
|
||||||
" Using a non-default branch
|
" Using a non-default branch
|
||||||
@@ -172,7 +172,11 @@ Example~
|
|||||||
Plug '~/my-prototype-plugin'
|
Plug '~/my-prototype-plugin'
|
||||||
|
|
||||||
" Initialize plugin system
|
" Initialize plugin system
|
||||||
|
" - Automatically executes `filetype plugin indent on` and `syntax enable`.
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
" You can revert the settings after the call like so:
|
||||||
|
" filetype indent off " Disable file-type-specific indentation
|
||||||
|
" syntax off " Disable syntax highlighting
|
||||||
<
|
<
|
||||||
*:PlugInstall*
|
*:PlugInstall*
|
||||||
|
|
||||||
@@ -260,7 +264,7 @@ Reload .vimrc and `:PlugInstall` to install plugins.
|
|||||||
*plug-on-demand-loading-of-plugins*
|
*plug-on-demand-loading-of-plugins*
|
||||||
>
|
>
|
||||||
" NERD tree will be loaded on the first invocation of NERDTreeToggle command
|
" NERD tree will be loaded on the first invocation of NERDTreeToggle command
|
||||||
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }
|
||||||
|
|
||||||
" Multiple commands
|
" Multiple commands
|
||||||
Plug 'junegunn/vim-github-dashboard', { 'on': ['GHDashboard', 'GHActivity'] }
|
Plug 'junegunn/vim-github-dashboard', { 'on': ['GHDashboard', 'GHActivity'] }
|
||||||
@@ -293,13 +297,15 @@ In that case, use the `do` option to describe the task to be performed.
|
|||||||
Plug 'ycm-core/YouCompleteMe', { 'do': './install.py' }
|
Plug 'ycm-core/YouCompleteMe', { 'do': './install.py' }
|
||||||
<
|
<
|
||||||
If the value starts with `:`, it will be recognized as a Vim command.
|
If the value starts with `:`, it will be recognized as a Vim command.
|
||||||
|
|
||||||
*:GoInstallBinaries*
|
|
||||||
>
|
>
|
||||||
Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' }
|
Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' }
|
||||||
<
|
<
|
||||||
|
To call a Vim function, you can pass a lambda expression like so:
|
||||||
|
>
|
||||||
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
||||||
|
<
|
||||||
If you need more control, you can pass a reference to a Vim function that
|
If you need more control, you can pass a reference to a Vim function that
|
||||||
takes a single argument.
|
takes a dictionary argument.
|
||||||
>
|
>
|
||||||
function! BuildYCM(info)
|
function! BuildYCM(info)
|
||||||
" info is a dictionary with 3 fields
|
" info is a dictionary with 3 fields
|
||||||
@@ -313,10 +319,9 @@ takes a single argument.
|
|||||||
|
|
||||||
Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') }
|
Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') }
|
||||||
<
|
<
|
||||||
Both forms of post-update hook are executed inside the directory of the plugin
|
A post-update hook is executed inside the directory of the plugin and only run
|
||||||
and only run when the repository has changed, but you can force it to run
|
when the repository has changed, but you can force it to run unconditionally
|
||||||
unconditionally with the bang-versions of the commands: `PlugInstall!` and
|
with the bang-versions of the commands: `PlugInstall!` and `PlugUpdate!`.
|
||||||
`PlugUpdate!`.
|
|
||||||
|
|
||||||
Make sure to escape BARs and double-quotes when you write the `do` option
|
Make sure to escape BARs and double-quotes when you write the `do` option
|
||||||
inline as they are mistakenly recognized as command separator or the start of
|
inline as they are mistakenly recognized as command separator or the start of
|
||||||
|
|||||||
42
plug.vim
42
plug.vim
@@ -22,7 +22,7 @@
|
|||||||
" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
|
||||||
"
|
"
|
||||||
" " On-demand loading
|
" " On-demand loading
|
||||||
" Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
" Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }
|
||||||
" Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
" Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
||||||
"
|
"
|
||||||
" " Using a non-default branch
|
" " Using a non-default branch
|
||||||
@@ -352,7 +352,7 @@ function! plug#end()
|
|||||||
endif
|
endif
|
||||||
let lod = { 'ft': {}, 'map': {}, 'cmd': {} }
|
let lod = { 'ft': {}, 'map': {}, 'cmd': {} }
|
||||||
|
|
||||||
if exists('g:did_load_filetypes')
|
if get(g:, 'did_load_filetypes', 0)
|
||||||
filetype off
|
filetype off
|
||||||
endif
|
endif
|
||||||
for name in g:plugs_order
|
for name in g:plugs_order
|
||||||
@@ -391,6 +391,9 @@ function! plug#end()
|
|||||||
if !empty(types)
|
if !empty(types)
|
||||||
augroup filetypedetect
|
augroup filetypedetect
|
||||||
call s:source(s:rtp(plug), 'ftdetect/**/*.vim', 'after/ftdetect/**/*.vim')
|
call s:source(s:rtp(plug), 'ftdetect/**/*.vim', 'after/ftdetect/**/*.vim')
|
||||||
|
if has('nvim-0.5.0')
|
||||||
|
call s:source(s:rtp(plug), 'ftdetect/**/*.lua', 'after/ftdetect/**/*.lua')
|
||||||
|
endif
|
||||||
augroup END
|
augroup END
|
||||||
endif
|
endif
|
||||||
for type in types
|
for type in types
|
||||||
@@ -438,6 +441,9 @@ endfunction
|
|||||||
|
|
||||||
function! s:load_plugin(spec)
|
function! s:load_plugin(spec)
|
||||||
call s:source(s:rtp(a:spec), 'plugin/**/*.vim', 'after/plugin/**/*.vim')
|
call s:source(s:rtp(a:spec), 'plugin/**/*.vim', 'after/plugin/**/*.vim')
|
||||||
|
if has('nvim-0.5.0')
|
||||||
|
call s:source(s:rtp(a:spec), 'plugin/**/*.lua', 'after/plugin/**/*.lua')
|
||||||
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:reload_plugins()
|
function! s:reload_plugins()
|
||||||
@@ -655,6 +661,9 @@ function! s:lod(names, types, ...)
|
|||||||
let rtp = s:rtp(g:plugs[name])
|
let rtp = s:rtp(g:plugs[name])
|
||||||
for dir in a:types
|
for dir in a:types
|
||||||
call s:source(rtp, dir.'/**/*.vim')
|
call s:source(rtp, dir.'/**/*.vim')
|
||||||
|
if has('nvim-0.5.0') " see neovim#14686
|
||||||
|
call s:source(rtp, dir.'/**/*.lua')
|
||||||
|
endif
|
||||||
endfor
|
endfor
|
||||||
if a:0
|
if a:0
|
||||||
if !s:source(rtp, a:1) && !empty(s:glob(rtp, a:2))
|
if !s:source(rtp, a:1) && !empty(s:glob(rtp, a:2))
|
||||||
@@ -1031,6 +1040,11 @@ function! s:is_updated(dir)
|
|||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:do(pull, force, todo)
|
function! s:do(pull, force, todo)
|
||||||
|
if has('nvim')
|
||||||
|
" Reset &rtp to invalidate Neovim cache of loaded Lua modules
|
||||||
|
" See https://github.com/junegunn/vim-plug/pull/1157#issuecomment-1809226110
|
||||||
|
let &rtp = &rtp
|
||||||
|
endif
|
||||||
for [name, spec] in items(a:todo)
|
for [name, spec] in items(a:todo)
|
||||||
if !isdirectory(spec.dir)
|
if !isdirectory(spec.dir)
|
||||||
continue
|
continue
|
||||||
@@ -2621,26 +2635,34 @@ function! s:preview_commit()
|
|||||||
|
|
||||||
let sha = matchstr(getline('.'), '^ \X*\zs[0-9a-f]\{7,9}')
|
let sha = matchstr(getline('.'), '^ \X*\zs[0-9a-f]\{7,9}')
|
||||||
if empty(sha)
|
if empty(sha)
|
||||||
return
|
let name = matchstr(getline('.'), '^- \zs[^:]*\ze:$')
|
||||||
|
if empty(name)
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
let title = 'HEAD@{1}..'
|
||||||
|
let command = 'git diff --no-color HEAD@{1}'
|
||||||
|
else
|
||||||
|
let title = sha
|
||||||
|
let command = 'git show --no-color --pretty=medium '.sha
|
||||||
|
let name = s:find_name(line('.'))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let name = s:find_name(line('.'))
|
|
||||||
if empty(name) || !has_key(g:plugs, name) || !isdirectory(g:plugs[name].dir)
|
if empty(name) || !has_key(g:plugs, name) || !isdirectory(g:plugs[name].dir)
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if exists('g:plug_pwindow') && !s:is_preview_window_open()
|
if exists('g:plug_pwindow') && !s:is_preview_window_open()
|
||||||
execute g:plug_pwindow
|
execute g:plug_pwindow
|
||||||
execute 'e' sha
|
execute 'e' title
|
||||||
else
|
else
|
||||||
execute 'pedit' sha
|
execute 'pedit' title
|
||||||
wincmd P
|
wincmd P
|
||||||
endif
|
endif
|
||||||
setlocal previewwindow filetype=git buftype=nofile nobuflisted modifiable
|
setlocal previewwindow filetype=git buftype=nofile bufhidden=wipe nobuflisted modifiable
|
||||||
let batchfile = ''
|
let batchfile = ''
|
||||||
try
|
try
|
||||||
let [sh, shellcmdflag, shrd] = s:chsh(1)
|
let [sh, shellcmdflag, shrd] = s:chsh(1)
|
||||||
let cmd = 'cd '.plug#shellescape(g:plugs[name].dir).' && git show --no-color --pretty=medium '.sha
|
let cmd = 'cd '.plug#shellescape(g:plugs[name].dir).' && '.command
|
||||||
if s:is_win
|
if s:is_win
|
||||||
let [batchfile, cmd] = s:batchfile(cmd)
|
let [batchfile, cmd] = s:batchfile(cmd)
|
||||||
endif
|
endif
|
||||||
@@ -2766,9 +2788,9 @@ function! s:snapshot(force, ...) abort
|
|||||||
1
|
1
|
||||||
let anchor = line('$') - 3
|
let anchor = line('$') - 3
|
||||||
let names = sort(keys(filter(copy(g:plugs),
|
let names = sort(keys(filter(copy(g:plugs),
|
||||||
\'has_key(v:val, "uri") && !has_key(v:val, "commit") && isdirectory(v:val.dir)')))
|
\'has_key(v:val, "uri") && isdirectory(v:val.dir)')))
|
||||||
for name in reverse(names)
|
for name in reverse(names)
|
||||||
let sha = s:git_revision(g:plugs[name].dir)
|
let sha = has_key(g:plugs[name], 'commit') ? g:plugs[name].commit : s:git_revision(g:plugs[name].dir)
|
||||||
if !empty(sha)
|
if !empty(sha)
|
||||||
call append(anchor, printf("silent! let g:plugs['%s'].commit = '%s'", name, sha))
|
call append(anchor, printf("silent! let g:plugs['%s'].commit = '%s'", name, sha))
|
||||||
redraw
|
redraw
|
||||||
|
|||||||
4
test/run
4
test/run
@@ -62,7 +62,7 @@ EOF
|
|||||||
|
|
||||||
gitinit() (
|
gitinit() (
|
||||||
cd "$PLUG_FIXTURES/$1"
|
cd "$PLUG_FIXTURES/$1"
|
||||||
git init
|
git init -b master
|
||||||
git commit -m 'commit' --allow-empty
|
git commit -m 'commit' --allow-empty
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -98,7 +98,7 @@ DOC
|
|||||||
|
|
||||||
rm -rf $TEMP/new-branch
|
rm -rf $TEMP/new-branch
|
||||||
cd $TEMP
|
cd $TEMP
|
||||||
git init new-branch
|
git init new-branch -b master
|
||||||
cd new-branch
|
cd new-branch
|
||||||
mkdir plugin
|
mkdir plugin
|
||||||
echo 'let g:foo = 1' > plugin/foo.vim
|
echo 'let g:foo = 1' > plugin/foo.vim
|
||||||
|
|||||||
@@ -393,6 +393,14 @@ Execute (New commits on remote, PlugUpdate, then PlugDiff):
|
|||||||
let lnum = line('.')
|
let lnum = line('.')
|
||||||
AssertEqual 3, col('.')
|
AssertEqual 3, col('.')
|
||||||
|
|
||||||
|
" Open full diff (empty)
|
||||||
|
execute "normal \<cr>"
|
||||||
|
wincmd P
|
||||||
|
AssertEqual 1, &previewwindow
|
||||||
|
AssertEqual 'git', &filetype
|
||||||
|
AssertEqual [''], getline(1, '$')
|
||||||
|
pclose
|
||||||
|
|
||||||
" Open commit preview
|
" Open commit preview
|
||||||
execute "normal j\<cr>"
|
execute "normal j\<cr>"
|
||||||
wincmd P
|
wincmd P
|
||||||
@@ -1620,10 +1628,12 @@ Execute (Commit hash support):
|
|||||||
Assert empty(mapcheck('X'))
|
Assert empty(mapcheck('X'))
|
||||||
Assert !empty(mapcheck("\<cr>"))
|
Assert !empty(mapcheck("\<cr>"))
|
||||||
|
|
||||||
" Nor in PlugSnapshot output
|
" The exact hash values in PlugSnapshot output
|
||||||
PlugSnapshot
|
PlugSnapshot
|
||||||
Log getline(1, '$')
|
Log getline(1, '$')
|
||||||
AssertEqual 8, line('$')
|
AssertEqual "silent! let g:plugs['goyo.vim'].commit = 'ffffffff'", getline(6)
|
||||||
|
AssertEqual "silent! let g:plugs['vim-emoji'].commit = '9db7fcfee0d90dafdbcb7a32090c0a9085eb054a'", getline(7)
|
||||||
|
AssertEqual 10, line('$')
|
||||||
q
|
q
|
||||||
|
|
||||||
Execute (Commit hash support - cleared):
|
Execute (Commit hash support - cleared):
|
||||||
|
|||||||
Reference in New Issue
Block a user