Commit Graph

478 Commits

Author SHA1 Message Date
Caleb Maclennan
b63e8cb83f
Merge pull request #638 from jrc2139/dart-ctags 2020-11-30 21:31:45 +03:00
Chi Cao Minh
9b8619bab5
Fix typo in help (#711) 2020-11-20 11:20:11 +03:00
raven42
68a77323cb
Add option for g:tagbar_highlight_method (#709)
* Add option for g:tagbar_highlight_current_tag

Closes #708

Add option for g:tagbar_highlight_current_tag which will allow
highlighting of tags on the current line in addition to highlighting the
scoped tags. Reverts the behavior added in #638 to the default from
before that commit

* Rework to allow direct configuration of highlight method

* Address review comments
2020-11-13 07:29:07 -06:00
David P. Sicilia
6eadc15054
Add g:tagbar_jump_lazy_scroll option. (#705)
* Add g:tagbar_jump_lazy_scroll option.

When this option is on, a jump to a tag will only cause the
window to scroll if the tag line is not already visible on
the window.  If it is visible, the cursor will simply move
to that line without scrolling the window.  If the tagline
is not visible then the window will be scrolled as in current
behavior (according to the g:tagbar_jump_offset option).

Fixes #703

* Factor our new logic into a function.

* Add jump target line to doc.
2020-11-10 16:07:57 -06:00
raven42
10a4a9bc38
Add linenr protection into getPrototype (#707)
* Add linenr protection into getPrototype
Closes #706

Add protection to not go beyond the last line in the file when calling the `s:getPrototype()` routine. This occurs when there is an `=` character in the tag prototype. For example in a python tag with a parameter line this: `some_function(arg1, optional_arg_2=False)`

* Fix issue with python prototypes that can include `=` character in the argument list
2020-11-10 07:49:36 -06:00
raven42
53c8e19676
Cleanup the PrintHelp() routine (#702)
Closes #681
2020-11-03 11:33:33 +03:00
raven42
55b8ffa85c
Scoped kinds (#696)
* Add support for scope
Closes #508, #516

Add --fields=e (end) to the ctags field types to look for the end of the scope.
Update the `s:GetNearbyTag()` routine to use this scope to look for the correct tag.

* Update comment to call out exuberant ctags not supporting the -e option

* Update autoload/tagbar.vim

Co-authored-by: Caleb Maclennan <caleb@alerque.com>

* Optimize nearesttag search, add option for scoped-stl search method

Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2020-11-02 15:15:55 -06:00
raven42
601b5c0073
Add tag datatype (#698)
Closes #680

Add `g:tagbar_show_data_type` field to show the tag datatype next to the tag in the tagbar window
This uses the `--fields=t` field to get the datatype from ctags. If not found, then it will attempt to derive the datatype by extracting all the output from the `pattern` preceeding the tag name.

More testing is needed on other languages. So far this has been stable with C / C++ files parsing the datatype from ctags output. It has also been tested with Java files for the inferred datatype by parsing the pattern line and pulling out everything prior to the tag.
2020-11-02 15:06:40 -06:00
raven42
99c22f1bb2
Fix the scrolloff local setting in RenderKeepView (#697) 2020-10-30 23:56:36 +03:00
raven42
30b20fc87d
Fix issue with tagbar changing the global scrolloff value. (#694)
Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2020-10-29 21:21:52 +03:00
raven42
d55c16e875
Add g:tagbar_jump_offset configuration (#695)
Closes #504

Add a new `g:tagbar_jump_offset` value which will control the tag jump location relative to the center of the screen.
2020-10-29 12:58:17 -05:00
raven42
00841836b4
Add g:tagbar_scrolloff configuration (#692)
* Add g:tagbar_scroll_offset configuration
Closes #564

Add option for `g:tagbar_scrolloff` to issue a `setlocal scrolloff=#` during tagbar window init

* Address review comments
2020-10-29 10:36:47 -05:00
Shane-XB-Qian
8efec2509b
shane: compact tag line# should be good enough if user set it (#687) 2020-10-28 10:17:50 -05:00
raven42
aa8c592201
Help visibility (#686)
Closes #410

Add `g:tagbar_help_visibility` option to always show the help dialog
2020-10-27 14:14:39 -05:00
raven42
469c4b3188
Add g:tagbar_show_tag_count option (#685)
* Add g:tagbar_show_tag_count option

Closes #290

This option will show the tag kind count next to the kind label in the
tagbar window.

* Address review comments
2020-10-27 09:18:30 -05:00
raven42
0d1c6442d9
Add option to print the tag linenumber in the tagbar window (#684)
* Add option to print the tag linenumber in the tagbar window

* Update documentation markup

* Change variable name to g:tagbar_show_tag_linenumbers to be more consistent with other variables

* Fix documentation
2020-10-27 08:37:33 -05:00
raven42
bc48b8b84b
Scoped Highlighting (#683)
* Scoped highlighting fix
Attempt to change the scoped highlighting of the tagbar window. This
will now look only for 'stl' tag types when looking for the nearby tag
when looking to highlight. It does however take into account if the
cursor is on the same line as the tag and highlights it then as well.

* Add additional documentation

* Add documentation for tagbar#printfileinfo() debug routine
2020-10-26 10:19:14 -05:00
Shane-XB-Qian
2a9270cb24
sq: would mess if set key mapping to '' (#675)
Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2020-10-24 10:17:11 +03:00
raven42
c26bf78a61
Merge pull request #676 from raven42/unknown-kinds
Add protection for unknown kinds
2020-10-20 07:54:10 -05:00
diegok
353701eb8c Undone changes on legacy exuberant-ctags types file 2020-10-20 12:01:37 +02:00
diegok
f9012df43b Add missing attributes and methods kinds on perl type 2020-10-20 11:11:29 +02:00
raven42
34a95983ed Add protection for unknown kinds
Perform a has_key() check prior to referencing the dictionary to ensure
the dictionary has a valid key for the specified kind.
Note: When an unknown kind is found, it can mess up the tag highlighting
in the tagbar window. Not sure why this is occurring.
2020-10-19 12:16:36 -05:00
maujim
f5abcd6f46 Allow more granular control of tagbar_compact option. 2020-10-16 14:16:19 -04:00
Josh French
5fc8a7a209 enumerators -> enumerations 2020-10-01 16:52:36 -04:00
Josh French
edb5d15f4d Add typescript mappings for universal ctags 2020-10-01 16:03:37 -04:00
Wenxuan
a1e0e7a571
Hide signcolumn in tagbar window (#666) 2020-09-29 13:01:42 +03:00
raven42
9e2e5d93b4
Merge branch 'master' into large-file-handling 2020-09-23 11:47:24 -05:00
David Hegland
64730d27a9 Added fsize calculation in fileinfo so better tracking can be used to display in tagbar window 2020-09-23 11:45:02 -05:00
Caleb Maclennan
259b47a691
Fix vimscript snafu from #660, closes #662 2020-09-23 17:09:39 +03:00
Luis Piloto
8d17340295
Add g:tagbar_visibility_symbols (#660) 2020-09-23 13:43:05 +03:00
Luis Piloto
5339b4e8bd
Add g:tagbar_scopestrs (#661)
Allows mapping scope suffixes (e.g. 'function') to user-defined values.
2020-09-23 13:02:34 +03:00
raven42
22df1b87af Fix for #647: Add g:tagbar_wrap option 2020-09-21 08:24:01 -05:00
raven42
6cb336d014 Update variable name 2020-09-16 12:17:21 -05:00
raven42
14a86de04b Update to use file size instead of line count 2020-09-16 12:15:48 -05:00
raven42
be67ff7ae7 Add option to not trigger update on large files 2020-09-14 15:15:39 -05:00
Caleb Maclennan
30fb229937
Update URLs to reflect repository migration (Closes #651) 2020-09-13 10:22:09 +03:00
raven42
e1c2c98922
Fixes #650 Correct window positioning defaults (#652)
* Fix for window positioning
With default case having multiple vertically split windows, the tagbar
window should open on the far right of the screen. When the feature in
pull-request 630 was added, this behavior changed to open the tagbar
window relative to the current window. This commit will fix that by
allowing direct usage of the vim split options.

Validated the following cases for the old default values. These all
still behave the same way as prior to pull-request 630 when the tagbar
is activated in the `active` window shown in the below examples:
```
	" No options
	+-----------------------------------+
	| preview                           |
	+--------+--------+--------+--------+
	| edit   | edit   | edit   | tagbar |
	|        | active |        |        |
	+--------+--------+--------+--------+

	" tagbar on left, preview above
	let g:tagbar_left = 1
	+-----------------------------------+
	| preview                           |
	+--------+--------+--------+--------+
	| tagbar | edit   | edit   | edit   |
	|        |        | active |        |
	+--------+--------+--------+--------+

	" tagbar on bottom, preview to right of tagbar
	let g:tagbar_vertical = 10
	+--------+---------------+--------+
	| edit   | edit          | edit   |
	|        | active        |        |
	|        +-----+---------+        |
	|        | tag | preview |        |
	+--------+-----+---------+--------+

	" tagbar on top, preview to the right of tagbar
	let g:tagbar_left = 1
	let g:tagbar_vertical = 10
	+--------+-----+---------+--------+
	| edit   | tag | preview | edit   |
	|        +-----+---------+        |
	|        | edit          |        |
	|        | active        |        |
	+--------+---------------+--------+

```

New values also all validated using the following:
```
" Behaves the same as no options
let g:tagbar_position = 'right'

" Behaves the same as g:tagbar_left = 1
let g:tagbar_position = 'left'

" Behaves the same as g:tagbar_vertical = <#>
let g:tagbar_position = 'bottom'

" Behaves the same as g:tagbar_left = 1 | g:tagbar_vertical = <#>
let g:tagbar_position = 'top'
```

* #650 - Fix typo in doc/tagbar.txt for g:tagbar_height option
2020-09-01 16:59:16 +03:00
bravestarr
e5c864738d
Fix issue with jumping to a tag with special characters (#649)
In C++, the name of the destructor of a class starts with a
tidle(~) which is special when the option 'magic' is set. This
will cause an error when jumping to a destructor. Call search()
in "very nomagic" environment can solve this problem no matter the
option 'magic' is set or not.
2020-08-29 17:59:53 +03:00
John Castronuovo
7dddde55b4
feat(dart_ctags): add inheritance tags 2020-08-27 09:54:54 +02:00
John Castronuovo
5e27cdb70b
feat(dart_ctags): create scope for imports for dart, pub. local package
tags
2020-08-26 21:55:51 +02:00
John Castronuovo
78c1612106
refactor(dart_ctags): improve tag order 2020-08-26 20:26:13 +02:00
John Castronuovo
29e3cef248
Merge branch 'master' into dart-ctags 2020-08-26 20:18:52 +02:00
John Castronuovo
183300ea3a
feat(dart_ctags): add tag for mixins 2020-08-26 20:16:37 +02:00
raven42
40413d8760
Add user facing function to get tag near line number (#643) 2020-08-26 12:18:05 +03:00
zhmars
86b268471b
Fix --file-scope option warning (#648) 2020-08-26 12:14:15 +03:00
Roman Dobosz
bcc32b42b5
Fix has_key() parameters in currenttagtype function. (#645) 2020-08-24 11:23:17 +03:00
Danilo Luvizotto
a81c01c294
Fix maximized state track on close (#642) 2020-08-17 08:33:00 +03:00
John Castronuovo
f52dadd162
feat(dart_ctags): add tags for enum, export, library, part, and part of 2020-08-05 21:42:02 +02:00
raven42
a5090717dd
Add function tabgar:Update() to manually trigger AutoUpdate() (#633)
Co-authored-by: David Hegland <david.hegland@broadcom.com>
2020-08-03 15:30:13 +03:00
raven42
88bdb86325
Remove debug statement left in 4e7e199 causing screen flicker (#634) 2020-08-03 12:13:03 +03:00
embear
3fe9d8e13b
Check for existence of key in dictionary before using it (#631) 2020-07-30 20:36:07 +03:00
raven42
5bb0ef3576
Add more flexible options for window positioning (#630)
New configuration option for g:tagbar_position that will supercede g:tagbar_left. This option allows for new values for 'top', 'bottom', 'left' and 'right' (default:'right') to position the Tagbar window.

New configuration option for g:tagbar_height that will supercede g:tagbar_vertical. This option is used to set the Tagbar window height when the window is split using the 'top' or 'bottom' position.

New configuration option for g:tagbar_no_status_line. This option will disable any Tagbar status line updates in the event another plugin is controlling the status line. This prevents Tagbar from changing the status line when Tagbar is not the active window.

Co-authored-by: David Hegland <david.hegland@broadcom.com>
2020-07-29 21:18:17 +03:00
tanhuacheng
d7063c7484
Reset window after jump to tag if zoomed (#625) 2020-06-25 00:01:58 +03:00
Linwei
a36880be22
Prevent temporary window creation on Windows (#611)
Co-authored-by: skywind3000 <skywind3000@163.com>
Co-authored-by: Caleb Maclennan <caleb@alerque.com>
2020-05-30 11:51:45 +03:00
Caleb Maclennan
e8d127bf40
Catch error message from u/e ctags variants
Co-authored-by: Steven Engler <sengler@uwaterloo.ca>
2020-05-29 21:56:48 +03:00
Caleb Maclennan
92752b89ce
Add option to disable use of tmp file cache 2020-05-29 21:02:31 +03:00
cridemichel
2a1486447a
Play nicely with popup windows (#604) 2020-05-05 15:47:01 +03:00
cridemichel
679a9d9ac9 Block ProcessFile from processing unloaded or nonexistant buffers (#589) 2020-01-23 18:06:44 +02:00
PiotrProkop
f3b76f9832 Fix for embedded interfaces 2020-01-17 10:27:11 +01:00
PiotrProkop
175f5053a1 Add package to singular_types dict to make it work for Golang 2020-01-17 10:27:11 +01:00
Roman Dobosz
d864a44a3d Additional function for displaying type of a current tag.
Introducing small function for displaying type (kind) of a current tag.
Useful for putting it in the status bar.
2020-01-17 10:26:47 +01:00
Caleb Maclennan
65e014e5a3
Revert incorrect function argument handling 'fix'
This reverts commit 2e952fb336 (#585).

This reverts commit bdcdd8d0d7 (#584).
2020-01-15 12:20:16 +03:00
cridemichel
2e952fb336 Fix bug in function 'put', was parsing wrong number of args (#585) 2020-01-14 16:56:21 +02:00
cridemichel
bdcdd8d0d7 Fix argument handling bug in AutoUpdate function (#584) 2020-01-14 12:11:37 +02:00
dave
3bd3ba403d gotags: kinds support ``e:embedded` and `w:fields`` (#583)
fix Unknown tag kind encountered: "e".
2020-01-08 08:34:21 +02:00
jrc2139
c876263e47 feat(dart_ctags): Support dart if dart_ctags is installed (#581) 2020-01-06 16:29:08 +03:00
John Castronuovo
0a8a22e34d
feat(gotags): override ctags for go if gotags is installed 2020-01-03 23:48:19 +01:00
mars
524aa93372 Add g:tagbar_show_balloon option 2020-01-03 10:53:56 +03:00
Adam Jimerson
ce30e3f0d1 Fall back to using bourne shell if $SHELL is Elvish (#571)
If vim is launched from the Elvish shell, then fall back to using the
bourne shell (sh) or a bourne compatible shell when calling
{universal/exuberant-}ctags.

Signed-off-by: Adam Jimerson <vendion@gmail.com>
2019-12-22 08:28:44 +03:00
Caleb Maclennan
a0f51bd5a6
Arrange (u)ctag argument order to not clobber others (#560) 2019-10-25 21:44:37 +03:00
Caleb Maclennan
750b779ca3
Fix variable scope issues revealed by vint 2019-10-22 18:02:00 +03:00
Caleb Maclennan
b607006c56
Fix syntax issues that are lint warnings 2019-10-22 17:53:08 +03:00
Caleb Maclennan
4b51aa490e
Use different argument for ctags vs. uctags, closes #552 2019-10-22 10:47:51 +03:00
Caleb Maclennan
cf6eb2d9f7
Merge pull request #544 from aymanbagabas/aymanbagabas/markdown
Add uctags markdown support
2019-10-22 10:38:05 +03:00
Caleb Maclennan
22f8084a2a
Merge pull request #537 from preslavmihaylov/master
added support for golang for exuberant ctags
2019-10-22 10:23:56 +03:00
Caleb Maclennan
10209ffd3f
Merge pull request #531 from rtyler/patch-1
Discover the universal-ctags binary
2019-10-22 10:22:18 +03:00
Caleb Maclennan
e471e57ea6
Merge pull request #530 from hupfdule/manpage-support
Add support for manpages
2019-10-22 10:19:23 +03:00
Caleb Maclennan
b9e7f0a291
Revert emergency fix, not actually broken; closes #550
There is no spoon. My testing last night was flawed because I had a typo
in my RC file that was complicating matters. In seems the syntax fix was
all this needed to work okay, not disabling the feature
2019-10-22 10:15:31 +03:00
Caleb Maclennan
70b691efe1
Fix syntax bug introduced in merged PR #476 and emergency backtrack 2019-10-21 19:56:22 +03:00
Caleb Maclennan
b7766a1693
Merge pull request #529 from hupfdule/asciidoc-support
Add asciidoc support
2019-10-21 19:44:48 +03:00
Caleb Maclennan
bd810fd1a6
Merge pull request #502 from chocoladisco/master
fixed the deprecated --extra to --extras
2019-10-21 19:38:27 +03:00
Caleb Maclennan
a8e050f448
Merge pull request #493 from fievel/master 2019-10-21 19:37:10 +03:00
Caleb Maclennan
3b7d19e0a1
Merge pull request #476 from goerz/ctags_options
Add g:tagbar_ctags_options
2019-10-21 18:40:26 +03:00
Flemming Madsen
a0526a6d5a Fix issue where --regex based file types can output duplicate lines when --sort=no (#471)
Fix issue where --regex based filetypes can output duplicate lines when --sort=no

Co-authored-by: Flemming Madsen <flemming@themadsens.dk>
2019-10-21 16:19:45 +03:00
Caleb Maclennan
23f148225b
Merge pull request #470 from blueyed/add-StopAutoUpdate
Add tagbar#StopAutoUpdate
2019-10-21 16:14:15 +03:00
Caleb Maclennan
15431176a8
Merge pull request #423 from jolan78/master
compatibility with phpctags
2019-10-21 16:10:49 +03:00
Ayman Bagabas
231428ebcd Add uctags markdown support
This adds basic markdown headings support based on Universal ctags.
https://github.com/universal-ctags/ctags/pull/1727 #489

Signed-off-by: Ayman Bagabas <ayman.bagabas@gmail.com>
2019-07-04 05:22:16 -04:00
PreslavMihaylov
1998a45805 added support for golang for exuberant ctags 2019-04-27 09:06:04 +03:00
R. Tyler Croy
5acba55275
Discover the universal-ctags binary
At least in the openSUSE package for `universal-ctags` it is not installed as `ctags`
2019-03-28 08:36:39 -07:00
Marco Herrn
7e53921d4d Add support for manpages 2019-03-26 16:31:26 +01:00
Marco Herrn
a91422aae3 Add asciidoc support 2019-03-26 14:06:55 +01:00
chocoladisco
db1b710289 fixed the deprecated --extra to --extras 2018-08-15 13:34:35 +02:00
fievel
44f114a7cb Add map to allow pausing/unpausing tagbar 2018-06-15 10:27:33 +02:00
Michael Goerz
9c60e7f6c6 Accept a list, allowing 'NONE' to avoid duplicates 2018-02-03 20:14:37 -05:00
Michael Goerz
df960e8b9c Add g:tagbar_ctags_options 2018-02-03 17:54:44 -05:00
Daniel Hahler
b8065cfee4 Add tagbar#StopAutoUpdate
This is useful to stop updating information, after using
`tagbar#currenttag` manually/temporarily only.
2018-01-11 17:13:51 +01:00
Jan Larres
387bbadda9 Highlight correctly if visibility disabled
The highlight pattern for the current tag didn't account for the fact
that the visibility symbol is optional.

Closes #463
2017-12-17 16:14:51 +13:00
Jan Larres
c004652797 Only equalize windows after shrinking app window, closes #452 2017-12-03 16:21:34 +13:00
Wilfried Chauveau
7f693a0cd4 Rust: fix method kind from F to P 2017-11-20 23:18:28 +01:00
Mitesh Athia
af94c07aea Formatting 2017-10-17 21:53:58 -04:00