Sublime Text 2和Backspace(left_delete)问题

时间:2013-01-05 12:06:42

标签: sublimetext2 key-bindings

我遇到backspace密钥绑定问题,但不会删除 Sublime Text 2 中的字词。为了支持空间,我必须突出显示要删除的字符并点击退格键或使用ctrl + z返回。并且,ctrl + backspace删除输入词而不是仅删除一个字符。此外,shift + backspace没有任何影响,尽管它假设与退格做同样的事情。

我启用sublime_log_commands(True)实时显示密钥绑定,日志显示正在发生的绑定,但它根本不删除任何字符。

backpace => command: left_delete

shift + backspace => command: left_delete

&安培;

Ctrl + backspace => command: delete_word {"forward": false}(这个我很好)

然后,我安装了FindKeyConflicts插件,看看是否有任何冲突,但输出看起来很好,IMO。

[shift+backspace]
left_delete                              Default
  .
  .
  .
[ctrl+shift+backspace]
left_delete                              Default               
run_macro_file                           Default
 .
 .
[ctrl+backspace]
delete_word                              Default 
.
 .
[backspace]
left_delete                              Default               
run_macro_file                            Default           
         [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":            
        "regex_contains", "operand": "^\"", "match_all": true, "key": "following_text"}, {"operator": 
        "regex_contains", "operand": "\"$", "match_all": true, "key": "preceding_text"}, {"operator": 
         "equal", "operand": true, "match_all": true, "key": "selection_empty"}]
run_macro_file                           Default            
          [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator": 
         "regex_contains", "operand": "^'", "match_all": true, "key": "following_text"}, {"operator": 
          "regex_contains", "operand": "'$", "match_all": true, "key": "preceding_text"}, {"operator": 
         "equal", "operand": true, "match_all": true, "key": "selection_empty"}]
 run_macro_file                           Default              
          [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator":  
          "regex_contains", "operand": "^\\)", "match_all": true, "key": "following_text"}, 
         {"operator": "regex_contains", "operand": "\\($", "match_all": true, "key": "preceding_text"}, 
          {"operator": "equal", "operand": true, "match_all": true, "key": "selection_empty"}]
 run_macro_file                           Default               
         [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator": 
         "regex_contains", "operand": "^\\]", "match_all": true, "key": "following_text"}, {"operator":  
         "regex_contains", "operand": "\\[$", "match_all": true, "key": "preceding_text"}, {"operator": 
           "equal", "operand": true, "match_all": true, "key": "selection_empty"}]
 run_macro_file                           Default              
          [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator": 
          "regex_contains", "operand": "^\\}", "match_all": true, "key": "following_text"}, 
           {"operator": "regex_contains", "operand": "\\{$", "match_all": true, "key": 
           "preceding_text"}, {"operator": "equal", "operand": true, "match_all": true, "key": 
           "selection_empty"}]
run_macro_file                           CSS                  
          [{"operator": "equal", "operand": true, "key": "setting.auto_match_enabled"}, {"operator": 
          "regex_contains", "operand": "^;", "match_all": true, "key": "following_text"}, {"operator": 
          "regex_contains", "operand": ":$", "match_all": true, "key": "preceding_text"}, {"operator": 
           "equal", "operand": true, "match_all": true, "key": "selection_empty"}, {"operator":  
          "equal", "operand": "source.css - meta.selector.css", "match_all": true, "key": "selector"}]

如果有人对如何恢复正常backspace操作有任何建议或解决方法,我很乐意听到。

7 个答案:

答案 0 :(得分:2)

既然你说它修复了这个问题,我会把它添加为答案:

关闭所有实例,转到Sublime Text 2 folder并重命名为 Sublime Text 2 - Backup (对于linux,sublime-text-2.backup)。这样你就不会失去任何重要的东西。重新开启崇高。这将使用默认绑定重新添加上述文件夹,而无需额外的插件。

要查看导致此问题的原因:开始逐个添加您正在使用的插件,并查看哪些打破退格。它也可能是冲突的键绑定问题。因此,以与插件相同的方式添加个人绑定。

答案 1 :(得分:2)

我有同样的问题,看,我搜索了如何解决这个问题,就是这样:

  1. 重新安装sublime text

  2. 使用十六进制编辑器软件,我使用Ghex进行Fedora / Ubuntu,运行它并菜单File->打开,打开sublime文本可执行文件(安装文件夹),然后转到菜单:edit->转到字节,并按0x590ADC搜索,用32替换33,保存然后执行并粘贴许可证,这就是全部,退格键应该工作。 使用Sublime Text 2.0.2(linux版本)

  3. 进行测试

答案 2 :(得分:2)

您应该'重置'sublime text 2的设置。 首先关闭sublime文本2,然后打开一个终端并输入:

mv ~/.config/sublime-text-2/ ~/.config/sublime-text-2.org

然后重新启动sublime text 2。 :)

答案 3 :(得分:0)

这恰好发生在我身上(在SublimeText3中),结果我仍然在后台打开了“这是一个免费副本”警报。关闭它解决了这个问题。

答案 4 :(得分:0)

我的Kubuntu安装有这个问题。这很简单: 当你试图破解你的崇高时,通过改变的十六进制值     33 42 至     32 42 它将在255个字符后阻止简单的退格(left_delete)和del(right_backspace)。 (试试吧:写256个字符,然后尝试删除最后一个字符)。

解决此问题的方法是选择要删除的所需字符,然后选择left_delete / right_delete。

如果您想解决此问题,请按照其他建议进行操作,即重新安装您的sublime(使用未注册的版本)。

在Windows上找不到此问题。

答案 5 :(得分:0)

轻松转到偏好设置 - >键绑定 - 默认 搜索密钥别名并编辑你想要的任何东西,然后保存它的好处

答案 6 :(得分:0)

我今天也遇到了同样的问题,查了文档,找到了问题的原因和解决方法。

出现此问题是因为您可能不小心更改了某些设置。所以你必须恢复这些设置。

现在,转到首选项 -> 设置 -> 用户设置现在检查“ignored_pa​​ckages”:[“Vintage”] 并将其从用户设置中删除。 现在您的快捷键就可以正常工作了。