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块,兼容问题比较严重,所以做了一个 ...
随机推荐
- 《K&R》中引用的几个排序算法(shellsort、)以及一个自己乱写的排序
留待期末考后更新... void shellsort(int v[], int n) { int gap, i, j, temp; ; gap > ; gap /= ) for(i = gap; ...
- cordova环境搭建,搭建项目,以及拍照功能的实现
一.配置环境 1.配置java环境: 下载对应系统环境的jdk:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-13 ...
- JQuery_过滤选择器
一.基本过滤器 1.基本过滤器 过滤器主要通过特定的过滤规则来筛选所需的 DOM 元素,和 CSS 中的伪类的语法类似:使用冒号(:)开头. <script type="text/ja ...
- Composite模式
1 意图:将对象组成树形结构,以表示“部分——整体”的层次结构.Composite使得用户对单个对象和组合对象的使用具有一致性. 2 动机:同意处理图元对象和包含图元的容器对象.Composite通过 ...
- oracle的存储过程和函数(PL/SQL)
czmmiao 存储过程概述 存储过程是子程序的一种类型,能够完成一些任务,作为schema对象存储于数据库.是一个有名字的PL/SQL代码块,支持接收或不接受参数,同时也支持参数输出.一个存储过程通 ...
- SQL Server去掉字段内的双引号
今天在客户处遇到一个问题,用powershell抓取出的数据插入SQL中后每个字段都会自动带双引号“”如下: 现在想将此双引号去掉,用下面语句即可: insert into #A select SUB ...
- d.BIO连接器与NIO连接器的对比之二
前面在Tomcat中讲解了两个通道,BIO和NIO,我们这里来通过两端程序,简单模拟两个通道,找找异同点: BIO: 1. public class SocketServer { public ...
- linux hugepage
The intent of this file is to give a brief summary of hugetlbpage support inthe Linux kernel. This ...
- NetworkComms V3 之自定义对象
NetworkComms网络通信框架序言 能够发送自定义对象,并且在发送的时候对发送的对象进行加密,压缩是networkComms v3框架的一个重要特性. 具体可以参考源码中 ExampleCons ...
- My Game --背景
在GitHub MyGame clone 代码,添加到配置并新建好的工程中运行下来就可以看到这个画面: 中间的小点是显示的当前触摸点,本文暂不讨论.图中的蓝天是蓝色的 LayerColor this- ...