Sublime Forum

BufferScroll

#11

Update the plugin and let me know if is not working.

0 Likes

#12

Hi,

I have these lines with v2012.01.18.09.38.14, there isn’t any newer version available.

Regards,
Highend

0 Likes

#13

You say you have version 2165 of portable edition.

Can you please open the console and paste the output of the following:

sublime.version()

It’s crazy because the line your are quoting is for greater versions.
github.com/SublimeText/BufferSc … oll.py#L76

Thanks

0 Likes

#14

Sure:

>>> sublime.version() u'2165'

:smile:

0 Likes

#15

:smiley:

I think the package is outdated. Or I’m not seeing something very obvious.

Can you check if the file
github.com/SublimeText/BufferSc … rScroll.py
is the same to “Packages/BufferScroll/BufferScroll.py”

Regards

0 Likes

#16

Yes, they are identical (checked with Beyond Compare).

Maybe it’s the “u” in front of the ‘2165’ version number, that confuses your version check?

Regards,
Highend

0 Likes

#17

Ok I see the error downloading your version.

sublime.version() returns a string instead of an int, and the check for version fails.

Fixed. Thank you

0 Likes

#18

That’s, IIRC this version checking was working on previous versions, tested with SideBarEnhancements.

0 Likes

#19

Confirmed, it’s fixed. Thank you!

Is it normal that it reloads it’s settings file (./Data/Packages/User/BufferScroll.sublime-settings) on each tab change / clicking on a file in the sidebar (just for the preview, not via doubleclick to load one)?

Regards,
Highend

0 Likes

#20

Yes, because the application is not sending or do not want send some “events” such:

1 - Closing the application
2 - Closing a project
3 - Opening a project

Sorry for the message I have no control over that.

Regards,

0 Likes

#21

Is not reloading, is saving. The message is somewhat misleading. :bulb:

0 Likes

#22

A little bit, yeah but anyway, I have to live with that. Thanks again for fixing this little “bug” so fast and for your kind responses!

Regards,
Highend

0 Likes

#23

The plugin doesn’t work correctly in the following scenarios.

Scenario 1:

  1. Open some file
  2. Mess with it, make a syntax error
  3. Scroll a few screens away
  4. Close the file, so that BufferScroll remembers the position from #3
  5. Compile the project
  6. On the build screen hit F4
  7. The file opened during #1 will be displayed and correctly positioned at the syntax error, but then BufferScroll will restore the position #3

Scenario 2:

  1. Open a file
  2. Scroll somewhere
  3. Modify the file in an external application
  4. Sublime reloads the file in the background
  5. After switching to Sublime I see a view positioned at the first line of the file
0 Likes

#24

Scenario 1:
Works as expected. If there some way to “know” the file is opened via “build screen” I’m happy to add the exception.

Scenario 2:
Will take a look, thanks for reporting.

Regards

0 Likes

#25

Here’s what I implemented for myself: github.com/xeno-by/dotsublime/b … rScroll.py. It’s freaking ugly, that’s why I didn’t make a pull request, but it works for me, and it solves both problems.

0 Likes

#26

Will take a look thanks.

0 Likes

#27

Actually, using on_activate doesn’t play well with overlays. When I press Ctrl+G, type the line number and press Enter, Sublime fires on_activate which cancels the effect of Ctrl+G. Okay, this thing needs more workarounds.

0 Likes

#28

Here’s yet another dirty hack: github.com/xeno-by/dotsublime/c … 6ec#diff-0.

Now I utilize the fact that overlays never show up in window.views(), despite the fact that opening an overlay fires on_activated with an overlay view as an argument (so, overlays do have underlying views). This fact can be used to filter out and ignore on_activated of a real view that happens after quitting an overlay.

0 Likes

#29

Hi
I changed “restore scroll” to only restore the position if the current position is (0.0, 0.0)

I’m not sure if that solves the other problems you are seeing, I don’t use build system. the problem of “external file changes” has been fixed.

If you can provide a step by step guide I can try

Regards,

0 Likes

#30

Hi there. I find this plugin very useful.

Unfortunately I have a problem with it. When searching for something and clicking on the editable area you’re scrolled to the top.

Steps to recreate the situation:

  • open a file that doesn’t fit in one screen (so you’ll be able to scroll)
  • search for something that’s not in the current viewable area
  • try clicking on the visible editable area (of the file)
    You’ll be scrolled to the top.
    So, basically, the search function of the program is f**ked.

I also figured the thing causing this. It seems that the on_activated method is called when changing focus from search to the editor.
So by simply commenting out this method I solved it.

# def on_activated(self, view):
# 	if view.file_name() != None and view.file_name() != '' and not view.settings().get('is_widget'):
# 		# restore on preview tabs should be fast as posible
# 		self.restore(view)
# 		# overwrite restoration of scroll made by the application
# 		sublime.set_timeout(lambda: self.restore_scroll(view), 200)
0 Likes