
版权声明


俗话说工欲善其事,必先利其器,在写博客的这段不长的日子里,倒腾 WordPress 文章编辑器的时间可能比写文章的时间还要长,尝试过各类 WordPress 离线编辑工具到 Sublime text 这样的文本编辑工具,再到 DW、Zendstudio 等庞大的IDE环境。
一面也是我的前端编写能力的逐渐增长导致对于编辑器的需求也相应变化,另一方面其实是我的工具控的强迫症心理在作祟,矢志于寻找一个能满足我各种编写需求的、完美的 WP 文章编辑器,事实上到最后才发现远没有完美的编辑工具,只有最适合自己目前水平和能力的工具才是最好的。
在不断尝试使用各类编辑器的过程中,颇有些独孤求败练剑的历程,从弱冠之年使用过凌厉刚猛,无坚不摧的利剑到老年时使用的草木皆可伤人的木剑,我用过的编辑器也是从强大的 Windows Live Writer (WLM) 开始,到现在更着重于写作内容的提炼和灵感的激发,时机成熟后随处打开一个 Windows 自带的记事本就足够让我下笔如流水,也许这就是金庸笔下独孤求败无剑胜有剑的最高境界。
金庸老先生在《神雕侠侣》中描述独孤求败剑冢中第一柄剑为:“凌厉刚猛,无坚不摧,弱冠前以之与河朔群雄争锋。”,Zoundry Raven 作为我在2010年刚开始博客写作时使用的第一款博客编辑器正如这柄轻薄锋利的利刃,十分的顺手。
相对于傻大笨粗的 WLM,Raven在具备强大编辑功能的前提下,最大的优点就是占用内存小,启动速度快,界面简约,而且 Raven 还发布有免安装的绿色 portable 版本,我一般安装在 Dropbox 之中即时同步,无论在公司还是在家,我都可以同步更新博客内容。
对于任何一个希望写博客又不愿意折腾代码的朋友,它都是一个非常好的选择,同时在本地写作后上传的一个好处就是能在本地留下备份,如果但它的缺点也是致命的,也是我后期放弃它的主要原因:
没过多久,我就开始寻找新的编辑工具。
随着对 WordPress 学习的逐步深入,开始发现自带的编辑器的诸多功能实际上是被默认屏蔽的,只需要对 Function.php 文件以及通过一些插件的组合,就可以实现和离线编辑器一样甚至更为强大的功能,同时编辑效率和体验也大为提高,索性就彻底抛弃离线编辑工具而投入在线编辑器的怀抱
首先我们需要安装编辑插件,扩展 WP 默认编辑器的各项功能
WP编辑器除了可以通过按钮在可视化界面进行初级编辑,但我们具备一些 HTML 和 CSS 代码编写能力之后,我们更多的时候就需要在 “TEXT”(代码)模式进行编辑以实现更为强大的视觉效果。
但自带的代码编辑器功能十分简陋,不仅缺乏“撤销”等基础功能,而且缺乏代码高亮和层次功能使得密密麻麻的代码让人眼花。
这是一款内置于 WP 的强大 IDE 工具,它不仅仅是一个 HTML 代码编辑器,更可以对主题、插件甚至是 Widget 界面进行编辑。
安装插件后你在文章编辑时切换到代码界面时,可以看到 HTML 和 CSS 代码都已实现高亮,代码之间的层次关系也更加漂亮,增设的一条工具栏可使代码编辑时产生撤销、查找和替换等功能,已经具备一些专业编辑工具的雏形。
它也是一款对类似 Synchi 功能的插件,可以对文章和主题进行代码扩展编辑、虽然功能不若 Synchi 那般强大,但其兼容性更好,在和一些 SyntaxHighlighter 代码高亮插件配套使用较少产生冲突。
安装完上述两类插件之后,使得编辑器在代码和可视化界面下都具备了强大的高级功能,几乎满足了我们各种需要,远超诸多离线编辑工具,但最大的问题就是这些编辑器插件的体积较大,严重影响着 WordPress 的运行速度和效率,让我本已安装了数十种插件而臃肿不堪的后台系统更是雪上加霜,因此尽管在线编辑环境非常完美,但也只能忍痛割爱,需求更轻量级的解决方案。
独孤求败的第二柄剑名曰“紫微软剑”,“三十岁前所用,误伤义士不祥,乃弃之深谷”,正如我对在线编辑插件组合的态度,功能异常强大,但是以加重系统负荷为代价,也只能将其放弃。
如果要同时达到编辑器的强大功能和 WP 的轻量化要求,就好比鱼和熊掌的选择,难以兼顾,若要实现轻量化只能在线下进行编辑以后上传,同时随着我对HTML和CSS的学习,大量代码函数的运用迫切的需要一款专业的文本编辑工具来降低重复的输入工作。
UltraEdit太老,Emacs太难,NotePad++太丑,DW太慢,我选择了最近比较火的 Sublime Text2,装上各类插件实现了代码补全、代码格式化等各种强大功能,在专业文本工具下输入的感觉和体验也是在线编辑器所无法比拟的,同时习惯于专业编辑器中书写也十分有助于以后编程的学习。
我在 ST 中完成最初的文字内容输入和HTML结构排版,然后复制到在线编辑器中,再加入图片等多媒体信息,调整完格式后进行发布,执行效率也并不差。
同时使用专业编辑工具的好处并不仅仅如此,我们现在在 ST 中安装一个书写 HTML和CSS 的神器—— Emmet(它的前身就是大名鼎鼎的 Zen Coding),它通过各种函数的使用,大大减少了对 HTML 代码输入的重复劳动力,迅速提升了编写效率。
例如,在 ST 中安装好 Emmet 插件后,需要定义一个div函数,只需要简单的输入:
#first
然后敲入一个 “TAB”键,就出现了:
<div id="first"></div>
怎样,很神奇吧,如果想了解更多的用法,请访问它的官方网站去学习用法。
剑冢上的第三只剑是一只不开刃且沉重无比的玄铁重剑,这也是杨过后来的佩剑,独孤求败称其为“重剑无锋,大巧不工无,四十岁前恃之横行天下”,这也恰恰是我对于 Sublime Text 和 Emmet 文本编辑组合的评价,看起来体积巨大,复杂难用,但熟悉用法掌握技巧之后却是一把无往不胜举世无双的利器,这也是我目前达到的阶段。
独孤求败剑冢里的第四柄剑也是最后一柄剑确实一把早已腐朽的木剑,“四十岁后,不滞于物,草木竹石均可为剑”,意思是内功修为深厚之后并任何东西都可以成为自己的兵器。
一般只有菜鸟和小白们才会纠结于各种编辑工具和 IDE 的选择,所谓的高手常常说自己只用记事本就可以写代码了,我一直觉得这话里多少存在些水分,但我倒认为在博客的写作环境里,这倒是极为可能的。
博客的好坏,不在于格式的漂亮,图片的花哨,更重要的是其中的内容是否真正有助于读者,吸引读者的目光,浏览目前的几大牛博,都没有太多格式上的变化,但每个字里行间都传达出深刻的思想。
因此,写博文并不在于工具的好坏,还在于内容的提炼和传达,也许到最后,我真正需要的仅仅就是一个记事本而已。

我发现了一款不错的P2P概念的同步客户端 BitorrentSync(以下简称BTsync),它不同于 Dropbox 分布式服务器端的同布方式而采取的是点对点即时同步,这样同步速度更快、信息安全性较高且容量没有限制,但对于个人家庭用户最大的缺点就是必须同时在线才能开始同步动作。
此时我想到用24小时在线的 VPS 主机就可以扮演 Dropbox 服务器的角色,保证其中一端下线之后资料依旧可以保持同步的效果,同时能够兼具 BTsync 的各种优势,下面是具体步骤:
首先我们登录 BTsync 的官方网站,了解其工作原理和使用方法:
下载 BTsync 的 Windows 客户端并在硬盘上安装,整个过程非常简单,使用过 Dropbox 的朋友都应该能轻车熟路的完成安装和设置步骤,我就不一一复述了,如果还是不清楚的可以参见网站上的帮助文档。
注意,BTsync 可以指定任何文件夹作为同步目录,这一点的便捷性是 Dropbox 无法比拟的,最后需注意进行选项复制密钥。
接下来我们需要在服务器端也就是 VPS 上安装 BTsync 同步软件:
登录 VPS 主机,下载客户端 BTsync 的64位linux客户端:
wget http://btsync.s3-website-us-east-1.amazonaws.com/btsync_x64.tar.gz tar zxvf btsync_x64.tar.gz ./btsync
正常情况下,系统会提示 BTsync 同步程序已经在后台运行。
接下来,我们在浏览器地址栏中输入:http://IP:8888/gui ,就可以看到 BTsync 的同步界面(将地址栏中的 IP 更换成你的 VPS 的 IP 地址),输入刚才在 Windows 客户端上记录的密钥,很快就能发现两者开始同步了。
实现方法有两种,一种利用WP插件实现,例如 GD Rating star 插件就可以在Posts、Widgets、Pages中实现各种样式的评分效果,但大多是为了实现动态效果远超我的需要,而且1.5M的体积只会让我臃肿的WP系统雪上加霜。
另一种就是采用 PS + CSS 来实现:这种方法只需要基本的 PS 功底和几段简单易懂的 CSS 代码就可以搞定。下面我重点讲一下实现方法:
首先从搜索引擎上下载一个后缀名为 PNG 且背景为透明的五角星图形,然后用 PS 中的魔棒和图层工具将其复制拼接成下面图形:
拼接图片过程中应注意以下几点:
将做好的图片文件上传到WP服务器,假设图片路径为:” www.example.com/wp-content/uploads/example.png “。 接下来我们打开Style.CSS文件,在其尾部加上如下代码:
.rating-static {
width: 127px; /*将图片长度分为一半*/
height: 25px; /*将图片宽度分为一半*/
display: inline-block; /*这里表示不需换行,如果值是block,则需要换行显示*/
background: url('http://www.example.com/wp-content/uploads/example.png') 0 0 no-repeat;
} /*引用做好的图片*/
接下来我们继续添加代码:
.rating-50 { background-position: 0 0; } /*这是显示五星的效果*/
.rating-40 { background-position: -26px 0; } /*因为范例图片中长度无法被五整除,所以加了1px进行调整*/
.rating-30 { background-position: -51px 0; } /*因为范例图片中长度无法被五整除,所以加了1px进行调整*/
.rating-20 { background-position: -75px 0; } /*这是现实两星的效果*/
.rating-10 { background-position: -100px 0; }
.rating-0 { background-position: -125px 0; }
/*以上评1-5颗星的代码 */
.rating-5 { background-position: -100px -25px; } /*这是显示半颗星的效果*/
.rating-15 { background-position: -75px -25px; }
.rating-25 { background-position: -51px -25px; }
.rating-35 { background-position: -26px -25px; }
.rating-45 { background-position: 0 -25px; } /*这是显示4颗半星的效果*/
/*以上是评半星的代码*/
代码很简单,就是通过对 background-position 起始位置的不断调整从而实现五颗星的效果,下面我们看看在文章中调用后的效果:
<span class="rating-static rating-15"></span>/*这是显示1颗半星的效果*/
我们再试一个:
<span class="rating-static rating-40"></span>/*这是显示4颗星的效果*/
其他的显示方法一次类推,我就不再一一复述了,不过我觉得这个方法还是略显复杂,特别是要求使用者具备一些基础的 PS 操作技巧,如果列位有更好的办法,欢迎与我分享。E
由于红花会诚信的缺失,大量民间组织和非官方救灾基金在本次地震救灾过程中发挥了更大的力量,人们也不再像上次那样无条件的慷慨解囊,而是更多的关注着救灾基金的流向、账目和使用情况,这是唤醒民智的一次伟大进步。
在整个过程中,互联网(尤其是weibo)在过程中扮演着愈来愈额重要的地位和积极的作用,本以为本次抗震救灾又将以全面胜利画上皆大欢喜的剧终时,微博上一份过期报纸的报道吸引了我的目光。
这篇文章既然来自《参考消息》,我还是相信其真实性和权威性的,一直以来我都相信地震是无法通过技术手段进行预报的,但这篇文章在08年汶川地震之后就准确预报了雅安地震爆发的极大可能性,这无疑让人十分的费解,地震到底是否可以进行科学预报呢?这让我想起了最近发生的两起关于地震预报的新闻:
地方法官解释说,他们在“拉奎拉大地震”前6天召开的新闻发布会上,向公众提供了“不精确、不完全,以及矛盾的信息”。
事情的梗概是这样的,2009年3月初,生活在意大利中部拉奎拉市的意大利地震学家詹保罗·朱利亚尼预测到拉奎拉附近即将发生一次强烈地震,并将其判断结果公布到了网上,此后,拉奎拉周边城市街头出现广播车辆,告诫居民撤离住所。
这一情况引起拉奎拉市市长不满。随后,警方以“散布恐慌信息”为由对詹保罗·朱利亚尼展开调查,并迫使他删除了网上公布的地震短临预测信息。(意大利版的”维稳”)。
3月31日,意大利地方地震当局(民防局)召集有关专家召开地震风险评估会议,随后召开新闻发布会“辟谣”并安抚民众。地震科学家告诉民众说,当地一系列小地震只是“常规震动”,请民众“要冷静,别担心”。并解释称,小震是“有利的,表明能量在持续释放”。地方民防局一副局长也“曾在另外一个场合劝居民们安心回家享受意大利红酒,而不要担心大地震”。
不幸的是,不到6天,4月6日凌晨,拉奎拉市附近发生6.3级地震。该地震造成300多人震亡,约2000人受伤,8万人无家可归。这是意大利近30年来发生的最严重地震。当天上午,意大利总理宣布全国进入紧急状态。
广州大学工程抗震研究中心主任、中国工程院院士周霖福则跟直接了当的说:
“汶川大地震后开研讨会,有专家这样说,四川100年内都不可能再发生强大地震,因为能量在汶川大地震中释放得差不多了。这种说法很不科学,现在就验证了,给老百姓传递了错误的信息。”
我这里就很纳闷了,既然中国地震局一再声明地震是无法精确预报的(而且我们也普遍接受了这个事实),既然你无法预报地震何时来,那中国的地震局是依据什么可以说地震什么时候不来呢?
既然地震局无法预报地震,那你凭什么说别人的预报是错误以及违法的呢?作为全世界唯一一个在县级行政区设立了地震局的国家,其唯一的作用就是替政府进行辟谣的么?如果就连辟谣都是错误的,那么设立地震局的意义又何在呢?下面这幅图很好的解析了中国的地震局。
意大利政府对没有科学依据的“维稳式“辟谣的当事人进行了刑事处罚,而在兲朝,那些说出了汶川地震后四川百年内无强震的专家们则毫无影响的继续享受着福利房、公车和公款吃喝,继续幸福的扮演着维稳工具的角色。E

虽然调用方法中主要针对的是DZ论坛使用的,但经过尝试,只需要简单的调整就可以在Wordpress中成功调用,首先用编辑器远程打开wp-content目录下的foot.php文件
<script src= "http://img.kuai.xunlei.com/js/webxunlei.js" type="text/javascript"></script>
刷新页面,我们就看到迅雷下载面板了。
以下网店信息全部收集于豆瓣网友,绝非广告水贴,本人亦不对以下网店的服务和质量担保:
日后有机会我会逐一在上述店铺里冲扫照片,供大家参考效果,也希望各位朋友帮我补充。E
例如,我需要将Dropbox下的photo目录指向/var/www目录下,让我可以通过浏览器访问photo下的图片文件,使其成为一个小图床,这样做的好处是我可以通过Dropbox双向同步在本地灵活的管理图片,我输入命令:
sudo ln -s /Dropbox/photo /var/www/photo
在命令行中可以看到/var/www目录下已经建立了photo的软连接,然后用浏览器访问“http://IP/photo”,报错“403,拒绝/禁止访问”
我将photo目录设置成“777”也无济于事,开始搜索解决办法。
编辑虚拟主机的配置文件:
vim /etc/apache2/sites-available/default
确保在Options一行中增加FollowSymLink,使得服务器可以访问软链接。
Directory /var/www/ Options FollowSymLinks MultiViews AllowOverride none Order allow,deny allow from all /Directory
保存之后重启Apache服务器,刷新浏览器发现故障依旧。
sudo service apache2 restart
Dropbox上有安装的详细攻略,具体步骤如下:
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf - #下载64bit安装程序并进入目录 ~/.dropbox-dist/dropboxd #进入dropbox-dist目录运行dropboxd
这时候会出来一个长串链接地址,需要将它复制到浏览器中点击,进入Dropbox账户确认链接此电脑就基本完成安装过程了,但这一次系统提示:
no command ‘dropboxd’ found,did you mean:Command ‘dropbox’ from package ‘nautilus-dropbox’(multiverse)dropboxd:command not found
求助于万能的Google,找到了正确的安装步骤,具体如下:
sudo apt-get install nautilus-dropbox dropbox start -i
出现了久违的链接地址,粘贴到浏览器中让Dropbox链接此台VPS。
最后记得将Dropbox程序进行更新:
dropbox update
不同于以往版本,不需要再下载dropbox.py这个CLI脚本来方便使用,直接用.dropbox-dist目录下的dropbox命令就可以完成上述操作了,具体操作方法可以自行搜索,此处不再一一复述。E