2013-04-05 73 views
1

enter image description here是否有可能在第1行上使用该标题列出来自每个用键盘快捷方式分隔的单词或符号的项目。所以,我可以选择标题,然后打一个快捷方式,它将使标题的项目列表如下图所示:在Sublime Text 2中将单词行改为垂直列表的快捷方式

enter image description here

试图保存键绑定文件。

+0

你应该接受@ skuroda的答案,如果它正确地回答你的问题。 – AGS 2013-04-08 10:59:53

+0

不用担心,我会的,我们还没有达成解决方案。尽管如此,skuroda仍然是一个巨大的帮助! – 2013-04-12 15:52:32

回答

3

没有内置的,但你可以用插件做到这一点。

import sublime 
import sublime_plugin 
import re 


class SplitLineCommand(sublime_plugin.TextCommand): 
    def run(self, edit, split_pattern=" "): 
     view = self.view 
     cursors = view.sel() 
     if len(cursors) == 1: 
      cursor = cursors[0] 
      begin_offset = 0 
      end_offset = 0 
      if cursor.empty(): 
       region = view.line(cursor) 
       content = view.substr(region) 
       new_content = re.sub(split_pattern, "\n", content) 

       view.replace(edit, region, new_content) 
      else: 
       region = cursor 
       content = view.substr(region) 
       new_content = "" 
       if view.line(region).begin() != region.begin(): 
        new_content = "\n" 
        begin_offset = 1 
       new_content += re.sub(split_pattern, "\n", content) 

       if view.line(region).end() != region.end(): 
        new_content += "\n" 
        end_offset = - 1 

      view.replace(edit, region, new_content) 
      cursors.clear() 
      cursors.add(sublime.Region(region.begin() + begin_offset, region.begin() + len(new_content) + end_offset)) 
      view.run_command("split_selection_into_lines") 

然后,您可以在您的密钥绑定文件中添加以下内容。

[ 
    { "keys": ["f8"], "command": "split_line", "args": {"split_pattern": " "}} 
] 

当然要把钥匙改成你想要的东西。如果您只是使用空间,则实际上并不需要args参数。它默认那个。我只是把它包括在内以求完整。

编辑: 我已经更新了插件,所以它现在处理选择,虽然它不处理多个游标在这一点上。

编辑2 如果它不工作,请尝试打开控制台并输入view.run_command("split_line")。这将在您切换到控制台之前的任何视图中运行该命令。这样你就知道命令是否真的有效。如果没有,那么插件有问题。如果是这样,那么键绑定有问题。

+0

我在哪里可以保存新的插件? – 2013-04-06 20:15:03

+1

创建插件最简单的方法是进入'工具 - >新插件...'复制并粘贴此代码(它应该可以工作,但如果遇到问题,请评论)。然后保存该文件。你会想将它保存在'Packages/User'目录下。当您尝试保存插件文件时,它应该默认为那里。将该文件保存为' .py',替换为'',其名称对您有意义。之后,只需将密钥绑定添加到您的用户密钥绑定文件。 – skuroda 2013-04-06 20:28:54

+0

好吧,所有这一切,我想我现在只是对最后一部分感到困惑。当我将它放在用户密钥绑定文件中时,是否必须保存密钥绑定?我将它保存为什么?查看上面的新照片,了解我在尝试保存时遇到的情况。 (注意:我没有保存任何东西,因为我不想搞乱任何东西) – 2013-04-08 21:05:00

相关问题