是否有代码可以放入设置或插件中,在 Sublime Text 3 的状态栏中显示当前行和列的总行数?
最佳答案
在状态栏中显示行数的代码很简单, 只需获取行数
line_count = view.rowcol(view.size())[0] + 1
并写入状态栏
view.set_status("line_count", "#Lines: {0}".format(line_count))
如果你想打包一个插件,你只需要把它写在一个函数中,然后在一些 EventListener 上调用它。 .
通过单击 Tools >> Developer >> New Plugin...
创建插件并粘贴:
import time
import sublime
import sublime_plugin
last_change = time.time()
update_interval = 1.5 # s
class LineCountUpdateListener(sublime_plugin.EventListener):
def update_line_count(self, view):
line_count = view.rowcol(view.size())[0] + 1
view.set_status("line_count", "#Lines: {0}".format(line_count))
def on_modified(self, view):
global last_change
current_change = time.time()
# check if we haven't embedded the change in the last update
if current_change > last_change + update_interval:
last_change = current_change
sublime.set_timeout(lambda: self.update_line_count(view),
int(update_interval * 1000))
on_new = update_line_count
on_load = update_line_count
这实际上是在创建新 View 、加载文件和修改 View 内容时调用命令。出于性能原因,它有一些逻辑,不会在每次修改时都调用它。
关于sublimetext3 - 显示总行数状态栏 sublime text 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37595322/