Sublime Text 3 最性感的编辑历史
↑ ↑ ↑ ↑ ↑ 请参阅文件夹 ↑ ↑ ↑ ↑ ↑
下载 / 装
windows / MAC OS
官网下载。双击安装,这个都会吧~
linux
linux下安装。一种办法是从官网下载 tar.bz 。手动安装。
这里介绍用 apt-get 自己主动安装方法:
sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get install sublime-text-dev命令结束后,一切搞定!
看看应用列表里是不是出来个亲切的图表?(尽管这个图标一点也不亲切。
。)
改动siderbar颜色
Windows
改动 主题文件: /Pristine Packages/Theme - Default.sublime-package/Default.sublime-theme
背景色
{
"class": "sidebar_tree",
"row_padding": [8, 3],
"indent": 12,
"indent_offset": 17,
"indent_top_level": false,
"layer0.tint": [30, 30, 30],
"layer0.opacity": 1.0,
"dark_content": false
},文字{
"class": "sidebar_label",
"color": [150, 150, 150],
"font.bold": false
// , "shadow_color": [250, 250, 250], "shadow_offset": [0, 0]
},切割线{
"class": "sidebar_container",
"layer0.tint": [10, 10, 10],
"layer0.opacity": 1.0,
"layer0.draw_center": false,
"layer0.inner_margin": [0, 0, 1, 0],
"content_margin": [0, 0, 1, 0]
},
事实上RGB颜色大家都明确。能够改成自己喜欢的样子。
PS:备份原来的东西的时候一定要把类型名改了,由于sublime会去载入全部的包。
另:感谢亦翔百科给予非常大帮助
Linux
注意一下Sublime存放的位置就能够:/usr/lib/sublime-text-2假设是安装包安装。通常是 /opt 下。
MAC OS X
OS下有些麻烦,不能直接改动,须要点工具读写文件,我是在win下改好后再覆盖过来的。
安装插件
同vim一样,sublime本身只是仅仅是一个编辑器。要想把它改装成IDE,须要安装各种插件;当然,即便你不须要插件它本身的强大也能够给你带来意想不到的惊喜!
首先搞定 插件管理器
顾名思义是用来管理插件的工具。先安上它再搞别的插件就方便了。安装方法:选择菜单 view->show console ,这时候你就能够看到下边出现了 控制台窗体。(显示框+输入框)这里能够运行python代码输入下面代码。就能够安装好 插件管理器(package control)了插一句:非常多地方的代码为 import urllib2,os; 这个是python2.x的代码,在python3.x里已经换成了 import urllib.request,os; 假设你是Sublime2.0及下面的版本号,请自行改动代码。import urllib.request,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib.request.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())接下来一定记住先重新启动软件!按住ctrl+shift+p能够去装自己喜欢的插件了
装完插件管理器,你就能够去找自己须要的插件然后安装。
有一些站点会总结一些不错的插件。你能够去试试。
当然我更希望你先看已看我写的。
。
高速编码类
Emmet :跟Zen Coding一样。可是ST3已不再支持 Zen,这个也是一样的,可是要注意先禁掉 sublime 本身的自己主动补全功能。在Preferens -> Setting-User 里加入
代码格式化
代码格式化包含各种语言的,这里列举几个:(全部的插件都能够在 Package control 里直接搜索得到)
C / C++:SublimeAStyleFormatHTML:Tag
List:
配置编译环境
控制台输入(以C++为例)
原理非常easy。就是在外部建立一个用来运行文件的 bat,然后调用它。注意的就是,须要用start 来打开一个新窗体,同一时候须要 pause 一下来看结果,当中非常蛋疼的就是Sublime默认后台运行你的start,假设你的pause和start放在一个文件了pause对start %1 的文件是无效的,因此事实上须要建立两个文件。
注意环境变量。
。。(关于什么是环境变量。三两句解释不清楚,最好自己百度一下。)
配好之后个人感觉控制台输入意义不是非常大,做题的话都是从文件读入,做开发基本不须要读入。So~ 各位谨慎。
MyCRun.bat
@echo off
%1
echo.
echo -------------------
pause
exitMyCallRun.bat
@start MyCRun %1配置文件在 Sublime Text 3\Packages\C++.sublime-package 。 先备份一下。
改动里面的 C++.sublime-build 为
{
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++", "variants":
[
{
"name": "Run",
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && MyCallRun \"${file_path}/${file_base_name}.exe\"" // 事实上就是这里加了个MyCallRun
}
]
}C/C++
Sublime Text 3 默认配置好了 c++ 。可是须要你自己把 gcc 文件夹加入进环境变量
Java
Sublime Text 3 默认仅仅执行了 javac,须要自己加入执行。苦逼看不懂 Sublime 的命令格式,于是把 javac 改成一个自己的bat。(感觉也能够像C++那样用 && 连起来)在命令行可直接訪问的地方建立 myJRun.bat (我直接放在 jdk/bin 下了)
@ECHO OFF
cd %~dp1
ECHO Compiling %~nx1...
IF EXIST %~n1.class (
DEL %~n1.class
)
javac %~nx1
IF EXIST %~n1.class (
ECHO Running...
ECHO ----------------------OUTPUT----------------------
java %~n1
)注意不能使用 cls 。
改动java的编译选项(备份好原来的)。
文件夹:Packages/Java.sublime-package/JavaC.sublime-build{
"shell_cmd": "myJRun.bat \"$file\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}这样以后写的Java代码点 Build 就会自己主动执行了。
这样的办法不能跨平台,再研究研究Sublime自己的方式。Go
用 Sublime 开发 golang 的环境非常easy,仅仅须要安装一个 GoSublime 就差点儿相同了。
Ubuntu下输入中文
參考整理 这里
须要自己编译一个文件载入执行。所以须要用到一些编译环境
步骤1:安装gtk环境
sudo apt-get install libgtk2.0-dev pkg-config另外貌似不支持ibus,我用的 fcitx+sogou
步骤2:保存以下这个文件到 sublime_imfix.c
/*
sublime-imfix.c
Use LD_PRELOAD to interpose some function to fix sublime input method support for linux.
By Cjacker Huang <jianzhong.huang at i-soft.com.cn> gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
LD_PRELOAD=./libsublime-imfix.so sublime_text
*/
#include <gtk/gtk.h>
#include <gdk/gdkx.h>
typedef GdkSegment GdkRegionBox; struct _GdkRegion
{
long size;
long numRects;
GdkRegionBox *rects;
GdkRegionBox extents;
}; GtkIMContext *local_context; void
gdk_region_get_clipbox (const GdkRegion *region,
GdkRectangle *rectangle)
{
g_return_if_fail (region != NULL);
g_return_if_fail (rectangle != NULL); rectangle->x = region->extents.x1;
rectangle->y = region->extents.y1;
rectangle->width = region->extents.x2 - region->extents.x1;
rectangle->height = region->extents.y2 - region->extents.y1;
GdkRectangle rect;
rect.x = rectangle->x;
rect.y = rectangle->y;
rect.width = 0;
rect.height = rectangle->height;
//The caret width is 2;
//Maybe sometimes we will make a mistake, but for most of the time, it should be the caret.
if(rectangle->width == 2 && GTK_IS_IM_CONTEXT(local_context)) {
gtk_im_context_set_cursor_location(local_context, rectangle);
}
} //this is needed, for example, if you input something in file dialog and return back the edit area
//context will lost, so here we set it again. static GdkFilterReturn event_filter (GdkXEvent *xevent, GdkEvent *event, gpointer im_context)
{
XEvent *xev = (XEvent *)xevent;
if(xev->type == KeyRelease && GTK_IS_IM_CONTEXT(im_context)) {
GdkWindow * win = g_object_get_data(G_OBJECT(im_context),"window");
if(GDK_IS_WINDOW(win))
gtk_im_context_set_client_window(im_context, win);
}
return GDK_FILTER_CONTINUE;
} void gtk_im_context_set_client_window (GtkIMContext *context,
GdkWindow *window)
{
GtkIMContextClass *klass;
g_return_if_fail (GTK_IS_IM_CONTEXT (context));大
klass = GTK_IM_CONTEXT_GET_CLASS (context);
if (klass->set_client_window)
klass->set_client_window (context, window); if(!GDK_IS_WINDOW (window))
return;
g_object_set_data(G_OBJECT(context),"window",window);
int width = gdk_window_get_width(window);
int height = gdk_window_get_height(window);
if(width != 0 && height !=0) {
gtk_im_context_focus_in(context);
local_context = context;
}
gdk_window_add_filter (window, event_filter, context);
}步骤3:编译之
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
步骤4:执行
事实上到这里就能够执行了。试试LD_PRELOAD=./libsublime-imfix.so sublime_text应该就成功了吧,可是不能每次都这么输命令,我是这么处理的
- 把 sublime_imfix.so 放在sublime安装文件夹 (我的在 /opt/sublime_text/)
- 在 /usr/local/bin 或者其它PATH下 新建一个文件Subl写入:
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so /opt/sublime_text/sublime_text- 新建一个Launcher命令为 /usr/local/bin/Subl (大写仅仅是用来差别于一般命令)
大功告成!
关于破解的那点事儿
网上关于sublime的破解方法,一搜一大堆。可是我至今都没有去破解,原因非常easy,假设一个能够无限期试用的软件你都忍心破解的话。。大家同为开发者,假设自己都去无良的搞破解。还指望谁来为软件付费?(我一个学机械的朋友如是说)
待续。
Sublime Text 3 最性感的编辑历史的更多相关文章
- Sublime Text 3配置支持Markdown编辑
继上一篇http://www.cnblogs.com/EasonJim/p/7119304.html文章安装好之后,对Markdown支持需要做如下处理: 1.按下[Ctrl]+[Shift]+[P] ...
- 秒杀Sublime Text的微软开源代码编辑工具Visual Studio Code
1. 下载链接: https://code.visualstudio.com/ 2. 秒开一个ASP.NET网站源码 3.编辑CSS颜色支持 4.Git支持 5.常用快捷键 Ctrl+Shift+P ...
- Ubuntu安装 Sublime Text 及常用插件推荐
之前一直在用 Code Blocks 这个IDE工具,可用着还是感觉不怎么好,于是在网上找到了一篇文章,上面介绍了不少IDE,我找到了Sublime Text 感觉挺不错的. 帖子地址: http:/ ...
- Sublime Text 3 全程详细图文原创教程(持续更新中。。。)
一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何下手,满世界地查找资料,但能查阅到的资料,苦于它们的零碎.片面,不够系统 ...
- Vue.js 入门指南之“前传”(含sublime text 3 配置)
题记:关注Vue.js 很久了,但就是没有动手写过一行代码,今天准备入手,却发现自己比菜鸟还菜,于是四方寻找大牛指点,才终于找到了入门的“入门”,就算是“入门指南”的“前传”吧.此文献给跟我一样“白痴 ...
- Sublime Text 3使用参考手册
什么是Sublime Text? Sublime Text 是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器.Sublime Text是 ...
- Sublime Text设置快捷键让html文件在浏览器打开
一.安装View In Browser插件 快捷键 Ctrl+Shift+P(菜单栏Tools->Command Paletter),输入 pcip选中Install Package并回车,输入 ...
- Sublime Text 3 全程详细图文原创教程
Sublime Text 3 全程详细图文原创教程(持续更新中...) 一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何 ...
- Sublime Text快捷键去除空白行 - 转载请保留原文链接:https://www.noniu.com/qianduan/sublime-text-kongbaihang.html
如果使用notepad++或者Dreamweaver的朋友,应该知道有个快捷键或者功能按钮,可以实现删除文档空白行的功能.虽然空白行不会影响程序运行,但是会占一定的空间,对于有处女座特质的程序员来说, ...
随机推荐
- 步步为营Hibernate全攻略(四)剪不断理还乱之:复合主键 && 组合映射
一:复合主键 复合主键即两个或多个字段联合起来作为主键,它的通常做法是将主键相关字段抽取出来放到一个单独的类中,但是这样的类是有要求的: 1. 必须实现序列化接口 2. 必须覆盖e ...
- 60s 经济学探奇
理解经济学 什么是经济学.对于学习金融的同学,一定会给你搬出一大堆定义.例证.学派.说经济学是一门研究研究价值的生产.流通.分配.消费的规律的理论. 非常高大上的感觉,可是对于我这样没有什么金融学理论 ...
- 利用手工编码的方式对srtus2进行输入验证
对action方法进行校验有两种方法一种是: 1手工编码书写 2一种是用xml 输入校验的流程: 1类型转化器对请求参数执行类型转化,并把转换后的值赋给action属性. 2.如果执行类型转化的过程中 ...
- [Android学习笔记]组合控件的使用
组合控件的使用 开发过程中,多个UI控件需要协同工作,相互交互之后,才可完成一个完整的业务需求,此时可把这些控件封装成为一个整体,相互之间的交互逻辑封装其中,外部调用可无需关心内部逻辑,只需获取处理后 ...
- hdu4493 Tutor
Tutor Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) Total Submiss ...
- freemark换行输出
<!--附件图片--> <#if attatList? exists> <#if (attatList?size>0)> ...
- mmap。
linux mmap 内存映射 mmap() vs read()/write()/lseek() 通过strace统计系统调用的时候,常常能够看到mmap()与mmap2().系统调用mmap()能够 ...
- Hadoop大数据面试--Hadoop篇
本篇大部分内容參考网上,当中性能部分參考:http://blog.cloudera.com/blog/2009/12/7-tips-for-improving-mapreduce-performanc ...
- EXPORT_SYMBOL解析
一般我们编写C程序时,要调用某个文件中的函数,需要在本文件中包含声明有被调用函数的头文件,然后编译连接后,方能找到调用函数.对于模块依赖的情况,不能简单的使用上面的方法,内核提供了一个机制,就是EXP ...
- HTC one/M7电信802d 毒蛇ViperOne2.1.0/高级毒蛇工具/完美root,精简/更多自定义,稳定,流畅ROM
ROM版本 HTC One/M7 802d ROM作者 雪狼团队·大盛 http://weibo.com/DaShengdd Android版本 Android 4.2.2 创建日期 2013.09. ...