Commit Graph

1301 Commits

Author SHA1 Message Date
Konstantinos Natsakis 53aa65a5ce Fix ctrlp memory leak 2019-01-17 15:34:19 +02:00
petobens fa5910eb14
extensions: Add defx support
closes #1850
2019-01-11 10:49:31 +01:00
Christian Brabandt d68c9bbeb2
tabline: make middle-click work as expected in neovim
closes: #1854
2019-01-11 10:44:10 +01:00
Arjan van der Velde 2d3bbbff43
make VimLeave autocmd nested
add "nested" to autocmd to make it play well w/ YouCompleteMe

see 109a019279/README.md (ycm-does-not-shut-down-when-i-quit-vim)
2019-01-10 23:15:30 -05:00
Christian Brabandt 6fd5b6ae56
tabline: Fix redrawtabline typo 2019-01-09 08:26:07 +01:00
Christian Brabandt 4604f6d465
tabline: Use :redrawtabline if available
this needs patch 8.1.706 and is a less hacky approach to force updating
the tabline
2019-01-09 07:42:32 +01:00
Christian Brabandt c0f96df97f
Update metadata (copyright)
also remove trailing empty lines in test files
2018-12-15 19:56:30 +01:00
Christian Brabandt e3cfd3643b
wordcount: prevent use of unused variable 2018-12-10 09:11:10 +01:00
Christian Brabandt 3d9071e6b6
themes: Load dark theme, when default colorscheme is loaded 2018-12-03 18:29:26 +01:00
Christian Brabandt c047abfe96
Add inactive statusline for terminal 2018-11-20 16:32:55 +01:00
Christian Brabandt bc63a60b0f
terminal: return proper terminal name 2018-11-20 16:11:34 +01:00
Christian Brabandt 31f5a9307d
Make terminal statusline work for inactive window 2018-11-20 15:48:28 +01:00
Christian Brabandt df0c1731db
Add :AirlineExtensions command
This shows whether or not an extensions has been loaded.
2018-11-14 08:06:39 +01:00
Christian Brabandt f6a95d3a6f
Fix wrong extension name for unicode 2018-11-14 07:41:48 +01:00
Christian Brabandt b20e181bc8
Add a separate function for returning all available themes 2018-11-13 22:14:51 +01:00
Christian Brabandt c3ee263d5b
whitespace: use airline#util#warning instead of echo consistently 2018-11-13 21:37:52 +01:00
Christian Brabandt 2eaf57ece8
xtabline: use airline#util#warning instead of echo conistently 2018-11-13 21:37:52 +01:00
Christian Brabandt d441b3f7b6
util: use correct endfunction style 2018-11-13 21:11:04 +01:00
Christian Brabandt f05f649be8
highlighter: even further refinement of when to skip groups 2018-11-13 13:57:15 +01:00
Christian Brabandt cfd373a5a2
highlighter: Better check, when to skip groups
Groupnames like 'airline_c1_to_airline_x_inactive' still have to be
processed, so do not skip them.

Also for the tabline, '_inactive' groups are not used, so skip them
2018-11-13 13:48:26 +01:00
Christian Brabandt 78e67897a4
highlight: fix previous commit differently
Actually we can restrict the loop condition to only run 5 times instead
of 6 (which was an oversight).
2018-11-13 09:06:39 +01:00
Christian Brabandt e66d65ebf4
highlighter: break out of loop at the end
thanks for mentioning @jottkaerr at
4d8a06a5a9 (commitcomment-31275754)
2018-11-13 08:50:10 +01:00
Christian Brabandt 4d8a06a5a9
highlighter: get rid of s:Get() function
Replace by a function that retuns the to be executed highlighting string

Should in theory be a bit faster, since the same function does not have
to be called 5 times per highlighting group.

It probably is not much better, but here are some random numbers:

Profiling:

Previously:
count  total (s)   self (s)
  199   0.022973   0.009909     let cmd = printf('hi %s %s %s %s %s %s %s %s', a:group, s:Get(colors, 0, 'guifg=')…

New:
count  total (s)   self (s)
   79   0.010166   0.000862     let cmd = printf('hi %s%s', a:group, s:GetHiCmd(colors))
2018-11-12 17:59:02 +01:00
Christian Brabandt 6c6c6c104f
highlighter: exec_separator will re-create '_to_' groups
so we don't need to re-create them in the main for loop of
airline#highlighter#highlight() and so skip those groups.
2018-11-12 05:18:53 +01:00
Christian Brabandt f3d6a3542a
Revert "highlighter: also check separator groups for being defined"
This reverts commit 99971aa24d.
2018-11-11 21:18:13 +01:00
Christian Brabandt a993ae5d42
builder: don't call add_separtor twice 2018-11-08 16:44:26 +01:00
Christian Brabandt 99971aa24d
highlighter: also check separator groups for being defined
Make sure, to also check, if the separator groups have already been
defined. Once they are defined initially, they are usually available in
the palette group. So do not redefine them once they have been created
initially.

references #1779
2018-11-08 15:31:58 +01:00
Christian Brabandt d57344a3c3
highlighter: skip more buffer related hi groups
Previously, we only checked for if the name starts with 'airline_c'

But there could as well be highlighting groups starting being called
'airline_b_to_airline_c5', but if buffer 5 is no longer visible in the
current viewport, then we do not need to recreate those groups.
2018-11-08 13:32:20 +01:00
Christian Brabandt 496de8b745
highlighter: do not skip empty c_sections
currently, if the matchstr() evaluates to '', it would skip the required
section, because bnr would be evaluated to zero and since there is no
buffer zero, skip that highlighting group.

Make sure, to only skip the highlighting group if the buffer number is
actually > 0
2018-11-08 12:40:46 +01:00
Christian Brabandt 71dc6f0257
highlighter: fix regex typo 2018-11-08 12:24:02 +01:00
Christian Brabandt 09b5eb952c
highlighter: Only recreate hi groups for visible buffers
In a long editing session, there could happen to accumulate several
highlighting groups for buffers that might no longer be visible.

Therefore, only re-create the highlighting group for buffers that are
actually displayed in the current tabpage. If not, skip them.

references #1779
2018-11-08 12:20:55 +01:00
Christian Brabandt b7367c605a
highlighter: do not redefine the same groups several times
previously, it could happen that the same highlighting group was defined
several times, because it was available in several modes within
g:airline#theme[mode]. So the second one would always win.

Therefore, loop through all modes in reverse order and define the group
and remember what group has already been defined. If we happen to have
to re-define the same group, skip it. Since we are traversing the list
in reverse order, this should make sure the last definition wins.

This has the benefit of being more performant and hopefully helps with
e.g. #1779 and similar issues.
2018-11-07 14:25:40 +01:00
Christian Brabandt 18200bfad3
modes: do not add special sections to accents 2018-11-07 13:49:22 +01:00
Christian Brabandt 776f7aa948
Merge pull request #1816 from amiller27/numbered-ctrlspace-tabs
Add option for numbered tabs
2018-11-01 16:10:16 +01:00
Aaron Miller 62f3d1d412 Add option for numbered tabs
Cleaned up variable name, added documentation
2018-11-01 10:44:44 -04:00
Christian Brabandt 6516b1b4dc
po: only reset cache if window width changed 2018-11-01 11:18:04 +01:00
Christian Brabandt fc021cf4e8
po: only substitute, if value is present in string 2018-11-01 11:14:57 +01:00
Christian Brabandt 6508558c3d
po: shorten and reformat message format for smaller windows 2018-11-01 10:40:41 +01:00
Lars Michelsen 0609a1f945 Visualize that ale is currently checking the current buffer
At the moment you can never be sure whether you look at the results
that ale just produced after your last changes or you are looking at
outdated information.

Instead of showing the last results while ale executes checks on the
current buffer it can now show a specific indicator.

This commit introduces the new config variable
`g:airline#extensions#ale#checking_symbol` which defaults to "...". In
case you don't want to see this, you may set it to an empty string.
2018-10-18 21:33:15 +02:00
Christian Brabandt 2e99805dbf
Fix failing test 2018-10-16 12:13:24 +02:00
Christian Brabandt 726b730f0a
highlight: correctly cache and restore reverse attributes for highlighting colors
references #1779
2018-10-16 12:03:31 +02:00
Christian Brabandt 7e004804d1
Merge pull request #1811 from LarsMichelsen/update_post_ale
Improve update logic after ale finished
2018-10-16 10:56:49 +02:00
Christian Brabandt d81cdacb1e
better disabled highlighting for inactive windows on FocusLost
This will make sure that the current window will be highlighted as
expected, even if there are no other windows and all highlighting groups
will be correctly re-created as 'inactive'

references #1807
2018-10-16 10:49:17 +02:00
fish 4d825bdb64 Remove trailing space 2018-10-15 20:35:28 +08:00
Christian Brabandt 68f5f1e50d
mode: Update doc, sort dict 2018-10-15 14:17:49 +02:00
Lars Michelsen 3f34ff56b8 Improve update logic after ale finished
Previously the ale refresh was triggered after user interactions only.
When linting takes some time and the user is not actively working the
ale information was not updated while the things ale directly controls
were updated. This change makes showing linting results a loot smoother.
2018-10-14 20:19:39 +02:00
Doron Behar 7190164451 Externalize quickfix function returning text
Useful when one wants to use this function for something else and to
know if a QuickFix window is actually a Location list with qf as
`&filetype`.
2018-09-28 12:56:49 +03:00
Christian Brabandt a0298263b7
autocomd: do not re-evaluate modelines
fixes #1804
2018-09-25 16:03:30 +02:00
Liam Fleming 2390022e33
wordcount: do not rely on english in old versions
for older Vims, the wordcount extension falls back to `g<c-g>` and
parses the messaage that is generated.

When doing so, it expects the English locale, which might not be true.
Therefore, try to regex parse the result without using the english words
(assuming the output is still in the same order as in English).
2018-09-23 20:10:32 +02:00
Christian Brabandt 57bbe050c7
Merge pull request #1801 from flemingfleming/wordcount-fixes
The rest of the wordcount fixes, and some improvements
2018-09-23 17:38:11 +02:00