Mercurial > hg > mercurial-crew-with-dirclash
comparison contrib/vim/hg-menu.vim @ 2351:075d2ddc4639
contrib: move hg-menu.vim into contrib/vim directory
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Sat, 27 May 2006 20:45:22 -0700 |
parents | contrib/hg-menu.vim@32fde51910c0 |
children | ea7b982b6c08 |
comparison
equal
deleted
inserted
replaced
2350:091d555653a4 | 2351:075d2ddc4639 |
---|---|
1 " vim600: set foldmethod=marker: | |
2 " ============================================================================= | |
3 " Name Of File: hg-menu.vim | |
4 " Description: Interface to Mercurial Version Control. | |
5 " Author: Steve Borho (modified Jeff Lanzarotta's RCS script) | |
6 " Date: Wednesday, October 5, 2005 | |
7 " Version: 0.1.0 | |
8 " Copyright: None. | |
9 " Usage: These command and gui menu displays useful hg functions | |
10 " Configuration: Your hg executable must be in your path. | |
11 " ============================================================================= | |
12 | |
13 " Section: Init {{{1 | |
14 if exists("loaded_hg_menu") | |
15 finish | |
16 endif | |
17 let loaded_hg_menu = 1 | |
18 | |
19 " Section: Menu Options {{{1 | |
20 if has("gui") | |
21 " amenu H&G.Commit\ File<Tab>,ci :!hg commit %<CR>:e!<CR> | |
22 " amenu H&G.Commit\ All<Tab>,call :!hg commit<CR>:e!<CR> | |
23 " amenu H&G.-SEP1- <nul> | |
24 amenu H&G.Add<Tab>\\add :!hg add %<CR><CR> | |
25 amenu H&G.Forget\ Add<Tab>\\fgt :!hg forget %<CR><CR> | |
26 amenu H&G.Show\ Differences<Tab>\\diff :call ShowResults("FileDiff", "hg\ diff")<CR><CR> | |
27 amenu H&G.Revert\ to\ Last\ Version<Tab>\\revert :!hg revert %<CR>:e!<CR> | |
28 amenu H&G.Show\ History<Tab>\\log :call ShowResults("FileLog", "hg\ log")<CR><CR> | |
29 amenu H&G.Annotate<Tab>\\an :call ShowResults("annotate", "hg\ annotate")<CR><CR> | |
30 amenu H&G.-SEP1- <nul> | |
31 amenu H&G.Repo\ Status<Tab>\\stat :call ShowResults("RepoStatus", "hg\ status")<CR><CR> | |
32 amenu H&G.Pull<Tab>\\pull :!hg pull<CR>:e!<CR> | |
33 amenu H&G.Update<Tab>\\upd :!hg update<CR>:e!<CR> | |
34 endif | |
35 | |
36 " Section: Mappings {{{1 | |
37 if(v:version >= 600) | |
38 " The default Leader is \ 'backslash' | |
39 map <Leader>add :!hg add %<CR><CR> | |
40 map <Leader>fgt :!hg forget %<CR><CR> | |
41 map <Leader>diff :call ShowResults("FileDiff", "hg\ diff")<CR><CR> | |
42 map <Leader>revert :!hg revert %<CR>:e!<CR> | |
43 map <Leader>log :call ShowResults("FileLog", "hg\ log")<CR><CR> | |
44 map <Leader>an :call ShowResults("annotate", "hg\ annotate")<CR><CR> | |
45 map <Leader>stat :call ShowResults("RepoStatus", "hg\ status")<CR><CR> | |
46 map <Leader>upd :!hg update<CR>:e!<CR> | |
47 map <Leader>pull :!hg pull<CR>:e!<CR> | |
48 else | |
49 " pre 6.0, the default Leader was a comma | |
50 map ,add :!hg add %<CR><CR> | |
51 map ,fgt :!hg forget %<CR><CR> | |
52 map ,diff :call ShowResults("FileDiff", "hg\ diff")<CR><CR> | |
53 map ,revert :!hg revert<CR>:e!<CR> | |
54 map ,log :call ShowResults("FileLog", "hg\ log")<CR><CR> | |
55 map ,an :call ShowResults("annotate", "hg\ annotate")<CR><CR> | |
56 map ,stat :call ShowResults("RepoStatus", "hg\ status")<CR><CR> | |
57 map ,upd :!hg update<CR>:e!<CR> | |
58 map ,pull :!hg pull<CR>:e!<CR> | |
59 endif | |
60 | |
61 " Section: Functions {{{1 | |
62 " Show the log results of the current file with a revision control system. | |
63 function! ShowResults(bufferName, cmdName) | |
64 " Modify the shortmess option: | |
65 " A don't give the "ATTENTION" message when an existing swap file is | |
66 " found. | |
67 set shortmess+=A | |
68 | |
69 " Get the name of the current buffer. | |
70 let currentBuffer = bufname("%") | |
71 | |
72 " If a buffer with the name rlog exists, delete it. | |
73 if bufexists(a:bufferName) | |
74 execute 'bd! ' a:bufferName | |
75 endif | |
76 | |
77 " Create a new buffer. | |
78 execute 'new ' a:bufferName | |
79 | |
80 " Execute the command. | |
81 execute 'r!' a:cmdName ' ' currentBuffer | |
82 | |
83 " Make is so that the file can't be edited. | |
84 setlocal nomodified | |
85 setlocal nomodifiable | |
86 setlocal readonly | |
87 | |
88 " Go to the beginning of the buffer. | |
89 execute "normal 1G" | |
90 | |
91 " Restore the shortmess option. | |
92 set shortmess-=A | |
93 endfunction |