neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 5250d5c1b1d34e9724600cc579dab4edb84e1222
parent 47d9a393de766d8e444043f5bc40dc774d45fece
Author: bfredl <bjorn.linse@gmail.com>
Date:   Sun, 22 May 2022 19:43:30 +0200

Merge pull request #18646 from bfredl/winbarruler

fix(winbar): allow winbar to display a ruler
Diffstat:
M.mailmap | 2+-
Msrc/nvim/screen.c | 3+++
Mtest/functional/ui/winbar_spec.lua | 54++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 58 insertions(+), 1 deletion(-)

diff --git a/.mailmap b/.mailmap @@ -8,7 +8,7 @@ Anmol Sethi <hi@nhooyr.io> <nhooyr@users.noreply.github.com> BK1603 <chouhan.shreyansh2702@gmail.com> Shreyansh Chouhan Billy Su <g4691821@gmail.com> Billy SU Billy Vong <billyvg@gmail.com> <billyvg@users.noreply.github.com> -Björn Linse <bjorn.linse@gmail.com> bfredl +bfredl <bjorn.linse@gmail.com> Carlos Hernandez <carlos@techbyte.ca> <hurricanehrndz@users.noreply.github.com> Chris Kipp <ckipp@pm.me> ckipp01 Christian Clason <c.clason@uni-graz.at> <christian.clason@uni-due.de> diff --git a/src/nvim/screen.c b/src/nvim/screen.c @@ -6463,6 +6463,9 @@ void showruler(bool always) } else { win_redr_ruler(curwin, always); } + if (*p_wbr != NUL || *curwin->w_p_wbr != NUL) { + win_redr_winbar(curwin); + } if (need_maketitle || (p_icon && (stl_syntax & STL_IN_ICON)) diff --git a/test/functional/ui/winbar_spec.lua b/test/functional/ui/winbar_spec.lua @@ -6,6 +6,7 @@ local insert = helpers.insert local meths = helpers.meths local eq = helpers.eq local poke_eventloop = helpers.poke_eventloop +local feed = helpers.feed describe('winbar', function() local screen @@ -148,6 +149,59 @@ describe('winbar', function() | ]]) end) + it('can be ruler', function() + insert [[ + just some + random text]] + meths.set_option('winbar', 'Hello, I am a ruler: %l,%c') + screen:expect{grid=[[ + {1:Hello, I am a ruler: 2,11 }| + just some | + random tex^t | + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + | + ]]} + feed 'b' + screen:expect{grid=[[ + {1:Hello, I am a ruler: 2,8 }| + just some | + random ^text | + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + | + ]]} + feed 'k' + screen:expect{grid=[[ + {1:Hello, I am a ruler: 1,8 }| + just so^me | + random text | + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + | + ]]} + end) it('works with laststatus=3', function() command('set laststatus=3') screen:expect([[