Sublime 2 配置
在队友的推荐下,爱上了这款神一样的文本编辑器,熟练之后编辑效率真心是大幅提升啊。
一、Package Control
Sublime拥有很强大的插件功能,而自带的缺少个管理工具,这个包可以用来很方便地管理各种插件,
详细说明如下:
功能:安装包管理
简介:sublime插件控制台,提供添加、删除、禁用、查找插件等功能。一个好用的插件安装器。
使用:https://sublime.wbond.net/installation
安装方法:
1.CTRL+` ,调出控制台
2.粘贴以下代码至控制台
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')
回车安装。
完成以后输入CTRL+SHIFT+P 调出控制台,输入:pci (即Package Control Install的简写)即可调出控制菜单,之后就可以方便地通过这个工具来安装其他功能强大的插件包了。
1.ConvertToUTF8
支持中文显示
2.其他的......以后再加吧
二、Sublime 绑定编译器之后就能变成一个简易的IDE
(1)G++篇
在把编译器的地址加入系统环境变量之后,从CMD中就可以直接调用G++了。Sublime的强大功能就是可以预设在编辑器内调用命令行,Build和Run命令都是预先设置好的,只要CMD能用,不太需要增加其他设定即可调用。
Build 的快捷键是:CTRL+B
Run 的快捷键是:CTRL+SHIFT+B
测试了一下,默认状态下,编译可以直接用,但是调用Run的时候出了点问题,所以还需要再改下配置文件:
Preference -> Bowser Packages -> /C++/C++.sublime-build
默认的配置文件是这样的:
1 { 2 "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"], 3 "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", 4 "working_dir": "${file_path}", 5 "selector": "source.c, source.c++", 6 7 "variants": 8 [ 9 { 10 "name": "Run", 11 "cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"] 12 } 13 ] 14 }
问题出在最后一段,这里是通过bash进行运行的,而Windows下没有bash,运行当然会出错了,改成:
1 { 2 "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"], 3 "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", 4 "working_dir": "${file_path}", 5 "selector": "source.c, source.c++", 6 7 "variants": 8 [ 9 { 10 "name": "Run", 11 //"cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"] 12 "cmd": ["${file_path}/${file_base_name}"] 13 } 14 ] 15 }
即可。
可以运行了之后,然后又碰到个让人恼火的事情......这货只能在里面运行,不会像其他正常的IDE那样弹出一个CMD的窗口出来,也就是说,没有办法输入数据,这是个严重的问题。
几经周折,终于让我找到了解决的方案。
参考了:http://blog.csdn.net/lhshu2008/article/details/17582949 的方案:
改build文件为:
1 { 2 "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"], 3 "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", 4 "working_dir": "${file_path}", 5 "selector": "source.c, source.c++", 6 7 "variants": 8 [ 9 { 10 "name": "Run", 11 "cmd": ["${file_path}/${file_base_name}"] 12 //"cmd": ["cmd", "/c", "g++", "${file}", "-o", "${file_path}/${file_base_name}", "&&", "cmd", "/c", "${file_path}/${file_base_name}"] 13 }, 14 { 15 "name": "RunInCommand", 16 "cmd": ["cmd", "/c", "start", "cmd", "/c", "${file_path}/${file_base_name} & pause"] 17 }, 18 { 19 "name": "BuildAndRun", 20 "cmd": ["cmd", "/c", "g++", "${file}", "-o", "${file_path}/${file_base_name}", "&&", "start", "cmd", "/c", "${file_path}/${file_base_name} & pause"] 21 } 22 ] 23 }
然后修改快捷键配置:
Preference -> Key Bindings -- User
1 [ 2 { "keys": ["f10"], "command": "build", "args": {"variant": "RunInCommand"} } 3 ]
这样,按F10调用cmd窗口来运行程序,终于解决了
翻了下默认的配置,F7和CTRL+B的功能居然是一样的,浪费我一个快捷键啊....0.0
于是把默认的F7改为:
1 "keys": ["f7"], "command": "build", "args": {"variant": "BuildAndRun"}
即上面定义的编译后调出CMD窗口来运行
这样够了,,除了不能用debug,这个简易的IDE拥有超强的文本编辑功能,还是相当好用的。
(2)JAVA篇
由上面的G++配置启发,我想到了JAVA也可以这么改。JAVA本身就没有太好的IDE,往常可能大多数童鞋都是直接拿CMD调的比较多,既然sublime如此强大,改一下正好可以弥补JAVA的问题。
但是对sublime的调用语法了解太少,cmd指令部分差几个空格都会出问题。。。汗。。。另外一个是java运行的时候需要调用java.exe,而且后面不能输入绝对路径,试了好久才终于解决所有问题。
调了一晚上,终于把JAVA的配置部分也完成了。
首先还是系统环境变量配置,这里就不记了,配好之后要保证能从CMD里面调用javac和java就行
之后还是一样,在JAVA对应的文件夹里面找到JAVA的sublime编译配置文件,改成下面这样:
Preference -> Bowser Packages -> /JAVA/JavaC.sublime-build
1 { 2 "cmd": ["javac", "${file}"], 3 "file_regex": "^(...*?):([0-9]*):?([0-9]*)", 4 "selector": "source.java", 5 "encoding": "gbk", 6 "variants": 7 [ 8 { 9 "name": "Run", 10 "cmd": ["java", "${file_base_name}"] 11 }, 12 { 13 "name": "RunInCommand", 14 "cmd": ["cmd", "/c", "start", "cmd", "/c", "java ${file_base_name} & pause"] 15 }, 16 { 17 "name": "BuildAndRun", 18 "cmd": ["cmd", "/c", "javac", "${file}", "&&", "start", "cmd", "/c", "java ${file_base_name} & pause"] 19 } 20 ] 21 }
因为JAVA编译错误的时候会产生中文提示(CMD设为中文的情况下),所以加上encoding gbk这一句就不会出现因为字符码引起的错误了
键位设置等等其他的都跟G++一样,只是换了其中的指令部分(妈蛋,这里同一个语句放在前一个引号和后一个引号结果都会不一样,,,明明在最后的调试台上看到的指令一模一样,真不知道这是闹哪样,也就是在这里卡了很久,一直跟我报错)
CTRL+B 编译
CTRL+SHIFT+B sublime内运行
F10 调用CMD窗口运行
F7 编译并且调用CMD窗口运行
运行缓慢的eclipse之流可以去死了~~~~哈哈哈,大胜利~~~~!!!
三、用Snippet保存代码段
Sublime中有个很方便的功能是根据标签自动补全提前保存好的代码段。
Tools -> New Snippet 新建一个Snippet文件,能看到默认的模板内容是这样:
1 <snippet> 2 <content><![CDATA[ 3 Hello, ${1:this} is a ${2:snippet}. 4 ]]></content> 5 <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 6 <!-- <tabTrigger>hello</tabTrigger> --> 7 <!-- Optional: Set a scope to limit where the snippet will trigger --> 8 <!-- <scope>source.python</scope> --> 9 </snippet>
Sublime中的Snippet用XML语言描述,而且是一个文件对应一个Snippet。
CDSTA[] 中写上需要保存的代码段;
<tabTrigger></tabTrigger> 中间是触发条件
<scope></scope> 中间是指定这一个Snippet在什么语言中可以使用,不指定就是全局通用
下面这段:
1 <snippet> 2 <content><![CDATA[ 3 /* *********************************************** 4 ID : Chen Fan 5 LANG : G++ 6 PROG : ${1:} 7 ************************************************ */ 8 9 #include<iostream> 10 #include<cstdio> 11 #include<cstring> 12 13 using namespace std; 14 15 int main() 16 { 17 ${0:/* code */} 18 19 return 0; 20 } 21 22 ]]></content> 23 <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 24 <tabTrigger>jcf</tabTrigger> 25 <!-- Optional: Set a scope to limit where the snippet will trigger --> 26 <!-- <scope>source.python</scope> --> 27 </snippet>
写好之后,当我编辑C++文件时,输入jcf+TAB,即可迅速调出上面这段起始代码了,中间的 ${0:} 指定复制完成之后光标最后的位置
重点来了!
${0:}这种标号可以有多个!
试验了一下,默认是从1开始按照升序的顺序跳转(如果有多个标号),改完一个地方之后按下TAB即可跳到下一个标号,最后在0处结束。即上面的这段snippet,贴出来之后光标首先会停在PROG:后面,改好后按下TAB即可跳转至下面的代码部分,很多常用的代码段都可以用这种方式自定义添加,大大加快了代码编辑的速度。
然后还有个问题,Sublime默认给出的main()函数的Snippet是带argc和argv的,这就让有强迫症的我很不爽,然后又找不到默认的设置在哪,郁闷了好久。
好在后来终于找到了:
Preference -> Bowser Packages -> /C++ 这个目录下存放了所有默认指定了C++格式的snippet,改之即可。
其他格式专属的snippet应该也是在其对应的文件夹中
四、Vim模式
据说Sublime的作者原本打算做一个类Vim的编辑器的,在Sublime中也隐藏了一个Vim模式,可以兼容大部分的Vim操作。
开启的方法很简单:
Preference -> Settings -- user
调出设置文件,初始的时候应该里面只有一句话:
"ignored_packages": [Vintage]
这是是一个包的禁用列表,其中的Vintage应该就是VIM的启动组件,将其从列表中删掉即可
编辑模式下按ESC进入VIM模式
转载于:https://www.cnblogs.com/jcf94/p/4003286.html
Sublime 2 配置相关推荐
- Sublime Text3配置Lua运行环境
Sublime Text3配置Lua运行环境 前言 要问现在哪个编译器最能扛得住潮流,要数Sublime Text3了,由于它的轻量,插件丰富,美观,造就了一大批粉丝(本菜鸡也是哦) 在以前的工作中使 ...
- python保存快捷键_超详细的Sublime Text配置python教程
概述 前段时间有朋友问我一个关于Sublime text配置Python解释器的问题,可能是初学者,对这方面还不是很懂,想使用快捷键但是徒劳一场,因为缺少Python解释器,直接按下快捷键Ctrl+B ...
- 【Python】Mac下Sublime Text3配置Python3开发环境
我采用的第二种方案 1 [Python]Mac下Sublime Text3配置Python3开发环境 https://blog.csdn.net/qq_33304418/article/details ...
- Sublime Text3 配置LaTex编辑器
Sublime Text3 配置LaTex编辑器 所用到的工具: Sublime Text3 https://www.sublimetext.com/ package control https:// ...
- Sublime Text配置及运行
1.如果设置了执行命令python时启动的是python3,那安装好sublime后不需要特别做配置:如果是设置了执行命令python3来启动python3,那就需要弄下sublime的配置. 2.S ...
- sublime text配置fcitx输入法
sublime text配置fcitx输入法 环境:Fedora20 输入法:fcitx sublime text:version 3 安装fcitx输入法 这个看前面教程 编译sublime-imf ...
- sublime python配置_sublime python环境配置
1.安装sublime,安装版.免安装版均可 2.打开sublimeText 在菜单栏找到Tools-->编译系统-->新编译系统 在新的配置文件中输入如下配置 { "cmd&q ...
- c# 指定打开某个路径下的CMD_(win10下sublime通过配置JSON调用MATLAB直接运行程序)(转载)...
SUBLIME作为文本编辑器,本身并不具备仿真功能.但通过配置JSON,可以调用任一程序. https://blog.csdn.net/solinger/article/details/8945016 ...
- 用linux运行sublime,在Deepin Linux上用Sublime Text3配置GoLang开发环境
安装git 因为golang是通过git来管理远程包的,所以我们首先要安装git.具体可参考官网. ➜ tonny@tonny-pc ~ sudo apt-get install git ➜ tonn ...
最新文章
- WP7-网络-读取网页源码
- KDE Web开辟工具──KDE-Webdev
- 【select模块】select IO多路复用和select实现FTP
- [蓝桥杯2019初赛]旋转-找规律
- 当飞猪遇上 Serverless | 云原生 Talk
- 【LeetCode】剑指 Offer 33. 二叉搜索树的后序遍历序列
- Day_1_Python_循环和格式化
- 非常可乐(广度搜索)
- 于的繁体字有几种写法_“二”的繁体字有几种写法
- android信鸽推送demo_腾讯信鸽推送(java版)
- 小米笔记本Air13.3扩充硬盘
- e书制作工具和反编译工具
- 《ArcGIS10.2》 Part1 在地图上标注地名或坐标
- Java开发面试必问项。标识符、字面值、变量、数据类型,该学了
- pada aws configuration
- 针对手机连WIFI微信公众号等图片加载缓慢问题——解决方案
- P014魔改8G显存
- 机器学习工具包SHOGUN用户文档翻译完成
- linux jenkins部署脚本,使用Jenkins 自动部署发布
- 新浪微博互粉 http://weibo.com/51centos
热门文章
- 【laravel】我和laravel的旅程
- 高并发编程基础(java.util.concurrent包常见类基础)
- Webview离线功能(优先cache缓存+cache缓存管理)
- 【转】android手势处理揭秘
- ZOJ 3829 Known Notation(贪心)
- Delphi Form Designer (窗体设计器)之二
- 正尝试安装的adobe flash player不是最新版本
- linux 查找目录或文件
- 落地华东总部、上线创新云、签约AIoT产业基金……京东云南京“新动作”...
- codeforces#254DIV2解题报告