sublime text中添加diff跳转代码
来源:互联网 发布:ipadmini2淘宝卖家 编辑:程序博客网 时间:2024/05/21 02:01
按键绑定
在编辑不同的语言时,使用的语法解析不同,需要根据语法进行过滤后加入按键绑定。
如下, context中当view.scope_name() == ‘source.diff’时,才能激活使用按键绑定:
{ // Navigate to results with enter key "keys": ["enter"], "command": "diff_visiter", "context": [{"operand": "source.diff", "operator": "equal", "match_all": true, "key": "selector" }] }
diff跳转代码
当在diff语法的view中,直接按回车能够跳转到对应代码实现。
class DiffVisiterCommand(sublime_plugin.TextCommand): def __init__(self, *args, **kwargs): print("DiffVisiter init") super(DiffVisiterCommand, self).__init__(*args, **kwargs) def run(self, edit): print("call diffvisitor") if self.view.settings().get('syntax') == DIFF_SYNTAX_FILE: print("diff visitor") filepath = self.view.substr(self.view.line(0)) linenum_re = re.compile(r'^([0-9])*[ac]([0-9]+)') for region in self.view.sel(): # Find anything looking like file in whole line at cursor if not region.empty(): break match_line = self.view.substr(self.view.line(region)) print('match line: %s' % match_line) re_match_linenum = linenum_re.search(match_line) # if this line had a line number, use it and look up for the filename if re_match_linenum: lineno = re_match_linenum.group(2) line_beg = self.view.line(region).begin() prev_line_bounds = self.view.line(sublime.Region(line_beg - 1, line_beg - 1)) file_line = self.view.substr(prev_line_bounds) else: lineno = '1' print("Opening file '%s'" % (filepath + ":" + lineno)) sublime.active_window().open_file(filepath + ":" + lineno, sublime.ENCODED_POSITION)
0 0
- sublime text中添加diff跳转代码
- Sublime Text:添加格式化代码快捷键
- Sublime Text跳转
- Sublime Text 2中自定义代码模板
- 如何在sublime text中实现函数跟踪跳转(ctags)
- Sublime Text 添加右键
- sublime text 3 添加头文件代码段
- Sublime Text代码编辑器
- sublime text格式化代码
- Sublime Text 代码编辑器
- 代码编辑器Sublime Text
- Sublime Text 格式化代码
- Sublime Text 格式化代码
- 将sublime text添加到右键菜单中
- sublime text 3 中添加浏览器预览功能
- 将Sublime Text 3添加到右键菜单中
- sublime text 添加文件忽略
- Mac OSX下Sublime Text配置使用Ctags实现代码跳转
- Oracle创建表空间、创建用户以及授权、查看权限
- Junit使用指南(一)
- 大话 Java File I/O(与c++对比)
- Junit使用指南(二)
- JAVA学习笔记(二十二)- 集合HashMap与Hashtable
- sublime text中添加diff跳转代码
- <犀牛书>注册文档加载完毕调用事件(可以早于load)
- CVS使用指南
- 常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全
- 字符串的基本操作
- mongoDB的地理位置索引
- 答30岁已婚非科班程序员:你的空间一直可以在
- 字符串模式匹配----KMP算法
- (二十)java小练习二