【发布时间】:2018-04-23 10:25:30
【问题描述】:
我想将当前选中的行保持在屏幕的垂直中心。
在 VIM 中,这是通过 :set scrolloff=9999 命令实现的。
在 Sublime Text 中是否有任何选项或插件可以做到这一点?
【问题讨论】:
标签: plugins sublimetext3 sublimetext2 sublimetext sublime-text-plugin
我想将当前选中的行保持在屏幕的垂直中心。
在 VIM 中,这是通过 :set scrolloff=9999 命令实现的。
在 Sublime Text 中是否有任何选项或插件可以做到这一点?
【问题讨论】:
标签: plugins sublimetext3 sublimetext2 sublimetext sublime-text-plugin
import sublime_plugin
class AlwaysCenterCommand(sublime_plugin.EventListener):
def on_modified(self, view):
sel = view.sel()
pt = sel[0].begin() if len(sel) == 1 else None
if pt != None:
view.show_at_center(pt)
如果不是多选和修改,则居中。就是这样。
或者您也可以只使用该区域。
import sublime_plugin
class AlwaysCenterCommand(sublime_plugin.EventListener):
def on_modified(self, view):
sel = view.sel()
region = sel[0] if len(sel) == 1 else None
if region != None:
view.show_at_center(region)
https://forum.sublimetext.com/t/always-centered-cursor/4005
另一种选择
Buffer Scroll 是一个简单的 Sublime Text 插件,当您打开文件时,它会记住并恢复滚动、光标位置、选择、标记、书签、折叠、选定的语法和可选的配色方案。还会根据文件在应用程序中的位置记住不同的数据(例如 window1 中的 file1 在第 30 行滚动,window2 中的 file1 在第 40 行滚动)
此外,通过首选项,允许在克隆视图之间实时同步滚动、书签、标记和折叠。
默认情况下禁用同步功能。您需要通过首选项启用这些。主菜单 -> 首选项 -> 包设置 -> BufferScroll -> 设置默认值。您可能希望将编辑的首选项复制并粘贴到位于同一子菜单下的“设置用户”。在更新之间保持您的偏好。
应 Kensai 的要求,此软件包现在提供“打字机滚动”:您使用的线条自动位于屏幕的垂直中心。
【讨论】: