Mercurial > vim-lawrencium
annotate autoload/lawrencium/addremove.vim @ 148:fb65725f2872
Use winsaveview() and winrestview() to save a few lines of code.
author | Shane Harper <shane@shaneharper.net> |
---|---|
date | Sat, 11 Jan 2020 14:29:47 +1100 |
parents | 065625e1bb31 |
children |
rev | line source |
---|---|
139
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
1 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
2 function! lawrencium#addremove#init() abort |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
3 call lawrencium#add_command("-bang -nargs=* -complete=customlist,lawrencium#list_repo_files Hgremove :call lawrencium#addremove#HgRemove(<bang>0, <f-args>)") |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
4 endfunction |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
5 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
6 function! lawrencium#addremove#HgRemove(bang, ...) abort |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
7 " Get the files to remove. |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
8 let l:filenames = a:000 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
9 if a:0 == 0 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
10 let l:filenames = [ expand('%:p') ] |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
11 endif |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
12 if a:bang |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
13 call insert(l:filenames, '--force', 0) |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
14 endif |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
15 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
16 " Get the repo and run the command. |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
17 let l:repo = lawrencium#hg_repo() |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
18 call l:repo.RunCommand('rm', l:filenames) |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
19 |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
20 " Re-edit the file to see the change. |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
21 edit |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
22 endfunction |
065625e1bb31
Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
23 |