• sublime使用经验汇总


    1. source insight 会对某个修改频繁的文件做多次备份。我们用sublime进行多个文件搜索时,需要把备份的文件排除在外。

    e:workcodesourcev, *.h, *.cpp, -/*sourceev.si4project/*

    这是一个例子。如果喜欢用别的编辑工具,比如notepad++,它可能生成备份文件 *.orig,也可以加上

    -*.orig

    如果不想sourceev.si4project显示在project explorer中,可以右键..., hide it。

    可以我对目录排除用的是 -e:....source..., 不行,换成 -*sourceev.si4project*, 还是不行。看来必须用 "/",才行。正则表达式就没有支持""了。

    以后有别的经验,逐个放上来。

    2. linux下安装sublime后,如果是在服务器上安装的,记得周期性的把配置目录部分保存起来。保不齐哪天别人把系统重装了。

    3. 装astyle插件,这样不用设法安装astyle这个工具了,否子要自己编译安装,稍微麻烦点。写代码时,可以过段时间,ctrl+shift+F,给代码格式化下。

    4. 另存为.sublime-project后,可以 exclude一些文件或者文件夹。下面是一个例子。

    {
        "folders":
        [
            {
                "path": "wwwroot",
                "folder_exclude_patterns": ["images"]
            },
            {
                "path": "c:wwwrootproject1assets",
                "name": "Project 1",
                "file_exclude_patterns": ["*.php"]
            }
        ],
        "settings":
        {
            "tab_size": 8
        }
     }

    用的一款3143的注册码,2018-6可用:
    TwitterInc
    200 User License
    EA7E-890007
    1D77F72E 390CDD93 4DCBA022 FAF60790
    61AA12C0 A37081C5 D0316412 4584D136
    94D7F7D4 95BC8C1C 527DA828 560BB037
    D1EDDD8C AE7B379F 50C9D69D B35179EF
    2FE898C4 8E4277A8 555CE714 E1FB0E43
    D5D52613 C3D12E98 BC49967F 7652EED2
    9D2D2E61 67610860 6D338B72 5CF95C69
    E36B85CC 84991F19 7575D828 470A92AB
     It seems not work. 
     
    3126版本的可以用
     
    Ryan Clark
    Single User License
    EA7E-812479
    2158A7DE B690A7A3 8EC04710 006A5EEB
    34E77CA3 9C82C81F 0DB6371B 79704E6F
    93F36655 B031503A 03257CCC 01B20F60
    D304FA8D B1B4F0AF 8A76C7BA 0FA94D55
    56D46BCE 5237A341 CD837F30 4D60772D
    349B1179 A996F826 90CDB73C 24D41245
    FD032C30 AD5E7241 4EAA66ED 167D91FB
    55896B16 EA125C81 F550AF6B A6820916

     3211的

    Member J2TeaM
    Single User License
    EA7E-1011316
    D7DA350E 1B8B0760 972F8B60 F3E64036
    B9B4E234 F356F38F 0AD1E3B7 0E9C5FAD
    FA0A2ABE 25F65BD8 D51458E5 3923CE80
    87428428 79079A01 AA69F319 A1AF29A4
    A684C2DC 0B1583D4 19CBD290 217618CD
    5653E0A0 BACE3948 BB2EE45E 422D2C87
    DD9AF44B 99C49590 D2DBDEE1 75860FD2
    8C8BB2AD B2ECE5A4 EFC08AF2 25A9B864

    /etc/hosts中这样设置

    #for sublime
    127.0.0.1 license.sublimehq.com
    127.0.0.1 45.55.255.55
    127.0.0.1 45.55.41.223
    #end 

    关闭 Sublime Text 3 自动更新

     
    打开Submine Text,找到Preferences -> Settings-User
    写入 "update_check":false,

    Package control install无法使用

    出现There are no packages available for installation这样的错误,参考 https://blog.csdn.net/zknxx/article/details/52685094,
    在settings-user里指定 channel_v3.json路径。我的是这样的:

    "channels":
    [
    "C:\Editor\Sublime Text 3\channel_v3.json"
    ],

    channel_v3.json 我放了一份在网盘上。

    ubuntu16.04/18.04下无法输入中文

    参考 https://blog.csdn.net/u012300744/article/details/80339452解决。简述就是:

    git clone https://github.com/lyfeyaj/sublime-text-imfix.git

    cd ~/sublime-text-imfix
    sudo cp ./lib/libsublime-imfix.so /opt/sublime_text/
    sudo cp ./src/subl /usr/bin/

    我实际是装在了/opt/sublime_text_3下,修改 /usr/bin/subl文件:

    export LD_PRELOAD=/opt/sublime_text_3/libsublime-imfix.so
    exec /opt/sublime_text_3/sublime_text "$@"

    以后启动用subl启动就行了。具体打开某个文件,用 sublime_text还是会打开已经有的sublime。

    參見 Ubuntu 下Sublime安装配置及搭建轻量级C/C++IDE,摘录如下

    1. 安装

    
    
    sudo add-apt-repository ppa:webupd8team/sublime-text-3    
    sudo apt-get update 
    sudo apt-get install sublime-text

    2. Sublime Text 3配置及插件

    安装好Package Control就可以安装插件了,Sublime最强大的它丰富的插件
    Ctrl+Shift+P找到Package Control: Install Package(输入pki就能找到),按Enter确定可能会有点慢,可以看到下面状态栏左边有个’=’在左右移动就说明在就加载中
    加载出来就可以搜索安装插件了

    有下面这些有用的插件可以安装

    • BracketHighlighter 引号高亮匹配
    • C++ Snippets C++代码补全
    • Chinese​Localization 汉化
    • MarkDown Editing 看名字就知道是干嘛的了
    • MarkDown Preview 看名字就知道是干嘛的了
    • MarkDown TOC 加入目录,有的Markdown不支持[TOC]语法的就可以用这个
      上面两个软件要Sublime自带的markdown系统,设置-ignored-packages里面加一个Markdown(系统自带Markdown)
        "ignored_packages":
        [
            "Markdown",
        ],

    但我觉得这个并不好用,直接用stackedit.io/editor这个网页版的Markdown编辑器就好了,功能强大,虽然是个网页,但可以离线打开,可以云盘同步自动保存到云盘,直接可以Publish到博客(但只支持一些国外的博客),保存成pdf虽然要收费但是可以点开StackEdit Viewer然后用Chrome打印功能存成PDF,排版完美,感觉是良心开发者故意留的

    • ConvertToUTF8 编码转换
    • SublimeLinter
      静态代码校验,超强大,能检查数组越界等编译不能检查出来的bug

      1. 安装sublimeLinter 和 SublimeLinter-cppcheck
      2. 安装cppcheck(sudo apt-get cppcheck,自己下载的安装包倒腾了好久都没弄好,编译安装好了后运行一直缺少文件,最后发现可以直接apt-get,md,可以apt-get你给我个包让我自己编译安装???)
      3. 打开SublimeLinter的linter和linting(Ctrl+Shift+P找到这两个选项)
      4. 在tools/SublimeLinter里设置Linter Mode为load&save(在载入和保存代码的时候检查), Mark Style设置成自己喜欢的
    • SublimeAStyleFormatter 代码格式化,一键整理代码,主要是括号,空格和缩进等的格式化,能力有限,但一些特殊情况下还是能派上大用场的,Ctrl+Alt+F格式化

    3. Sublime Text 3配置C/C++开发环境

    虽然直接Ctrl-B就能编译,但Sublime内置的编译系统并不好用
    可以自己在编译系统里面新建一个自己的编译系统
    点开新建编译系统,将这一段复制进去,保存为My_C++

    {
    "cmd" : ["g++", "-std=c++14", "$file_name", "-o", "${file_base_name}", "-lm", "-Wall"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector" : "source.c, source.c++",
    "shell":false,
    "working_dir" : "$file_path",
    
    "variants":
    [
        {
            "name": "My_Run",
            "cmd": ["gnome-terminal", "-e", "bash -c "'${file_path}/${file_base_name}' ; read -p '
    Press any key to continue...'""]
        }
    ]
    }

    这样就多出了一个My_C++的编译选项了,My_C++是编译,My_C++ Run是打开终端并运行编译好的程序

    添加快捷键
    打开首选项的快捷键设置,加入

    [
        { "keys": ["f8"], "command": "build" },
        { "keys": ["f9"], "command": "build", "args": {"variant": "My_Run"} },
    ]

    F8编译,F9运行,原来Sublime F9是一键排序代码,就是把每一行按字典序重排,并没有什么用,覆盖掉算了

    编辑器加入到菜单右键

    简单摘录如下,

    ~/. local /share/nautilus/scripts

    在该目录下创建一个文件,命名“Sublime”(名字可以随意)。文件内容如下:

    #!/bin/bash
    
    exec  "<把这里替换成Sublime的全路径>"  $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS

    执行命令

    chmod +x Sublime

    geany也是这样处理。

    sublime配合yaml-cpp时的编译错误怎么解决。我用的自定义编译的c++17.sublime-build文件是这样的

    {
      "cmd": [
        "g++",
        "-std=c++17",
        "-lyaml-cpp",
        "$file_name",
        "-o",
        "${file_base_name}",
        // "-lm",
        "-Wall"
      ],
      "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
      "selector": "source.c, source.c++",
      "shell": false,
      "working_dir": "$file_path",
      "variants": [
        {
          "name": "My_Run",
          "cmd": [
            "gnome-terminal",
            "-e",
            "bash -c "'${file_path}/${file_base_name}' ; read -p '
    Press any key to continue...'""
          ]
        }
      ]
    }

    命令行下编译没有问题,但sublime编译下就有问题,最新版的sublime也不行。把里面的g++改为clang++就可以了。大概是sublime和g++中间接口的问题吧。具体原因网上无法搜到。

    shell脚本美观

    参考 https://github.com/chiefbiiko/shfmt-install,安装插件 pretty shell, 它依赖的shfmt如下安装。

    curl -fsSL https://raw.githubusercontent.com/chiefbiiko/shfmt-install/v0.1.0/install.sh | sh -s /usr/local/bin v2.6.4
    shfmt -version

    编程字体

    我是参见What is the best alternative to Fira Code,windows下选择了inconsolada,linux下选择了fira code,挺好看的。

    我的windows中sublime的设置是这样的。

    {
        "bold_folder_labels": true,
        "caret_style": "phase",
        "default_encoding": "UTF-8",
        "ensure_newline_at_eof_on_save": true,
        "env":
        {
            "PYTHONIOENCODING": "utf8"
        },
        "font_options": ["dlig","subpixel_antialias"],
        "font_face": "Inconsolata",
        "font_size": 12,
        "highlight_line": true,
        "highlight_modified_tabs": true,
        "http_proxy": "http://127.0.0.1:50445",
        "https_proxy": "http://127.0.0.1:50445",
        "ignored_packages":
        [
            "Markdown",
            "Vintage"
        ],
        "line_padding_bottom": 0,
        "line_padding_top": 0,
        "open_files_in_new_window": false,
        "rulers":
        [
            80,
            100
        ],
        "save_on_focus_lost": true,
        "show_encoding": true,
        "show_full_path": true,
        "spell_check": false,
        "tab_size": 4,
        "trim_trailing_white_space_on_save": true,
        "word_wrap": true
    }

     插件Clickable URLs

    参见https://www.xknote.com/ask/60d1eb00ce204.html,摘录就是需要修改插件配置“mouse binding - user”,内容是:

    [
    // Open the URL in default browser. 
    {
        "button": "button1", "count": 2,
        "press_command": "open_url_under_cursor"
    }
    ]
  • 相关阅读:
    HTTP客户端识别与Cookie机制
    javascript模式之模块模式
    js类式继承模式学习心得
    关于html自闭合标签要不要加空格和斜杠的问题?
    分享两件有趣的事情
    PS Web切图界面设置
    这是什么
    关于前后端分离我的理解
    模块化方案esl以及amd的依赖方式
    node 内存管理相关
  • 原文地址:https://www.cnblogs.com/tangxiaosheng/p/7505693.html
Copyright © 2020-2023  润新知