mattboehm / vim-unstack

Vim plugin for parsing stack traces and opening the files
286 stars 15 forks source link

Scrollbind is set by default for a new tab #24

Closed IngoMeyer441 closed 8 years ago

IngoMeyer441 commented 8 years ago

When unstack opens a new tab for a stack trace that includes the same source file twice both windows seem to have scrollbind set by default. So you cannot navigate in one window without changing the other window viewport. I've tried to run

:windo set noscrollbind

but that has no effect. But executing

:diffoff

unbinds the buffers surprisingly. Any hints how to unset the default scrollbind behavior?

mattboehm commented 8 years ago

I'm not seeing any hints in my code and having trouble reproducing this.

Try running :verbose set scrollbind? . This should tell you which file last caused this setting to change.

FWIW, this is where the files are actually opened: https://github.com/mattboehm/vim-unstack/blob/master/autoload/unstack.vim#L151 I temporarily modify 'scrolloffset', and inside unstack#MoveToLine I do a z-, z., or z+ command, but I'm still at a loss as to how that would cause scb to be set.

mattboehm commented 8 years ago

If :diffoff fixes it, then perhaps it has to do with some other option that this modifies. :h 'diffoff' lists:

The ":diffoff" command resets the relevant options to the values they had when
using |:diffsplit|, |:diffpatch| , |:diffthis|. or starting Vim in diff mode.
Otherwise they are set to their default value:

'diff'              off
'scrollbind'    off
'cursorbind'    off
'scrollopt'         without "hor"
'wrap'      on
'foldmethod'    "manual"
'foldcolumn'    0

If scrollbind does not appear to be the culprit, I'd suggest doing the same :verbose set for all of these, noting when they were set. Sorry to reply with so many steps; I wish I could reproduce this on my end instead.

IngoMeyer441 commented 8 years ago

The behavior is really strange. I noticed the issue when using MacVim but GVim seems to be ok (I use the same .vimrc on both systems). Moreover, I have to run both commands in the order

:windo set noscrollbind
:diffoff

to get rid of the scrollbind behavior. I will try your suggestions, maybe I can find out more...

mattboehm commented 8 years ago

Odd, perhaps there's something wrong with macvim or it's sourcing extra vim files that are messing with things (you can always see which files have been sourced by running :scriptnames). I can try installing MacVim at some point to see if I can reproduce this with a clean install.

Did running :verbose set scrollbind? tell you anything?

IngoMeyer441 commented 8 years ago

I'm sorry, but now I even cannot reproduce the scrollbind behavior on my Mac. Maybe I messed up some internal variables in a long running vim session or so. If the issue occurs again, I will report further details. Sorry for taking up your time.

mattboehm commented 8 years ago

No problem; I'm glad to see people are using the plugin =). I'll close this for now, but feel free to re-open it if the problem comes back.