I’m afraid there is no event for project switching.
BTW, Sublime should send the on_close event when switching projects and when closing the application.
BufferScroll
I made some little tweaks and added support for bookmarks and marks.
There is a little bug reproducible even without this plug-in that the first focused tab on switching projects sometimes don’t want to scroll, it stay on line 2.
I can live with that. : P
Regards
This plugin has the following bug:
When the same file is opened on different columns/rows, looks like there is no way to detect on which column/row/group the file is. On restoration all the diffferent column/row/group of that file will get the same scroll, bookmarks, selections, etc.
Looks like there is a need to know an ID of the position in the editor for a view. such “group+column+row”… any API?
Looks like there is a need to know an ID of the position in the editor for a view. such “group+column+row”
Yes, good fellow, yes!
I get a bit of “spam” in the console when I use your plugin (ST 2, v2165 portable):
app ready
pre session restore time: 0.277987
Traceback (most recent call last):
File ".\sublime_plugin.py", line 211, in on_deactivated
callback.__module__, "on_deactivated", EVENT_TIMEOUT)
File ".\sublime_plugin.py", line 155, in run_timed_function
ret = f()
File ".\sublime_plugin.py", line 210, in <lambda>
run_timed_function(lambda: callback.on_deactivated(v),
File ".\BufferScroll.py", line 33, in on_deactivated
File ".\BufferScroll.py", line 77, in save
AttributeError: 'View' object has no attribute 'folded_regions'
wrote startup cache, added files: 2 orphaned files: 3 total files: 127 cache hits: 125
startup time: 0.362697 (package setup was not run)
loaded 941 snippets
Traceback (most recent call last):
File ".\sublime_plugin.py", line 211, in on_deactivated
callback.__module__, "on_deactivated", EVENT_TIMEOUT)
File ".\sublime_plugin.py", line 155, in run_timed_function
ret = f()
File ".\sublime_plugin.py", line 210, in <lambda>
run_timed_function(lambda: callback.on_deactivated(v),
File ".\BufferScroll.py", line 33, in on_deactivated
File ".\BufferScroll.py", line 77, in save
AttributeError: 'View' object has no attribute 'folded_regions'
I have several files open but none of them is a duplicate (e.g. via “clone file”) of each other.
Regards,
Highend
Hi,
I have these lines with v2012.01.18.09.38.14, there isn’t any newer version available.
Regards,
Highend
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
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
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
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
That’s, IIRC this version checking was working on previous versions, tested with SideBarEnhancements.
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
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,
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
The plugin doesn’t work correctly in the following scenarios.
Scenario 1:
- Open some file
- Mess with it, make a syntax error
- Scroll a few screens away
- Close the file, so that BufferScroll remembers the position from #3
- Compile the project
- On the build screen hit F4
- 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:
- Open a file
- Scroll somewhere
- Modify the file in an external application
- Sublime reloads the file in the background
- After switching to Sublime I see a view positioned at the first line of the file
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