Commit Graph

257 Commits

Author SHA1 Message Date
Jan Larres
a5220adc9a Better fileinfo removal logging 2014-04-04 01:08:12 +13:00
Jan Larres
fabae6a11d Log fileinfo removal 2014-04-04 01:01:53 +13:00
Jan Larres
2bc6e96ae4 Rename debug log function 2014-04-04 00:39:26 +13:00
Jan Larres
8a139e0576 Better timestamps 2014-04-04 00:31:27 +13:00
Jan Larres
be46ee5988 Don't remove fileinfo on BufUnload
If 'hidden' is not set then BufUnload is called every time a buffer
would get hidden, removing the fileinfo. This causes unnecessary ctags
processing of files.
2014-04-01 00:53:18 +13:00
Jan Larres
b2c5f0b928 Keep cursor on current tag when sorting, closes #200 2014-03-22 01:09:30 +13:00
Jan Larres
fdceb4ea71 Add ? as help key, closes #194 2014-02-28 13:51:48 +13:00
Jan Larres
3fdefbaa47 Add documentation for hide_nonpublic
Also indicate in the statusline if non-public tags are currently hidden.
2014-02-10 17:10:43 +13:00
Jan Larres
368d37ed45 Allow hiding non-public tags, closes #186 2014-02-05 18:08:04 +13:00
Jan Larres
13d4cfcc2c Remove some duplication 2014-02-05 15:30:19 +13:00
Jan Larres
42ce2919a3 Allow configuring zoom, closes #189 2014-02-04 18:00:27 +13:00
Jan Larres
836a39af8f Jump to correct window even after opening preview window 2014-02-01 21:17:00 +13:00
Jan Larres
0ead3332a9 Extract GetFileWinnr() function 2014-02-01 20:49:11 +13:00
Jan Larres
e872e67641 Version 2.6.1 2014-01-23 23:17:00 +13:00
Jan Larres
b610fb2f5d Restore previous window, closes #190 2014-01-21 15:59:51 +13:00
Jan Larres
ace45adc51 Don't let ctags sort tags, closes #187
Ctags seems to call an external 'sort' which can apparently fail in some
cases with Cygwin. Since we sort the tags ourselves anyway just disable
it.
2013-12-25 19:07:31 +13:00
Jan Larres
88d7464079 Close prevwin when jumping to tag, closes #184 2013-12-19 11:54:59 +13:00
Jan Larres
dbc05b24a3 Fix getCurrent() call for kind headers, closes #185 2013-12-09 16:30:38 +13:00
Jan Larres
6d8770f949 Version 2.6 2013-12-06 00:27:08 +13:00
Jan Larres
87bbb46e95 Open previewwin relative to Tagbar win 2013-11-30 19:28:18 +13:00
Jan Larres
b4a5800f72 Always centre preview window 2013-11-30 03:31:31 +13:00
Jan Larres
ba3693f977 Properly open fold when jumping to tag 2013-11-30 03:18:39 +13:00
Jan Larres
528bdc6b8d Improve preview window handling
Use psearch instead of pedit since pedit essentially reloads the file
and creates an empty undo entry. This also makes it faster.
2013-11-29 18:43:00 +13:00
Jan Larres
2dcd5260b6 Equalize windows after shrinking if necessary, closes #182 2013-11-24 01:21:44 +13:00
Jan Larres
915b11bd1c Close preview window when closing Tagbar 2013-11-22 16:43:06 +13:00
Jan Larres
e090fe73d1 Automatically open folds in preview window 2013-11-22 16:36:54 +13:00
Jan Larres
574376d165 Add Cython/Pyrex support, closes #181 2013-11-22 14:55:50 +13:00
Jan Larres
66c56b11a7 Clean up window switching 2013-11-15 16:21:12 +13:00
Jan Larres
c57dd9f7a4 Make sure QuitIfOnlyWindow also works with prevwin open 2013-11-13 16:53:52 +13:00
Jan Larres
f3250b2dd1 Make preview window position configurable 2013-11-13 16:29:42 +13:00
Jan Larres
0377f19d74 Add auto-previewing mode, closes #161 2013-11-11 18:23:22 +13:00
Jan Larres
2d650b96cf Ignore preview window when quitting 2013-11-11 17:39:48 +13:00
Jan Larres
290b71e2b7 Skip preview window when jumping to tag 2013-11-11 17:12:40 +13:00
Jan Larres
78a7eeecf3 Add key to show tag in preview window 2013-11-11 00:53:45 +13:00
Jan Larres
207b8520c2 Allow ignoring specific files, closes #169 2013-11-08 17:27:34 +13:00
Jan Larres
1a2c4ec958 Rework pause functionality, closes #177
The current pause functionality simply removes all the autocommands to
stop updating Tagbar. This has the problem that at the moment the
statusline functions immediately restore the commands so pausing doesn't
work, but even if that didn't happen it would stop the statusline
functionality from working which is not desirable. The solution is to
have a reference to the paused file which will get used by the Tagbar
window, but not the statusline functions.
2013-11-06 22:33:27 +13:00
Jan Larres
0fd09344c7 Don't update during window opening, closes #179
Plugins like MiniBufExplorer can trigger an update before window
initialization has finished, leading to errors. Skip processing until
that is done.
2013-11-06 17:06:39 +13:00
Jan Larres
abffaba655 Fix stupid 'if' syntax mistake 2013-11-06 14:11:16 +13:00
Jan Larres
15f9ad6e88 Check for existence of qf var before deleting
Otherwise explicit calling of QuickFixCmdPost autocmds without a
preceding QuickFixCmdPre will generate an error.
2013-11-06 13:27:16 +13:00
Jan Larres
b60d08c468 Add comment why BufReadPost is needed 2013-11-05 09:16:58 +13:00
Jan Larres
e5408f740f Don't process quickfix-loaded files, closes #176
Certain quickfix-commands like vimgrep have to load all searched files
into Vim and will execute the BufReadPost autocmd for all of them. Since
Tagbar doesn't need to generate tags for those files pause processing
while the command is running.

There doesn't seem to be a better way to find out whether vimgrep is
running than to set a temporary variable with the QuickFixCmdPre/Post
autocmds, see also
https://groups.google.com/forum/#!topic/vim_use/sUj5MFGmwD8
2013-11-04 22:51:38 +13:00
Jan Larres
85c198ba57 Always properly shrink window, closes #172
Closing Tagbar with :q instead of the provided commands and mappings
would bypass the Vim application window shrinking logic. Install an
autocommand that checks for this situation.
2013-11-04 22:30:17 +13:00
Jan Larres
2e2ba2eab2 Use standard highlight group if syntax is disabled
This prevents an error message about a non-existent highlighting group
when trying to match the tag pattern.
2013-11-02 21:51:15 +13:00
Jan Larres
3c37ddcc14 Handle invalid ctags line numbers, closes #119 2013-09-19 12:36:41 +12:00
Jan Larres
5566cb34d5 Don't force processing on BufReadPost, closes #170
This prevents files being processed twice unnecessarily, once for
FileType and once for BufReadPost. All cases where BufReadPost is called
without FileType should be covered by the checks in AutoUpdate().
2013-09-18 17:44:52 +12:00
Jan Larres
4801c897f8 Try expanding a terminal if configured 2013-08-30 16:57:27 +12:00
Jan Larres
24efd12f50 Add option to show line numbers, closes #146 2013-08-24 21:45:10 +12:00
Jan Larres
56cd34830d Remove deprecated GenerateStatusline() function 2013-08-24 20:50:27 +12:00
Jan Larres
0b14e28719 Merge branch 'stltest' 2013-08-24 19:17:13 +12:00
Jan Larres
225fcaa3ce Log ctags version 2013-08-24 18:38:04 +12:00
Jan Larres
dab8d99fb8 Print message if no tags have been found in file 2013-08-24 17:57:33 +12:00
Jan Larres
a566f7141f Echo message if ctags output is empty 2013-08-24 17:40:12 +12:00
Jan Larres
7ef2dd0ef1 Log error messages with ctags output 2013-08-23 18:02:24 +12:00
Jan Larres
84d65042fa Remove commented out statusline calls 2013-08-22 19:06:28 +12:00
Jan Larres
c37d783d4f Make keybindings configurable, closes #159 2013-08-22 17:38:31 +12:00
Jan Larres
57acb383b6 Statusline tweaks 2013-08-21 18:28:40 +12:00
Jan Larres
495e5fcb08 Allow customizing the statusline 2013-08-21 17:50:03 +12:00
Jan Larres
746771801c Log exact shell command for debug 2013-08-21 02:44:31 +12:00
Jan Larres
a217435f50 Remove autocmds when not needed, closes #153
When the Tagbar window gets closed and the statusline functionality is
not in use, remove the autocommands to prevent unnecessary ctags calls.
2013-07-30 11:38:46 +12:00
Jan Larres
5732ce9bd6 Simplify sort method 2013-07-17 16:50:02 +12:00
Jan Larres
f36e0d3d39 Always correctly show sort order 2013-07-17 16:49:22 +12:00
Jan Larres
82a932406f Make autoshowtag more flexible, closes #152 2013-06-25 16:33:36 +12:00
Jan Larres
2ebd2a1392 Escape quotes in path filters, closes #150 2013-06-03 17:38:02 +12:00
Jan Larres
ca02374f40 Merge pull request #147 from zhaocai/master
Export tagbar#currentfile() function
2013-06-02 21:56:10 -07:00
Jan Larres
a93fb868d8 Restore windows properly after zooming 2013-05-20 15:18:57 +12:00
Zhao Cai
070a75cb04 Export tagbar#currentfile() function 2013-05-15 08:00:08 -04:00
Jan Larres
24915dbe24 Handle non-existent project autocmds properly, closes #145 2013-05-06 18:49:19 +12:00
Jan Larres
f5435678fb Expand deffile path 2013-04-30 10:12:02 +12:00
Jan Larres
3ecdb5028d Try to distinguish between equal alternative tags, closes #139 2013-04-29 16:49:17 +12:00
Jan Larres
d0d307c9bd Convert remaining call to CreateTypeKinddict(), closes #142 2013-04-26 19:33:00 +12:00
Jan Larres
e6e084e8b0 Re-enable BufReadPost event 2013-04-24 12:10:33 +12:00
Jan Larres
7c0d8675b5 Make createKinddict() an instance method 2013-04-24 10:45:46 +12:00
Jan Larres
acca348959 Allow project-specific type config 2013-04-24 10:45:46 +12:00
Jan Larres
1c605bd958 Merge pull request #135 from darcyparker/issue133_ctagsbin
Improved `s:EscapeCtagsCmd()` for windows `cmd.exe` to eliminate issues when `a:ctags_bin` calls a batch file that uses `%~dp0`.
2013-04-23 04:19:09 -07:00
Jan Larres
b6f47e4020 Simplify getusertypes() function 2013-04-05 11:57:57 +13:00
Jan Larres
ec0eb883dc Recognize racket as scheme, closes #134 2013-04-04 19:06:42 +13:00
Darcy Parker
d0df97040b Improved s:EscapeCtagsCmd() for windows cmd.exe to eliminate issues when
a:ctags_bin calls a batch file that uses %~dp0. Changes include:
- Enable ctags_args to be a list
- Changed default ctags_args to be a list to improve robustness of
  s:EscapeCtagsCmd()
- Do not escape 0th argument of ctags_cmd for cmd.exe when it is not
  necessary because otherwise batch files may not return expected value
  for %~dp0
- Updated tagbar documentation about string and list value types for
  ctags_args
See https://github.com/majutsushi/tagbar/issues/133
2013-04-02 17:57:30 -04:00
Jan Larres
dec1f840fb Version 2.5 2013-03-25 22:27:12 +13:00
Jan Larres
11f8479593 Return to the correct window after closing Tagbar, closes #132
Since the window numbers can change when opening and closing windows
Tagbar so far has used bufwinnr() to find the right window to jump back
to. However, this fails if the same file is being displayed in more than
one window. Save a window-local variable instead to detect the correct
window to jump back to.
2013-03-24 14:16:56 +13:00
Jan Larres
77a318b10e Don't disrupt the statusline if ctags fails 2013-03-23 19:46:38 +13:00
Jan Larres
80dfccf09d Don't restore window position if moved manually 2013-03-18 19:09:12 +13:00
Jan Larres
be00efa703 Save and restore window position when expanding, closes #129 2013-03-18 18:51:54 +13:00
Jan Larres
cc222f5d8c Run ctags even if previous run produced erros, closes #125
If a ctags-compatible program returns an error status code on a parsing
failure then it would never be run again on the same file, even if later
invocations would have returned normally (for example after fixing an
error in the current file). Therefore we need to execute the program on
updates as usual, but do not repeat error messages if the previous run
already did.
2013-02-26 21:56:12 +13:00
Jan Larres
852c6dac69 Better handling of switching to unsupported buffer 2013-02-19 00:02:32 +13:00
Jan Larres
59bb2a4355 Merge pull request #123 from jszakmeister/fix-currenttag-on-unsupported-file
When switching to a buffer that is unsupported, clear current.
2013-02-18 00:51:36 -08:00
Jan Larres
4ca7a0c636 Prevent update error when current file is empty 2013-02-18 21:51:16 +13:00
Jan Larres
f801147c2e Fix header indentation 2013-02-13 23:34:17 +13:00
Jan Larres
9ec7d1db4c Merge pull request #118 from techlivezheng/feature/autoupdate-on-bufreadpost
Run auto-updating on BufReadPost event
2013-02-06 00:35:57 -08:00
Jan Larres
9bbd0098c5 Don't update when in previewwindow, closes #112 2013-02-06 21:21:18 +13:00
Jan Larres
5816ce0c5a Add abort() to NextNormalWindow function 2013-02-06 19:00:34 +13:00
Jan Larres
3f03aa3013 Small patch cleanup 2013-02-06 18:43:51 +13:00
Techlive Zheng
0224d32eb9 Only reset '0 mark when it is the last window
We only need to reset '0 mark when our tagbar window is the last one,
otherwise, just quit the window and let the other window handle the
error that might happen on quiting Vim.
2013-02-06 18:21:36 +13:00
Techlive Zheng
987569e7dd Only colse the tagbar window itself
If there are other plugin windows open, close tagbar window and handle
over the control to the other window.

If the last file in the Vim's file arguments list has not been edited
yet, normal Vim's behavior would be quit on ':q!' or twice ':q'. As our
plugin window is the last window now, previously quiting on the file
window will not trigger the "more files" check, but our window does.
We'd better to behave the same. Currently, twice ':q' quiting would work,
but ':q!' not. There is no easy way to determine whether the command
being executed with a "!" or not, so this is a flaw now and we need
to come up a better solution someday, but it is a progress than before.
2013-02-06 18:21:35 +13:00
Techlive Zheng
a444c62066 Quit if no more normal window exists
There might be other plugin windows but no normal file window open, we
need to make sure tagbar window is closed at this situation.
2013-02-06 18:21:35 +13:00
Jan Larres
1181325968 Reinstate noautocmd when going to pprev window 2013-02-06 17:30:33 +13:00
Jan Larres
1f0c0a3a8e Small cleanup of last patch 2013-02-06 17:07:27 +13:00
Techlive Zheng
ad8783961d Do not interfere window switching history
Many plugins rely on 'wincmd p' to work properly, we need to preserve
at least one-level backwards window switching history.
2013-02-06 17:00:09 +13:00
Jan Larres
bccdc7a48d Improve out-of-sync error reporting 2013-02-04 15:10:06 +13:00
John Szakmeister
2b1f655063 When switching to a buffer that is unsupported, clear current. 2013-01-20 10:54:16 -05:00
Techlive Zheng
17d199f584 Run auto-updating on BufReadPost event
If 'autoread' is set and a buffer gets updated, tagbar need to be
triggerd to update itself too.
2012-11-30 08:17:58 +08:00