Sublog: 支持Markdown和语法高亮的跨平台博客客户端
灵感来自米米饭
功能一览
项目主页:
使用方法:
本项目是一个插件,首先要安装Sublime Text 2
重命名sublog.sublime-settings.example为sublog.sublime-settings,配置你的登录信息,除了用户名,密码外,url也要修改为在管理->设置页面底部的metaweblog访问地址
拷贝整个文件夹到Sublime Text 2插件库下(Preferences->Browse Packages),注意命名为"sublog"
安装node.js,用于语法高亮,效果:
//javascipt代码var test = function() {console.log("语法高亮");
重启Sublime Text 2, Done
在博客园的管理->设置页面上传css样式(markdown.css)
博客文章必须以md为后缀, "shift + F8"插入header信息,其中tags使用","分割,publish为"false"的时候表示为草稿; "shift + F9"发布新博客,修改后同样使用"shift + F9"发布更新(留意Sublime Text 2底下状态栏通知)
要使用博客分类自动补全功能,需要开启Sublime Text 2 在文本模式下的补全功能,具体来说,就是在user settings中增加以下语句:
"auto_complete_selector": "source, text"
启动时会去同步一次博客分类,如果你修改了博客分类,需要执行"shift + F7"手动同步。
代码块显示行号,在sublog.sublime-settings中添加:
"show_ln":true
为了得到代码块中缩进在不同浏览器下的一致输出,请设置sublime text 2的tab为空格,例如我的设置如下:
"tab_size": 4,"translate_tabs_to_spaces": true,"detect_indentation": true,
支持github的代码块定义方式,例如下面的代码
```python ln_on
import random class CardGame(object):
""" a sample python class """
NB_CARDS = 32
def __init__(self, cards=5):
self.cards = random.sample(range(self.NB_CARDS), 5)
print 'ready to play'
```
建议最好使用这种方式,由程序自动判断语言可能耗时较长。另外
ln_on和ln_off作为辅助标记,表示本代码块是否启用行号。支持的语言: 1c, apache, avrasm, axapta, bash, cmake, cpp, cs, css, delphi, diff, django, dos, erlang-repl, erlang, go, haskell, ini, java, javascript, lisp, ls lua, mel, nginx, objectivec, parser3, perl, php, profile, python, renderman, ruby, scala, smalltalk, sql, temp tex, vala, vbscript, vhdl, xml
特别的,使用no-highlight作为语言值表示本代码块不需要高亮。
支持本地图片地址作为img的url标记,例如:

在UNIX like上:

当sublog检测到这是一个本地图片url的时候,会自动上传图片,并替换源文件的url为上传成功后得到的url

你还可以使用"shift + f10"发布当前选择的一行或多行里的"file://"url所指向的图片。
enjoy!
Makrdown兼容性
使用quick-markdown-example测试效果 不支持表格和脚注
支持的平台
目前测试平台有windows7, ubuntu13.04,Mac平台应该也可以。如果使用中遇到问题,欢迎反馈。
Hack everything!
UPDATE
添加博客分类自动补全功能
添加文章基本结构的创建
修复在ubuntu下获取博客分类的编码问题(13-06-19)
语法高亮(13-06-22)
显示行号
修改settings的加载方式,每次执行命令时都加载,使得改变可以即时生效
增加img支持
Sublog: 支持Markdown和语法高亮的跨平台博客客户端的更多相关文章
- 使用markdown和gitblog搭建自己的博客
GitBlog官网 GitBlog文档 Gitblog官方QQ群:84692078 GitBlog是一个简单易用的Markdown博客系统.它不须要数据库,没有管理后台功能,更新博客仅仅须要加入你写好 ...
- 让 QtWebkit 支持跨域CROS - nowboy的CSDN博客 - 博客频道 - CSDN.NET
让 QtWebkit 支持跨域CROS - nowboy的CSDN博客 - 博客频道 - CSDN.NET 让 QtWebkit 支持跨域CROS 2013-05-23 22:05 450人阅读 评论 ...
- 关于将sublime中的代码高亮导出到博客中
第一步:打开sublime编辑器,用快捷键ctrl+shift+p调出control panel,在出现的输入框中输入install,按回车键 第二步:然后输入插件名称sublimehighlight ...
- 如何实现一个 markdown 图片粘贴上传的博客后台系统
如何实现一个 markdown 图片粘贴上传的博客后台系统 js 实现 drag & drop / copy & paste image uploader MongoDB 设计文档对象 ...
- 为Subline Text 3 添加支持ini文件语法高亮
转: http://lancelot.blog.51cto.com/393579/1783653 在Subline text 官网下载了Subline text 3 .不过发现没有对ini格式文件的语 ...
- vim 支持 nginx配置文件 语法高亮
1.下载 nginx.vim 语法高亮文件 2.将文件复制到 /usr/share/vim/vim74/syntax 目录(也可以是 单用户目录 ~/.vim/syntax/) 3.修改 vim /u ...
- 教你如何快速上手markdown语法,编写技术博客(史上最全最简,用MarkDown写博客)
首先,进行有道云笔记官网,新建一份markdown文档, 如下图 然后,在文档编辑区,左边,复制如下段落文字 加粗 斜线 标记颜色 下划线 废弃线 一级标题 二级标题 三级标题 四级标题 五级标题 六 ...
- webstorm 支持vue element-ui 语法高亮属性自动补全
如果webstorm中 提示 Unknown html tag el-*** 说明没有加载 node_modules 下的 element-ui 解决办法就是: 在webstorm 打开的状态下 第一 ...
- 为什么你应该试试用Sublog写博客
HI 这篇文章发布后,收到了一些反馈,在不同的阅读媒体上(浏览器,RSS,evernote)等,会有样式兼容问题,特别是之前的代码显示行号的实现方式,使用浮动code块,兼容问题比较严重,所以做了一个 ...
随机推荐
- struts(二) ---中参数传值
struts中参数传值的方式有 种: 第一种:直接通过属性来传值 第二种: 第三种:
- D3.js 做一个简单的图表(条形图)
柱形图是一种最简单的可视化图标,主要有矩形.文字标签.坐标轴组成. 本文为简单起见,只绘制矩形的部分,用以讲解如何使用 D3 在 SVG 画布中绘图. 一. 画布是什么 前几章的处理对象都是 HTML ...
- javascript数组常用方法汇总
1.join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串.也可以指定可选的字符串在生成的字符串中来分隔数组的各个元素.如果不指定分隔符,默认使 ...
- MYSQL -NOSQL -handlersocket
一个MYSQL的插件,让MYSQL支持NOSQL 好处,跟MYSQL公用数据.比普通CACHE方便.普通CACHE有同步数据问题 坏处,不兼容MEMCAHE,跟MEMCAHE一样没安全控制 编译与安装 ...
- Linux cat命令的使用
cat命令主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能. A:查看文件内容主要用法: 1.cat f1.txt,查看f1.txt文件的内容. 2.cat -n f1.txt,查看f ...
- 实现Asp.Net MVC无刷新分页
整个过程主要就是:一开始进入页面是,在页面加载完成之后直接通过$(function(){ LoadRegisterUserInfo(1,10,0,0);//加载注册用户信息 });无条件加载数据,调 ...
- ubuntu SecureCRT破解
操作过程: 操作过程都在终端中执行.Ubuntu 的破解 : 下载程序: wget 链接: https://pan.baidu.com/s/1nvdJl7j 密码: 2ryk 运行破解 /usr/ ...
- C语言学习常识
开发环境 学习C语言,在mac os x上,我们选用的开发工具是x-code:而在Windows上,我们一般用微软提供的vc6.0:此外还有很多编辑器内置了或者支持下载C语言的编译器插件.所以,我们可 ...
- AngularJs的UI组件ui-Bootstrap分享(五)——Pager和Pagination
ui-bootstrap中有两个分页控件,一个是轻量级的Pager,只有上一页和下一页的功能,另一个是功能完整的Pagination,除了上一页和下一页,还可以选择首页和最后页,并且支持多种页数的显示 ...
- JSON序列化和反序列化的实例
之前有项目中使用到了Json的序列化和反序列化,现在将使用的实例记录下来以备查阅.如有不妥,请指教. 代码的最终目的是得到一个符合 resultClass<List<rtnGetFindM ...