annotate plugin/lawrencium.vim @ 139:065625e1bb31

Split plugin file into multiple extensions.
author Ludovic Chabant <ludovic@chabant.com>
date Mon, 13 Jun 2016 09:32:34 -0700
parents a2d823c82e5f
children 78176bdfe0be
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1 " lawrencium.vim - A Mercurial wrapper
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 " Maintainer: Ludovic Chabant <http://ludovic.chabant.com>
114
facd2506066f Bumped version. I should release this stuff more often.
Ludovic Chabant <ludovic@chabant.com>
parents: 113
diff changeset
3 " Version: 0.4.0
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4
133
add9f0ed0b49 Save/restore `&foldenable` when diffing files.
Ludovic Chabant <ludovic@chabant.com>
parents: 132
diff changeset
5
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 " Globals {{{
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8 if !exists('g:lawrencium_debug')
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9 let g:lawrencium_debug = 0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 endif
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12 if (exists('g:loaded_lawrencium') || &cp) && !g:lawrencium_debug
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 finish
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14 endif
6
1da613c13d81 Better hg-status window.
Ludovic Chabant <ludovic@chabant.com>
parents: 5
diff changeset
15 if (exists('g:loaded_lawrencium') && g:lawrencium_debug)
1da613c13d81 Better hg-status window.
Ludovic Chabant <ludovic@chabant.com>
parents: 5
diff changeset
16 echom "Reloaded Lawrencium."
1da613c13d81 Better hg-status window.
Ludovic Chabant <ludovic@chabant.com>
parents: 5
diff changeset
17 endif
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 let g:loaded_lawrencium = 1
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
19
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20 if !exists('g:lawrencium_hg_executable')
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21 let g:lawrencium_hg_executable = 'hg'
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 endif
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23
43
fc20a265551d Added auto cd'ing into the repo root for `:Hg`.
Ludovic Chabant <ludovic@chabant.com>
parents: 41
diff changeset
24 if !exists('g:lawrencium_auto_cd')
fc20a265551d Added auto cd'ing into the repo root for `:Hg`.
Ludovic Chabant <ludovic@chabant.com>
parents: 41
diff changeset
25 let g:lawrencium_auto_cd = 1
fc20a265551d Added auto cd'ing into the repo root for `:Hg`.
Ludovic Chabant <ludovic@chabant.com>
parents: 41
diff changeset
26 endif
fc20a265551d Added auto cd'ing into the repo root for `:Hg`.
Ludovic Chabant <ludovic@chabant.com>
parents: 41
diff changeset
27
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
28 if !exists('g:lawrencium_trace')
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
29 let g:lawrencium_trace = 0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
30 endif
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
31
31
3a0f7bb6ea64 Hgstatus window improvements and bug fixes:
Ludovic Chabant <ludovic@chabant.com>
parents: 28
diff changeset
32 if !exists('g:lawrencium_define_mappings')
3a0f7bb6ea64 Hgstatus window improvements and bug fixes:
Ludovic Chabant <ludovic@chabant.com>
parents: 28
diff changeset
33 let g:lawrencium_define_mappings = 1
3a0f7bb6ea64 Hgstatus window improvements and bug fixes:
Ludovic Chabant <ludovic@chabant.com>
parents: 28
diff changeset
34 endif
3a0f7bb6ea64 Hgstatus window improvements and bug fixes:
Ludovic Chabant <ludovic@chabant.com>
parents: 28
diff changeset
35
61
ea794e48d4e2 Better way to handle buffer actions:
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
36 if !exists('g:lawrencium_auto_close_buffers')
ea794e48d4e2 Better way to handle buffer actions:
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
37 let g:lawrencium_auto_close_buffers = 1
ea794e48d4e2 Better way to handle buffer actions:
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
38 endif
ea794e48d4e2 Better way to handle buffer actions:
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
39
59
396da6e76952 Added `Hgannotate` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 58
diff changeset
40 if !exists('g:lawrencium_annotate_width_offset')
396da6e76952 Added `Hgannotate` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 58
diff changeset
41 let g:lawrencium_annotate_width_offset = 0
396da6e76952 Added `Hgannotate` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 58
diff changeset
42 endif
396da6e76952 Added `Hgannotate` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 58
diff changeset
43
91
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
44 if !exists('g:lawrencium_status_win_split_above')
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
45 let g:lawrencium_status_win_split_above = 0
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
46 endif
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
47
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
48 if !exists('g:lawrencium_status_win_split_even')
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
49 let g:lawrencium_status_win_split_even = 0
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
50 endif
e21a1819ab27 New command to export a patch and allow existing log command to take options.
Kannan Rajah <krajah@maprtech.com>
parents: 90
diff changeset
51
108
497f7a481599 Added new `Hgrecord` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 107
diff changeset
52 if !exists('g:lawrencium_record_start_in_working_buffer')
497f7a481599 Added new `Hgrecord` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 107
diff changeset
53 let g:lawrencium_record_start_in_working_buffer = 0
497f7a481599 Added new `Hgrecord` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 107
diff changeset
54 endif
497f7a481599 Added new `Hgrecord` command.
Ludovic Chabant <ludovic@chabant.com>
parents: 107
diff changeset
55
139
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
56 if !exists('g:lawrencium_extensions')
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
57 let g:lawrencium_extensions = []
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
58 endif
71
1fbba48019b5 MQ support:
Ludovic Chabant <ludovic@chabant.com>
parents: 70
diff changeset
59
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
60 " }}}
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
61
139
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
62 " Setup {{{
125
bbb19d37c681 Don't use `HGPLAIN` for `:Hg`.
Ludovic Chabant <ludovic@chabant.com>
parents: 124
diff changeset
63
139
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
64 call lawrencium#init()
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
65
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
66 augroup lawrencium_detect
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
67 autocmd!
139
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
68 autocmd BufNewFile,BufReadPost * call lawrencium#setup_buffer_commands()
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
69 autocmd VimEnter * if expand('<amatch>')==''|call lawrencium#setup_buffer_commands()|endif
0
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
70 augroup end
0a5b490dc35d Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
71
67
1cf08e4a7947 Made Lawrencium file easier to extend.
Ludovic Chabant <ludovic@chabant.com>
parents: 66
diff changeset
72 augroup lawrencium_files
139
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
73 autocmd!
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
74 autocmd BufReadCmd lawrencium://**//**//* exe lawrencium#read_lawrencium_file(expand('<amatch>'))
065625e1bb31 Split plugin file into multiple extensions.
Ludovic Chabant <ludovic@chabant.com>
parents: 138
diff changeset
75 autocmd BufWriteCmd lawrencium://**//**//* exe lawrencium#write_lawrencium_file(expand('<amatch>'))
67
1cf08e4a7947 Made Lawrencium file easier to extend.
Ludovic Chabant <ludovic@chabant.com>
parents: 66
diff changeset
76 augroup END
1cf08e4a7947 Made Lawrencium file easier to extend.
Ludovic Chabant <ludovic@chabant.com>
parents: 66
diff changeset
77
1cf08e4a7947 Made Lawrencium file easier to extend.
Ludovic Chabant <ludovic@chabant.com>
parents: 66
diff changeset
78 " }}}
1cf08e4a7947 Made Lawrencium file easier to extend.
Ludovic Chabant <ludovic@chabant.com>
parents: 66
diff changeset
79