zoukankan      html  css  js  c++  java
  • sublime配置

    sublime 确实招人喜欢, 大有全面超越vim的趋势, 大胆猜测原因有:

    2.0.1版下载地址 http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1%20Setup.exe

    1.默认配色就很酷; 也跨平台.
    2.没有工具条, 留给编辑区的区域很大, 可以专注于代码.
    3.不必过多使用鼠标,又不用像vim, 你必须记住太多的快捷键.
    4.有一个非常棒的插件管理器, 这点比vim强多了.
    5.做配置没有GUI, 配置文件都是json格式, 如果格式有问题的话, sublime会及时报错.  

    ===========================================
    插件索引:
    ===========================================
    插件管理器                Sublime Package Control
    我用的color theme       obsidian color scheme
    GBK 编码插件              GBK Encoding Support
    智能错误提示插件          SublimeLinter
    komodo移植版代码完成插件      SublimeCodeIntel(重量级)

    Python标准库帮助提示插件      AndyPython
    调试器                    SublimeREPL
    快捷键管理                KeymapManager
    括号匹配高亮插件          Bracket Highlighter
    版本控制插件              sublime-tortoise
    高亮文本的occurrence      WordHighlight
    Sidebar增强               SideBarEnhancements
    python智能代码插件  SublimeRope(暂不用)
    ***我整理了几个插件打包到 https://anydbtest.svn.codeplex.com/svn/sublime/selected_sublime_packages.7z


    ===================================
    My current Base File settings
    ===================================

    {
        //appearance setting
        "color_scheme": "Packages/Obsidian Color Scheme/Obsidian.tmTheme",
        "highlight_modified_tabs": true,
        "font_face": "Consolas",
        "font_size": 10.0,
    
        //tab key setting
        "translate_tabs_to_spaces": true,
        "tab_size":4,
        "detect_indentation": false,
        "trim_trailing_white_space_on_save": true,
        "shift_tab_unindent": true,
    
        //use rope auto-completion instead
        "suppress_default_completions":true
    }


    ===========================================
    设置environment level的python的编译配置文件(用处不大)
    ===========================================
    在默认的python编译配置文件设定python.exe的路径, 该编译配置文件为 \Data\Packages\Python\Python.sublime-build
    cmd指向我们的python后, PYTHONPATH自动会指向该python的Lib目录

    {
        "cmd": ["C:\\python27\\python.exe", "-u", "$file"],
        "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
        "selector": "source.python"  # set selector if it is default python.exe
    }

    通常我们有多个virtualenv环境, 可基于这个默认的编译配置文件, 复制多份, 比如有py27_flask.sublime-build, py27_django.sublime-build等, 然后修改它们的python.exe路径.

    build system还有很多参数, 参考 http://sublime-text-unofficial-documentation.readthedocs.org/en/latest/reference/build_systems.html
        
        
        
    ===========================================
    设置project level的python的编译配置文件(重要, 运行我们的程序)
    ===========================================
    其实设置了env level 的python配置文件后, 在sublime中运行一个包含多个module的project, 很有可能调用不起来, 因为你的 project src目录并没有加到PYTHONPATH环境变量中. 手动将project src加到PYTHONPATH环境变量是一个办法, 如果开发十多个project, 都这么做, PYTHONPATH环境变量就乱套了.
    一个好的做法是: 设置project level的build 配置.

    具体是: 在project的配置文件(文件名为PROJECTNAME.sublime-project), 加入如下的代码

    "build_systems":
        [
            {
                "cmd": ["C:\\python27\\python.exe","${file}","arg1"],
                "env": {"PYTHONPATH":"c:/workspacepython/your_project/src/"},
                "name": "py_for_your_project"
            }
        ]

    创建了一个名为 py_for_your_project 的build system, 将项目src目录加到PYTHONPATH, 并设置了当前文档为python.exe要执行的脚本, 并传了一个arg1的参数.

    测试脚本

    #module: c:\\abc\\SayHello.py
    import sys
    if __name__ == '__main__':
        name=sys.argv[1]
        print("Hello "+name)
        print(sys.path)  #观察c:\abc是否已经在其中了

     
    ===========================================
    sublime 自己的 site-packages目录
    ===========================================
    sublime 的default package 目录, 比如D:\program\Sublime2181\Data\Packages\Default\, 该目录相当于python的site-packages目录, 目录下的python文件, 可以在console中import进来. 在console中, view.file_name() 代表当前文档.


    ===========================================
    插件管理器 Sublime Package Control
    ===========================================
    网址: http://wbond.net/sublime_packages/package_control/installation
    插件的安装排行榜:  http://wbond.net/sublime_packages/community#sort-installs
    另外, 该插件作者还开发了sublime-tortoise和 SVN 等几个流行的插件
    功能: 发现/安装/删除/升级 sublime插件.
    安装: 有两种模式, console 安装模式和手动安装模式
    手动安装模式:
        下载包, 这个包文件是一个zip格式文件, 将该文件复制到Installed Packages目录下. 重启 sublime,
        用法: 安装后在preferences菜单中有 package settings 和 package control两个菜单项.  如果上网需要代理的话, 需要在package settings中设置.
              其他包都可以通过package control菜单项来安装.
    console 安装模式: ctrl+`后, 在console的输入框中, 输入下面的代码
        无代理联网
     import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'


    ===========================================
    关于各种 Python 插件的配置
    ===========================================
    有很多插件都有自己的一套配置, 一般包括2个配置方案, 一个是 Settings-Default, 另一个是Settings-User.
    必须清楚的是, 我们不应该修改Settings-Default, 因为这类配置方案很可能在插件升级过程中被重写. 要对插件做个性化配置, 应该在其的Settings-User方案中设置, 比如 SublimeLinter    
    Preferences->Package Settings->SublimeLinter->Settings-User
     

    ===========================================
    GBK Encoding Support 插件
    ===========================================
    这个插件太重要了, sublime 在windows本身不能很好打开cp 936(GBK)编码文件, 这类编码文件在国内应该是最常见的了


    ===========================================
    智能错误提示插件 SublimeLinter 的配置
    ===========================================
    https://github.com/kronuz/SublimeLinter/
    共有几种检查模式:
    "sublimelinter_popup_errors_on_save": true //show popup list of all errors when file is saved
    "sublimelinter": true        //background 工作模式
    "sublimelinter": "load-save" //在load或save文件时检查代码
    "sublimelinter": "save-only" //在save文件时检查代码
    "sublimelinter": false       //on-demand 工作模式
    用法:
    检查代码: 如果工作在on-demand模式下,  按 Control+Alt+L 检查代码.或者 Control+Shift+P 呼出命名列表, 选择 SublimeLinter: Lint Current File
    列出错误: Control+Shift+P 呼出命名列表, 选择 SublimeLinter: Show Error List, 

    显示下一个错误: ctrl+alt+E,  显示上一个错误: ctrl+alt+shift+E



    Here are my settings:

    { 
        "sublimelinter": false, //on-demand, Use Ctrl+Alt+L to check
        "sublimelinter_popup_errors_on_save": true, //show popup list of all errors when file is saved
        "pep8_ignore": ["E201","E202","E203","E221","E225","E231","E251","E303","E501","W291","W292","W293","W391"]
    }


    ===========================================
    智能代码提示插件 SublimeCodeIntel 的配置
    ===========================================
    移植于 komodo 的代码提示插件, 支持 python, ruby, php, javascript 等脚本语言.
    SublimeCodeIntel 网址:  https://github.com/Kronuz/SublimeCodeIntel

    参考文章: Virtualenv 下 Sublime CodeIntel 配置, http://hellowiki.com/2012/03/22/sublime-codeintel-configuration-for-virtualenv/

    配置方法: 找到配置文件~/.codeintel/config 或者 project_root/.codeintel/config(后者只针对某个项目进行配置,文件不存在时要手动创建), 编辑如下:

    {
        "Python": {
            "python": 'C://Python//python_env//py27_cronplus//scripts//python.exe',
            "pythonExtraPaths": ['C://Python//python_env//py27_cronplus//Lib//site-packages','other_folder_here'
            ]
        },
        "Python3": {
            "python": '/usr/bin/python3',
            "pythonExtraPaths": []
        } }

    配置完config文件后, 记得重启一次sublime.
    我的按键绑定设置为:

    [
         { "keys": ["ctrl+j"], "command": "code_intel_auto_complete" },
         { "keys": ["ctrl+f3"], "command": "goto_python_definition" }
    ]

     按键说明:
    1. ctrl+space, 自动完成;
    2. ctrl+j, 在状态栏显示call tip, 不是自动完成.  默认状态栏字体太小, 看起来很吃力, 可按下面方法修改一下.
    3. ctrl+F3, 跳转到定义处

    加大状态栏字体size
    如果是default theme, 需打开Default.sublime-theme文件, 找到"class": "label_control"配置项, 修改"font.size"为16.0,  如果是选择了其他theme, 需修改对应配置文件.
    比如文件位置, D:\program\Sublime Text 2.0.1\Data\Packages\Theme - Default\Default.sublime-theme
        {
        "class": "label_control",
        "color": [255, 255, 255],
        "shadow_color": [24, 24, 24],
        "shadow_offset": [0, -1],
        "font.size": 16.0
        },


    ===========================================
    Python标准库帮助提示   AndyPython
    ===========================================

    SublimeCodeIntel在status bar给出calltip提示, 如果你对要使用的函数不熟悉, 仅仅靠这点提示是远远不够的, 最好能显示完整的docstring信息. AndyPython就提供这个功能.

    安装后, 需要手工加一个快捷键 { "keys": ["shift+f1"], "command": "py_help" }

    将光标移到函数上, 按下shift+f1, 就能完整显示docstring.

    ===========================================
    Navigation history 插件
    ===========================================

    装了sublimecodeintel后, 按ctrl+F3后跳到函数的definition处了, 如何快速回到调用处? 有了这个插件就简单了.
     安装步骤:

    先下载文件,

    https://github.com/optilude/SublimeTextMisc/blob/master/navigationHistory.py

    然后将文件放到 sublime 的Packages目录中

    最后, 设置快捷键  
      { "keys": ["ctrl+alt+left"], "command": "navigation_history_back"},
      { "keys": ["ctrl+alt+right"], "command": "navigation_history_forward"}


    ===========================================
    代码完成和重构插件 SublimeRope 的配置(暂不用)
    ===========================================
    和 SublimeCodeIntel 不同, 这个插件只支持python语言.  SublimeRope 有一个配置project的向导, 用起来很方便. 经我测试SublimeRope 智能提示在很多情况下, 提示都不全, 所以推荐使用 SublimeCodeIntel 插件.
    网址: https://github.com/JulianEberius/SublimeRope

    Rope安装后, 即能够自动search当前你编辑的文件和PYTHONPATH中的symbol, 并提供auto-complete功能. 但不能search你的project下其他文件中的symbol. 我们可以将该项目转成Rope Project. 方法是: Ctrl+Shift+P, 然后输入"Rope: New Project", 会调出python project setup功能, rope提示我们设置项目路径和virtualenv路径.

    比如: 项目路径为 C:/Proj/eclipse_workspace/cron_plus/src
          virtualenv路径为 C:/Python/python_env/py27_cronplus   注意:不是scripts目录

    配置:
    1. 如要禁掉 sublime 自带的auto completion功能, 在Settings-User中设置suppress_default_completions,
    "suppress_default_completions":true
    2. 编辑文件/.ropeproject/config.py, 将你的python路径加进去.
    prefs.add('python_path', '/Users/ebi/dev/project/lib/python2.7/site-packages/')

    使用方法: Ctrl+Shift+P, 然后输入"Rope: New Project", 会调出python project setup功能
    Ctrl+Space, auto completion

    SublimeRope默认没有定义快捷键, 可插件作者使用ctrl+r再加其它键, 因为ctrl+r是 常用命令Goto Symbol的 快捷键, 所以, 我采用ctrl+q+其它键.
    ctrl+q+d,   goto_python_definition
    ctrl+q+h,   python_get_documentation
    ctrl+q+i,   python_auto_import
    ctrl+q+c,   python_regenerate_cache




    ===========================================
    SublimeREPL 插件--调试python程序
    ===========================================
    需要安装SublimeREPL插件,  https://github.com/wuub/SublimeREPL
    将我们项目的PYTHONPATH 加到 REPL user configuration 中, 文件名sublimeREPL.sublime-settings:
    {
        "default_extend_env": {"PYTHONPATH":"/Users/pyppo/Documents/workspacepython/pyCmdLiner/"}
    }
    另外 Run python script with pdb is defined by default in this way:
    /home/stav/.config/sublime-text-2/Packages/SublimeREPL/config/Python/Main.sublime-menu
    {"command": "repl_open",
     "caption": "Python - PDB current file",
     "id": "repl_python_pdb",
     "mnemonic": "d",
     "args": {
        "type": "subprocess",
        "encoding": "utf8",
        "cmd": ["python", "-i", "-u", "-m", "pdb", "$file_basename"],
        "cwd": "$file_path",
        "syntax": "Packages/Python/Python.tmLanguage",
        "external_id": "python"
        }
    }



    ===========================================
    Sidebar增强插件- SideBarEnhancements
    ===========================================
    仅能使用于Project, 同时需要将要在sidebar显示的目录加到project中, 菜单Project/Add folder to project. 完成这个步骤后, sidebar的右击菜单就多了很多菜单项.



    ===========================================
    快捷键管理 KeymapManager 插件
    ===========================================
    可集中管理各个Sublime Text2插件的快捷键
    http://www.welefen.com/manager-sublime-text-2-plugin-hot-key-with-keymapmanager.html
    https://github.com/welefen/keymapmanager
    使用方式: 通过ctrl + alt + k 或者通过顶部菜单 View -> Keymap Manager打开Pannel。



    ===========================================
    快捷键
    ===========================================
    CTRL+`, 打开 console,  该 console 的输入和输出是分开的, 输入区是一个单行输入框, 可以输入python 语句, 如果要一次执行多个语句, 语句之间必须用分号分隔, 分号后跟几个空格都无所谓, 不会出现indent不一致问题.
    ctrl+/ 单行注释, ctrl+shift+/块注释,sublime会自动根据语言选择注释方式
    ctrl+F,单文件查找
    ctrl+shift+F, 文件夹查找
    Ctrl+Shift+P, 打开命令列表
    Ctrk+K+B, 显示/隐藏 项目和文件夹Side bar
    CTRL+R, 在其后的输入框中可以展现一个文件的 outline
    Ctrl+M 光标移动至括号内开始或结束的位置
    鼠标滚轮, 列选择模式, 该功能极其一般
    ----
    Ctrl+F4, 关闭tab页
    Ctrl+N, 新建tab页
    Ctrl+O, 打开文件
    Ctrl+P, tab页跳转功能. 输入字母, 自动按照tab页的文件名或文件路径来匹配.
    Alt+Num, 切换到第几个tab页
    Ctrl+Alt, 前后切换tab页
    ---
    结构化代码的折叠: 将光标移到要折叠行的最左边(靠近行号处), 会出现一个向下的箭头, 点击就能折叠代码,
    任意代码的折叠: 选择代码, 然后 Ctrl+Shift+[;  展开折叠, 用Ctrl+Shift+]
    Ctrl+K+1, 折叠当前文件的所有的代码
    Ctrl+K+J, 展开所有的折叠
    ---
    安装SublimeCodeIntel后的快捷键:
    ctrl+space, 自动完成;
    ctrl+j, 在状态栏显示call tip, 不是自动完成.
    ctrl+F3, 跳转到定义处
    ---
    安装SublimeLinter后的快捷键:
    Ctrl+Alt+L, 检查代码



    ================================================
    参考文章
    ================================================
    http://wiki.ddenis.com/index.php?title=The_best_text_editor_is_Sublime_Text_2_or_it_doesn%27t_exist
    http://www.tuicool.com/articles/RBBJNz (http://outofmemoryblog.blogspot.fr/2012/08/python-development-with-sublime-text-2.html)
     

  • 相关阅读:
    ThinkJS框架入门详细教程(一)开发环境
    为什么要使用云盘?
    博客使用BOS上传图片
    网站第三方评论对比
    Angular定义服务-Learn By Doing
    原生Ajax总结
    JavaScript事件概览
    Angular学习-指令入门
    Angular中ngCookies模块介绍
    Angular Service入门
  • 原文地址:https://www.cnblogs.com/harrychinese/p/sublime_settings.html
Copyright © 2011-2022 走看看