V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ectotherm
V2EX  ›  分享发现

又一编辑神器Sublime Text 2,不过我碰到几个问题,懂得进来帮帮忙

  •  
  •   ectotherm · 2012-02-09 10:45:38 +08:00 · 9306 次点击
    这是一个创建于 4459 天前的主题,其中的信息可能已经有所发展或是发生改变。
    TextMate半死不活的,而且从2出来的那个样子,我是绝望了。现在的方案是停留在TextMate 1上,等2 release了,估计会比现在好一些。

    不过谁知道猴年马月会release,结果网上有人推荐Sublime Text 2,优点多多:

    1. 编辑习惯和tm比较相似;
    2. 速度远远快于tm,每次打开大项目,tm都会假死,st2不会;

    另外:

    1. 我喜欢Python,而st2是基于Python的;
    2. 所有配置都基于文本文件,而不是某个binray,这个我灰常喜欢!

    但是:

    1. st2没有设置、Package编辑器吗?所有设置、所有Package的编辑全不要直接找到文件修改吗?
    2. 好吧,我不反对全部使用文本来进行配置,关键问题在找不到一份完整的设置关键字的参考。
    3. 打开文件能不能设置的跟tm一样:打开单独的文件使用单独的窗口;开目录,使用带标签的窗口;开目录中的文件,找到对应的目录窗口,新建个tab。现在所有的文件一股脑儿的全部往现有窗口里面塞。
    4. 可以把一个目录当成一个项目打开吗?也就是可以通过.sublime-project进行设置,我讨厌还要建立xxx.sublime-project。

    知道的进来帮帮忙,谢谢!
    25 条回复    1970-01-01 08:00:00 +08:00
    ectotherm
        1
    ectotherm  
    OP
       2012-02-09 11:00:57 +08:00
    另外如何设置hook,比如“在保存文件时候自动删除行尾的空格”、“保存C#代码的时候自动格式化“。
    Echoldman
        2
    Echoldman  
       2012-02-09 11:15:12 +08:00
    “完整的设置关键字的参考”,可以通过查看“Preferences->File Settings Default”,所有的默认设置都在这里,估计是完整的。
    ectotherm
        3
    ectotherm  
    OP
       2012-02-09 11:16:28 +08:00
    @Echoldman 哦,谢谢,那其他的呢,比如.sublime-project各种配置文件的
    lucifr
        4
    lucifr  
       2012-02-09 11:29:10 +08:00
    1&2. 目前具体的设置都是通过 Settings 文件来完成的,一般设置文件都有两个(包括很多 package 的),一个是 Default,一个是 User。User 可以用于覆盖 Default 的设置,而 Default 这个是有注释的,也就是说让你对着 Default 向 User 中添加想要定义的项目。我觉得这样的通过文件设定更好一些,毕竟大多数使用者都是程序猿。

    3. 不知道你用的什么系统,我在 Mac 下开新文件是会新建立窗口的。

    4. 这个没细研究,既然把目录当项目那直接开目录不就行了
    ectotherm
        5
    ectotherm  
    OP
       2012-02-09 11:32:39 +08:00
    @lucifr 3. 我也是用mac,但是如果之前在st2中打开一个目录窗口w,然后在命令行执行subl file,file也会被打开在那个w中;
    4. 直接打开不行,st2只能给项目设置file_exclude_patterns,build_settings等属性,不能对目录设置
    lerry
        6
    lerry  
       2012-02-09 11:35:34 +08:00
    @ectotherm 同求hook,“保存时自动更新Last edit at”
    lucifr
        7
    lucifr  
       2012-02-09 11:46:15 +08:00
    @ectotherm subl -n 可以在新窗口中打开
    roamlog
        8
    roamlog  
       2012-02-09 11:52:24 +08:00
    4,直接 subl .
    Echoldman
        9
    Echoldman  
       2012-02-09 12:09:59 +08:00
    @ectotherm 这个还不知道,我现在还是主力用Xcode,Sublime Text 2是辅助
    ectotherm
        10
    ectotherm  
    OP
       2012-02-09 12:21:13 +08:00
    @roamlog 4. 直接打开不行,st2只能给项目设置file_exclude_patterns,build_settings等属性,不能对目录设置
    stranbird
        11
    stranbird  
       2012-02-09 12:44:21 +08:00
    用subl .总要运行两次才打得开。
    第一次说connect to sublime failed. (大意)
    第二次才成功。
    请问有人知道为什么么?
    yyfearth
        12
    yyfearth  
       2012-02-09 13:03:48 +08:00
    @ectotherm 你直接用subl 或者app,打开一个文件夹,那么就和项目一样的,只不过不能像项目一样保存一些配置,如果你要配置,那么当然需要建立一个project。
    或者你可以这样,先建立一个project,然后吧文件夹拖到sidebar,就会自动添加,不过如果经常这样,里面会有很多文件夹,不过你也可以把这些文件夹移除sidebar。
    我觉得subl这么设置没什么问题。
    按照你的需求,是不是希望有个全局默认的project?
    ectotherm
        13
    ectotherm  
    OP
       2012-02-09 13:05:48 +08:00
    @yyfearth 是希望某个目录中的所有子目录全部按照这个配置,这种想法来源于textmate2
    yyfearth
        14
    yyfearth  
       2012-02-09 13:06:23 +08:00
    3. 打开文件能不能设置的跟tm一样:打开单独的文件使用单独的窗口;开目录,使用带标签的窗口;开目录中的文件,找到对应的目录窗口,新建个tab。现在所有的文件一股脑儿的全部往现有窗口里面塞。
    这个有些复杂,如果真的实现这样确实也不错,而且这样一来,如果有全局的project设置,sublime-project就确实可有可无了。
    估计也是你3和4是一起的吧
    ectotherm
        15
    ectotherm  
    OP
       2012-02-09 13:11:35 +08:00
    @yyfearth 不是吧,3是说textmate 1中的一个特性;4是说我希望实现的一个功能,这个功能在textmate 2中有
    ectotherm
        16
    ectotherm  
    OP
       2012-02-09 13:35:29 +08:00
    @lucifr st2的project drawer中可以reveal in finder之类的功能吗?我发现这个很实用。还有可以现实版本状态吗?
    lucifr
        17
    lucifr  
       2012-02-09 13:53:45 +08:00
    第一个问题可以看我的文章:http://lucifr.com/2012/02/08/useful-entries-in-sublime-text-2-context-menu/

    第二个版本状态如果是 git 的话有个 git 插件可以在 st2 里执行 git status
    ectotherm
        18
    ectotherm  
    OP
       2012-02-09 14:06:02 +08:00
    @lucifr 搞定,谢谢
    ectotherm
        19
    ectotherm  
    OP
       2012-02-09 14:41:03 +08:00
    @yyfearth @lucifr 关于第四个问题,我换一个方法来描述:我希望打开一个folder,比如通过命令行subl .,在这个folder里面,有独立的tab_size file_exclude_patterns等设置。

    st2只能通过建立.sublime-project的项目文件,并打开才能实现。现在我打开一个folder,可以得到同样的结果吗?
    yyfearth
        20
    yyfearth  
       2012-02-09 15:34:47 +08:00
    @ectotherm “在这个folder里面,有独立的tab_size file_exclude_patterns等设置”
    那你把他写在哪里呢?学netbeans,每个folder有个.sublime_setting这样?
    lucifr
        21
    lucifr  
       2012-02-09 15:39:04 +08:00
    ectotherm
        22
    ectotherm  
    OP
       2012-02-09 16:05:52 +08:00
    ectotherm
        23
    ectotherm  
    OP
       2012-02-09 16:17:29 +08:00
    @lucifr 这个东西基本满足我的要求,但缺点是只能针对每个文件,不能针对目录,比如加入folder_exclude_patterns是无效的
    lucifr
        24
    lucifr  
       2012-02-09 16:25:08 +08:00
    @ectotherm 嗯,folder_exclude_patterns 是 project setting only 的吧,这个插件应该针对的是全局的设定
    ectotherm
        25
    ectotherm  
    OP
       2012-02-09 16:33:01 +08:00
    @lucifr 好吧,不过总之比tm先进多了,谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4111 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 01:00 · PVG 09:00 · LAX 18:00 · JFK 21:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.