To disable the bell altogether, you need to
- enable vim's internal visual bell¹, with
set visualbell
(= set vb
);
- set the effect of the vim visual bell to do nothing, with
set t_vb=
(This is explained in the documentation of 'visualbell'
, but not very clearly.)
¹ Even with novisualbell
, you might see a visual bell if vim emits a bell control sequence (usually \a
) and the terminal is configured to flash rather than make a sound.
Unfortunately, there's no way to do this without support from the plugin. (Sort of.)
The key lines here are:
setlocal foldmethod=expr
setlocal foldexpr=WorkflowishCompactFoldLevel(v:lnum)
The first means "use the value of 'foldexpr'
to determine the fold level of each line". The second sets that option to use the value of a function defined in the plugin.
Folding in Vim is based on fold levels. In foldmethod=expr
, each line is assigned a fold level (an integer) by the 'foldexpr'
. Those levels determine where the folds begin and end.
Solution 1: Write a new 'foldexpr'
.
This can call WorkflowishCompactFoldLevel()
, but adjust the value so that multi-line bullet-items aren't folded. I'll leave this as an exercise, though, because I think it's the wrong approach. Which brings us to:
Solution 2: Make the way it works now not be a problem.
I think the real problem is not that these folds exist, but that they're getting in your way. Can you describe what you do that causes you to even notice that these folds are there? It may be a matter of setting your starting 'foldlevel'
appropriately for ft=workflowish
buffers.
Ideally, you wouldn't notice that these folds existed until you actually tried to close one.
Best Answer
You can't
unmap
internal keybindings that vim needs but you can map them to<Nop>
to disable them. Run this command in vim::map <S-k> <Nop>
or add this line to you.vimrc
file: