Sublime for C++
2016-01-06 14:18
190 查看
本教程是 Windows下使用Sublime Text 3调试/运行 C/C++ 程序
新版的ST3配置好环境变量后可以直接支持C++的编译运行
这里配置可以弹出cmd对话框
部分转载自:Sublime插件:C语言篇
软件:Sublime Text 3 Build3065 x86
编译软件:MinGW
我用的是流风清音修改的32位版本,64位貌似不稳定。
下载地址:http://haojian138.blog.163.com/blog/static/212643110201393010438357/
下载:MinGW 地址:http://sourceforge.net/projects/orwelldevcpp/files/Compilers/MinGW/MinGW%204.8.1.7z/download
个人网盘下载地址:http://pan.baidu.com/s/1qWlvAgs
http://pan.baidu.com/s/1eQIPZaE
设置环境变量。右击我的电脑,属性–>高级–>环境变量。
在系统环境变量 PATH 里添加 C:\MinGW\bin(如果里面还有其他的变量,记得添加英文分号;)
新建 LIBRARY_PATH 变量,在值中加入 C:\MinGW\lib。(标准库位置)
新建 C_INCLUDEDE_PATH 变量,值设为 C:\MinGW\include。
测试MinGW是否安装成功。Win+R,运行cmd命令行,在cmd窗口中执行g++ -
以管理员身份运行sublime text 3, 进入菜单工具-编译系统-新编译系统
输入如下内容,并将文件保存为CPP.sublime-build(注意不要修改文件名和大小写)。
Ubuntu 版
测试 编译之前在工具—>编译系统 选择CPP。自己在SublimeText写一个C++程序,
Ctrl + B 编译
Ctrl + Shift + B 编译后在CMD里运行。
SublimeLinter 强大的代码检测的工具
SideBarEnhancements 加强在侧栏目录树中右键的选项
Evernote 用Sumlime写Markdown格式的笔记,同步到Evernote
DocBlockr 快速生成注释
SublimeCodeIntel 强大的代码提示插件, 用上你就会喜欢上他。
输入 /** 然后按回车
模板库的代码文件要放到同目录下,文件名不能有中文,这个Bug可能以后会改吧
还有一个 CTags for PHP插件没什么用)。
注意安装好插件后需要安装ctags命令,将ctags.exe文件放在一个环境变量的文件夹。
或者在 Settings-Default 中添加: “command”: “/user/bin/ctags”,
打开cmd, 输入ctags,如果有这个命令,证明成功了。
ubuntu下安装运行命令:sudo apt-get install exuberant-ctags
然后在sublime项目文件夹右键, 会出现Ctag:Rebuild Tags 的菜单。
点击它,然后会生成.tags的文件。
然后在你代码中, 光标放在某个函数上, 点击Ctrl + Shift + 鼠标左键 就可以跳转到函数声明的地方。
Ctrl + Shift + 鼠标左键 回到原来位置
带上TODO的本文会被PlainTasks识别
例如新建 todolist.txt 的文件
Ctrl + Alt + D 在新窗口中比对
下面是官方介绍
新版的ST3配置好环境变量后可以直接支持C++的编译运行
这里配置可以弹出cmd对话框
部分转载自:Sublime插件:C语言篇
环境
系统:Windows 8.1 64bit软件:Sublime Text 3 Build3065 x86
编译软件:MinGW
下载
下载Sublime Text 3我用的是流风清音修改的32位版本,64位貌似不稳定。
下载地址:http://haojian138.blog.163.com/blog/static/212643110201393010438357/
下载:MinGW 地址:http://sourceforge.net/projects/orwelldevcpp/files/Compilers/MinGW/MinGW%204.8.1.7z/download
个人网盘下载地址:http://pan.baidu.com/s/1qWlvAgs
http://pan.baidu.com/s/1eQIPZaE
配置环境
解压MinGW至目标目录,本次安装的解压目录为C:\MinGW设置环境变量。右击我的电脑,属性–>高级–>环境变量。
在系统环境变量 PATH 里添加 C:\MinGW\bin(如果里面还有其他的变量,记得添加英文分号;)
新建 LIBRARY_PATH 变量,在值中加入 C:\MinGW\lib。(标准库位置)
新建 C_INCLUDEDE_PATH 变量,值设为 C:\MinGW\include。
测试MinGW是否安装成功。Win+R,运行cmd命令行,在cmd窗口中执行g++ -
以管理员身份运行sublime text 3, 进入菜单工具-编译系统-新编译系统
输入如下内容,并将文件保存为CPP.sublime-build(注意不要修改文件名和大小写)。
{ "cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "working_dir": "${file_path}", "encoding":"cp936", "selector": "source.c", "variants": [ { "name": "Run", "cmd": ["cmd","/C","start", "cmd","/c", "${file_path}/${file_base_name}.exe & pause"] } ] }
Ubuntu 版
{ "shell": true, "cmd": ["g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && ./\"${file_base_name}\""], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "working_dir": "${file_path}", "selector": "source.c, source.c++", "variants": [ { "name": "Run", "cmd": "./\"${file_base_name}\"" } ] }
测试 编译之前在工具—>编译系统 选择CPP。自己在SublimeText写一个C++程序,
Ctrl + B 编译
Ctrl + Shift + B 编译后在CMD里运行。
插件
必装插件
Emmet 提高HTML & CSS3编写效率SublimeLinter 强大的代码检测的工具
SideBarEnhancements 加强在侧栏目录树中右键的选项
Evernote 用Sumlime写Markdown格式的笔记,同步到Evernote
DocBlockr 快速生成注释
SublimeCodeIntel 强大的代码提示插件, 用上你就会喜欢上他。
ConvertToUTF8
ConvertToUTF8是用来把GB2312和GBK文件转换成UTF8编码的,作为一个程序员,使用UTF-8编码来保存是一个好习惯,尽量不要使用GB2312和GBK编码来写代码Codecs33
有时候碰到GB2312的文件用了ConvertToUTF8还是会乱码,这时候可以装个Codecs33. eg:图形学的课件中就有一个Alignment 等号对齐
选中并按 Ctrl + Alt + A 就可以使其按照等号对齐SublimeAStyleFormatter 代码格式化
Ctrl + Alt + FC Improved 更加人性化的C语言着色方案。
View -> Syntax -> Open all with current extension as -> C ImprovedDocBlockr 生成大块的注释
自动生成大块的注释,并且可以用tab在不同内容之间切换,很爽的输入 /** 然后按回车
AllAutocomplete 增强版自动提示
Sublime自带的可以对当前文件中的变量和函数名进行自动提示,但是AllAutocomplete可以对打开的所有文件的变量名进行提示,增强版的代码自动提示符模板库的代码文件要放到同目录下,文件名不能有中文,这个Bug可能以后会改吧
CTags 跳转到指定函数声明
ctags 这个插件能跨文件跳转,跳转到指定函数声明的地方,使用package control 搜索ctags 进行安装(安装ctags插件就可以了,还有一个 CTags for PHP插件没什么用)。
注意安装好插件后需要安装ctags命令,将ctags.exe文件放在一个环境变量的文件夹。
或者在 Settings-Default 中添加: “command”: “/user/bin/ctags”,
打开cmd, 输入ctags,如果有这个命令,证明成功了。
ubuntu下安装运行命令:sudo apt-get install exuberant-ctags
然后在sublime项目文件夹右键, 会出现Ctag:Rebuild Tags 的菜单。
点击它,然后会生成.tags的文件。
然后在你代码中, 光标放在某个函数上, 点击Ctrl + Shift + 鼠标左键 就可以跳转到函数声明的地方。
Ctrl + Shift + 鼠标左键 回到原来位置
sublimecodeintel 代码补全 函数跳转
Alt + 鼠标左键 也能和ctags一样跳转到函数声明的地方。SideBarFolders:打开的文件夹都太多了,再用这个来管理文件夹
安装后会在菜单栏多出Folders来管理文件夹PlainTasks:又是一个插件顶一个软件的东东
TaskPaper 的功能 自行百度带上TODO的本文会被PlainTasks识别
例如新建 todolist.txt 的文件
Search Stack Overflow 直接在Sublime中打开浏览器搜索Stackoverflow
Ctrl + Shift + P 打开 Stackoverflow: search form input,输入问题,自动打开浏览器Sublimerge Pro 代码比对工具
先复制要比对的代码Ctrl + Alt + D 在新窗口中比对
下面是官方介绍
In file view: [ctrl]+[alt]+[d] - display Quick Panel with Sublimerge commands available for current view In diff view: [/] - display Differences Navigator [down] - select the next difference (only single selection is possible) [up] - select the previous difference (only single selection is possible) [left] - merge selected change(s) from right to left [right] - merge selected change(s) from left to right [shift]+[left] - merge all changes from right to left [shift]+[right] - merge all changes from left to right [ctrl]+[enter] - toggle edit mode (currently in 2-way diff view only) [ctrl]+[alt]+[left click] - select/deselect change block (multiple selection is possible) [ctrl]+[shift]+[left click] - merge selected changes from left to right [ctrl]+[shift]+[right click] - merge selected changes from right to left In directories diff view: [enter] - enter subdirectory (if differs) or diff selected text file [down] - select next file/directory [up] - select previous file/directory or navigate one level up [ctrl]+[alt]+[left click] - select/deselect change block (multiple selection is possible) [right] - apply selected change from left to right [left] - apply all changes from left to right [shift]+[left] - apply selected change from right to left [shift]+[right] - apply all changes from right to left
相关文章推荐
- Eigen: C++开源矩阵计算工具——Eigen的简单用法
- C++拷贝构造函数的三种情况
- 彻底搞定C语言指针详解
- 失落的C语言结构体封装艺术
- Sicily 1620. SCVs and minerals 星际争霸简单策略
- [2, Medium, C++] Add Two Numbers
- C语言指针
- C++Builder 解决绘图闪动问题
- C++入门(9):类的继承(2)
- C++中多维数组传递参数
- C++如何通过一个响应事件接受多个控件消息
- [1, Medium, C++] Two Sum
- 【C语言提高37】结构体元素做函数参数与结构指针做函数参数
- C++随机数重复的问题
- C语言学习之关键字第二讲
- c/c++中将git当前版本信息编译到可执行文件中
- C++11多线程(十三):《C++11 内存模型一:介绍》
- C++11多线程(十二):《atomic 类型详解四:C 风格原子操作介绍》
- iOS之 C++与oc混编
- C++11多线程(十一):《atomic类型详解二:std::atomic》