Comments (9)
visually, but might also "eat" some keys
Could you elaborate? I can understand that the flashing sidebar can be annoying sometimes, but peekaboo is not supposed to "eat" any keys.
from vim-peekaboo.
"eat" any keys
It's not peekaboo itself, but the interaction with Vim. It's not reproducible in a new Vim instance, but might be related to a more complex window / tab layout, where the flashing sidebar is slow to open, and then the register itself wasn't handled properly.
It's good to know that this is not meant to happen - I will investigate in case it happens again.
from vim-peekaboo.
One annoyance in this regard is with the equalalways
setting, which is on by default.
This causes windows to be resized because of the opening/closing of the peekaboo window.
Maybe the equalalways
setting could be disabled temporarily?
from vim-peekaboo.
I'm not sure if it's possible, according to :help equalalways
'equalalways' 'ea' boolean (default on)
global
{not in Vi}
When on, all the windows are automatically made the same size after
splitting or closing a window. *This also happens the moment the
option is switched on.*
So even if I temporarily disable the option, windows will be resized right at the moment when I restore the option.
from vim-peekaboo.
This also happens the moment the option is switched on.
Ok, then it's not really an option. But maybe it can be taken into consideration for the timeout handling, e.g. with ea
peekaboo would have the timeout by default or something like that.
from vim-peekaboo.
Yep, I see your point.
from vim-peekaboo.
Added g:peekaboo_delay
(ms). Please test it and let me know if it doesn't work as expected. Thanks.
from vim-peekaboo.
Very nice!
Thanks!
from vim-peekaboo.
I came found this discussion while searching for a way to close a window without losing sizes of other windows when equalalways
is set. In my case I wanted to close a preview window. In case this is useful for peekaboo, or in case anyone else arrives here with the same problem, here is a solution that I am experimenting with:
function! s:isPreviewWindowOpen()
for nr in range(1, winnr('$'))
if getwinvar(nr, "&pvw") == 1
return 1
endif
endfor
return 0
endfunction
" Close preview window without changing the sizes of other windows.
function! s:closePreview()
if !s:isPreviewWindowOpen()
return
endif
let eq = &equalalways
set noequalalways
pclose
if eq
let cmd = winrestcmd()
let &equalalways = eq
exe cmd
endif
endfunction
Turning equalalways
back on at the end of the function resizes windows immediately, which we do not want. So I use winrestcmd
to capture the size of each window before restoring the equalalways
setting, and I run the restore command immediately after to get those sizes back.
from vim-peekaboo.
Related Issues (20)
- Plugin regularly (but unpredictably) crashes neovim HOT 5
- when this plugin be loaded lazy will occur some problem HOT 1
- screencapture tool used in README?
- [Feature Request] Use floating window instead of split HOT 17
- Can it support redir @?
- Can it display the type of register?
- Blank window in visual mode HOT 1
- Not working in Command mode HOT 1
- cmd height changed to maximum HOT 5
- Breaks Ex mode if used
- Peekaboo window does not show leading whitespaces
- [Feature Request] foldcolumn independent window HOT 1
- [Feature Request] show special key combinations instead of bytes: <Esc> instead of ^[ HOT 1
- [bug] conflict with startify
- vim-peekaboo sets cmdheight to max, meaning I can only see 1 line of my window output HOT 5
- Feature Request: change (or disable) default maps HOT 3
- change location of sidebar? HOT 2
- Ctrl-R Insert Mode places register one char before last
- Peekaboo makes it impossible to paste in telescope HOT 5
- Why maps are <buffer>?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vim-peekaboo.