Commit Graph

1986 Commits

Author SHA1 Message Date
Christian Brabandt
c0f96df97f Update metadata (copyright)
also remove trailing empty lines in test files
v0.10
2018-12-15 19:56:30 +01:00
Christian Brabandt
39ac0a93e5 document changelog for new release 2018-12-15 19:45:50 +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
bd468dacfe Revert TermOpen autocommand for Neovim
closes #1828
2018-11-22 08:31:14 +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
f9ccb57e76 Make terminal extension work with Neovim 2018-11-20 15:55:11 +01:00
Christian Brabandt
31f5a9307d Make terminal statusline work for inactive window 2018-11-20 15:48:28 +01:00
Christian Brabandt
fa11b8855b Test for TerminalOpen Autocommand before using it 2018-11-20 15:28:29 +01:00
Christian Brabandt
904ac4eb0b plugin: Reload terminal extension on :term command 2018-11-20 14:51:22 +01:00
Christian Brabandt
ada0ba8ae3 doc: reorder extension configurations alphabetically 2018-11-14 09:28:16 +01:00
Christian Brabandt
426c8bb8ef doc: update documentation 2018-11-14 08:26:18 +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
ffac12cbbe theme: do not show not-found warning
Only show the "airline theme not found" warning message, when the user
actually used `:AirlineTheme foobar`, not when called by an autocommand
that tries to switch themes when the Vim colorscheme changed.

fixes #1824
2018-11-14 07:36:45 +01:00
Christian Brabandt
b2e1dbad6f use tr() instead of substitute
should be a bit faster
2018-11-13 22:54:49 +01:00
Christian Brabandt
b3a574b4a3 Fix error in airline#add_statusline_funcref 2018-11-13 22:53:13 +01:00
Christian Brabandt
7f6dfbefd1 theme: only define g:autoload_theme if loading was successfully
fixes the test
2018-11-13 22:39:36 +01:00
Christian Brabandt
5b1c92979c Fix error in airline#add_statusline_funcref 2018-11-13 22:36:43 +01:00
Christian Brabandt
9dc546c699 use tr() instead of substitute
should be a bit faster
2018-11-13 22:29:32 +01:00
Christian Brabandt
14691bb00e themes: load them explicitly rather than implictly
While this adds a bit more code it makes it possible to distinguish
between themes not found and errors in themes.

Use :verbose AirlineTheme <foobar>
to also see the error message in case of errors.
2018-11-13 22:27:02 +01:00
Christian Brabandt
b20e181bc8 Add a separate function for returning all available themes 2018-11-13 22:14:51 +01:00
Christian Brabandt
49671d0a11 terminal: do not reset airline theme on TerminalOpen
remove autocommand, that would overwrite the airline theme on :term

(e.g. After a :AirlineTheme monochrome and then using `:term` the
autocommand would reset the theme back to the one given in the .vimrc)
2018-11-13 22:01:36 +01:00
Christian Brabandt
cd0b15b195 plugin: use airline#util#warning instead of echo consistently 2018-11-13 21:37:52 +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
c850f485ad autoload: use airline#util#warning instead of echo 2018-11-13 21:37:48 +01:00
Christian Brabandt
464633baad themes: Do not try to load the palette twice
This will be done explicitly by the switch_theme() function
2018-11-13 21:17:48 +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
6ceaffc49a documentation: Mention AirlineModeChanged
In 781c40bb3d the AirlineModeChanged user-defined
autocommand has been introduced. However it was forgotten to mention
this actually in the documentation.

So here we go.

closes #1774
2018-11-13 09:19:56 +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
e8fd2057a8 doc: Mention how to add funtions for inactive statuslines 2018-11-08 17:20:41 +01:00
Christian Brabandt
8c36d2b595 allow to use alternative seperators for inactive windows
closes #1236
2018-11-08 17:09:17 +01:00
Christian Brabandt
a993ae5d42 builder: don't call add_separtor twice 2018-11-08 16:44:26 +01:00
Christian Brabandt
f08078d683 autoload: add comments 2018-11-08 16:20:37 +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
a334a89e59 plugin: better check for timer and funcref 2018-11-08 07:54:01 +01:00
Christian Brabandt
ce6cf6f07e Check that funcrefs() actually exists
closes #1819
2018-11-07 17:55:11 +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