From 2c160f39d3299ff7f9853e4856cefff567f8fbde Mon Sep 17 00:00:00 2001 From: belkka Date: Thu, 16 May 2024 13:12:27 +0000 Subject: fix(ftplugin/man.vim): hide signcolumn (auto) Problem: It's a common practice to set 'signcolumn=yes' (always show) instead of default 'signcolumn=auto' in order to prevent annoying horizontal shifting in editable buffers when using some popular plugins that add/remove signs on the fly. This makes signcolumn always visible and breaks the text flow of pre-formatted man pages, even when no signs are actually defined. Some other options are already tweaked in man.vim to address the issue (e.g. 'nonumber'), but not signcolumn. Solution: set 'signcolumn=auto' in ftplugin/man.vim. By default there is no |signs| in man pages anyway (and I am not aware of any plugins that could define them in man pages), so 'signcolumn=auto' should behave like 'signcolumn=no', i.e. hide the empty column in order to keep buffer width same as terminal width. In a (rare?) case when user does define some signs in man pages, signcolumn will appear (breaking the text flow). --- runtime/ftplugin/man.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/ftplugin/man.vim b/runtime/ftplugin/man.vim index 5f7d37fb79..37667477f3 100644 --- a/runtime/ftplugin/man.vim +++ b/runtime/ftplugin/man.vim @@ -17,7 +17,7 @@ setlocal iskeyword=@-@,:,a-z,A-Z,48-57,_,.,-,(,) " man page content is likely preformatted for the terminal width, so " narrowing display by any additional columns leads to Embarrassing Line Wrap -setlocal nonumber norelativenumber foldcolumn=0 +setlocal nonumber norelativenumber foldcolumn=0 signcolumn=auto setlocal tagfunc=v:lua.require'man'.goto_tag -- cgit