远方有你,Emacs世界上最远的距离,不是其他所有那些乱七糟的,而是因为一些软件必须用
windows机器,却需要用 emacs org-mode 记笔记和日志。因为有4个工作需要使
用windows,我试了几天各种方法记笔记,有种"够了"的感觉。我试过在windows下装个emacs,用ftp什么的同步笔记,担心万一同时用两台机器
的时候把两边的笔记分别改了;有人提到用云,我担心哪天发布出去了……最后决
定,从windows远程登录Linux. 就像在本地工作一样,当又看到熟悉的Emacs界面
-好吧,我承认,那就像没有界面一样-我才感觉工作又顺畅起来。1. ssh,从windows连接到Linux很久以前远程管理Linux的时候,我们都是用telnet,这也是互联网基本服务之
一。telnet明文传送,由于安全性的原因,ssh (Secure Shell Protocol)逐渐
流行并且变成了标配。服务端,在Linux一侧,我用的是Ubuntu,安装 ssh server。在GUI界面或dpkg
都可以,略。客户端,我考虑了putty和SecureCRT。putty是免费的,据评论功能上有个
别,SecureCRT收费。我只使用非常有限的功能,选了putty。我还考虑过用
xwindows,但是考虑到可能更复杂,而且我也并不常在GUI下工作,算了。putty的配置,我只改了一处:remote character set。默认是 use font
encoding,我改成了 utf-8。因为我的windows是gb2312,Linux是utf-8。这样,远程登录,ssh正常工作了。如果用vi,现在已经行了。全屏之下,看起来身临其境一般。: login as: young
: [email protected]'s password:
: Linux young-laptop 2.6.32-34-generic #77-Ubuntu SMP Tue Sep 13
: 19:40:53 UTC 2011 i686
: GNU/Linux
: Ubuntu 10.04.3 LTS: Welcome to Ubuntu!
: * Documentation: https://help.ubuntu.com/: 多少个 packages can be updated.
: 多少个 updates are security updates.: New release 'precise' available.
: Run 'do-release-upgrade' to upgrade to it.: Last login: Fri Sep 14 20:52:29 2012 from 192.168.1.150
: young@young-laptop:~$2. tmux, 增强的终端我们把在服务器的键盘上操作称为 console,翻译成控制台;在通过串口 (还有
后来的telnet)远程登录,称作终端。终端是原始的系统管理员操作Unix的手段。
因为其原始,所以后来有了一些增加的工具。比如gnu有个screen,后来又出了一个tmux,就是专门增加终端体验的。我装
tmux的原因是,希望下次登录的时候能够还看到上次的运行状态,并且懒得为远
程登录单独创造环境变量什么的。tmux支持session功能。离线之前 detach,再连线的时候 attach 到上次的
session中。用起来挺方便。tmux还默认支持一个有用的功能:两个人都 attach 到同一个 session 中,可
以看到对方输入的内容。这个用来演示Unix系统管理和编程,是个不错的方法。
比 teamview 或 windows远程桌面 之类更好的地方在于 极低的带宽需求。没错,QQ也有远程协助的功能。但是我本人不用QQ,所以也不太清楚用起来是什
么感觉。不过,当我最开始知道有的年轻一代为如果没有QQ就没办法截屏的时
候,我非常地震惊。基本工具的使用,已经沦落到这种程度了么。按键
Alt+PrtScreen就可以截当前窗口,PrtScreen可以截当前全屏,截完的结果在剪
贴板里,可以贴到word或画图中,这种技术就是著名的...80还是90后们说的一个词完美的描述了我的心情:无语。tmux还支持把屏幕划分为几个pane,还能简单改下布局。不过,我本来就看不清
楚,希望窗口能大一些,这功能试了下就不用了。向眼神好的同学推荐。我改了呼出tmux的快捷键,默认的是C-b,在emacs中是前一个字符,另一个候
选,也就是更老的screen的快捷键是C-a,在emacs中是当前行首。我改成了
Ctrl-o,默认是插入新行,我通常用回车代替。
: ~ $ cat .tmux.conf
: set -g prefix "C-o"
: unbind C-b
: bind "C-o" send-prefix3. emacsclient -temacs启动比vim慢多了,所以经常被嘲笑。PDP-11启动也挺慢的,坦克也是,非
瑞士军刀类的工具大抵如此。为了应对吧,Emacs有个快速启动的方
法,emacsclient. 需要在emacs上安装插件,具体的步骤网上很多,我不废话
了,参见 google emacsclient 或
[http://www.emacswiki.org/emacs/EmacsClient].emacs这种老派作风的软件,不仅考虑到了启动速度,还为同样老派的终端非GUI
提供支持。emacsclient -t 参数就是专为老一辈没有GUI的穷人设计的。很好
用,基本跟用GUI的差不多,因为我用GUI的时候也基本都是文字。每次工作完准备睡觉的时候,在emacs中Ctrl-o呼出tmux (此处系统没有任何表
现),然后按d,执行detach session。然后putty和ssh退不退都没关系。下次工
作的时候,运行putty,ssh连接到Linux机器,然后tmux a,emacsclient就仍然
在上次的位置,已经进入了emacs里。当然,还需要远程Linux的一个配合,emacsclient需要emacs已经运行了才行。而
我的Linux里的emacs是从来不会退出的。4. 全键盘支持emacs使用的时候手基本不用离开基本键,绝无必要离开键盘去够鼠标。同时,
这也需要很多快键捷,而有些快捷键用到了putty或者说终端默认不支持的。比如说F1,F12,home,end,delete这些。严格的说,它们不是不被支持,而是早期
的规范没有统一,很多终端对于这些键的处理是不同的。还没有等到天下统一,
终端就已经开始退出主流了。第一步:terminal->keyboard->the functin keys and keyboard,设置为
sco. 这个功能看来不太常用,手册上甚至说,你要是看不懂,那就是你用不着瞎
鼓捣 (原文是:If you don't know what any of this means, you probably
don't need to fiddle with it. )。这一招我是从emacswiki上学来的。那位牛人给出了所有的功能键在sco终端上对
应的字符序列,同时指出,putty只有sco类型终端才支持所有的功能键。所以,
第二步:我的.emacs文件里多了些下面这样的内容:: (define-key input-decode-map "e[H" [home])
: (define-key input-decode-map "e[X" [f12])还有很多,我没有抄下来,都是是对每个功能键和编辑键的定义。上述的牛人列
出了全部,请参见[http://emacswiki.org/emacs/PuTTY#toc].其中的"e[H"是最有意思的一段。它就是当你按下home键时,终端接收到的东西。
不是某个单一的键盘"扫描码",而是经过转义的字符序列。其中"e"在这里就是
Alt键。即,当home按下,终端接收到的是 Alt [ 同时按下,然后是一个单独的
H。很巧妙。不过这个巧妙的道理给我带来了些麻烦。因为序列的第一个字符是 Alt [,而这
个字符在我这里已经被映射成了插入包围选中文字的[]序列,所以无论是用
emacs describe-key,还是在命令行提示符下用 C-v ,还是 cat -v,所有这些
显示我按下的按键序列的方法,都显示出一对方括号,而且看不到Alt。所以,
一连几天都没有捕捉到功能键按下。后来,我想起来emacs中伟大的帮助。M-x help l。顺便说一句,如果你不知道这
是什么,十有八九你不用不到这个功能。然后我看到了home对应的按键。剩下的就一目了然了。我禁用了对左中括号的补全,然后终端认识了所有的功能
键。
对了,在功能键不好使用的时候,我已经开始嗑嗑拌拌地远程使用了emacs
org-mode了,用下面这段,是改变笔记里标题级别的:: (global-set-key (kbd "ESC <right>") 'org-do-demote)
: (global-set-key (kbd "ESC <left>") 'org-do-promote)
: (global-set-key (kbd "ESC <up>" ) 'org-move-subtree-up)
: (global-set-key (kbd "ESC <down>") 'org-move-subtree-down)即使并不在同一台机器之中,我知道Emacs一直守候,它始终触手可及。远方有
你,心即安定。--------------------博客会手工同步到以下地址:[http://giftdotyoung.blogspot.com][http://blog.csdn.net/younggift]
远征的亚历山大
远征的亚历山大读完《亚历山大远征记》,合上书页,感慨良多。估计不少人熟悉亚历山大是因为他是了不起的帝王吧。他32岁英年早逝,在短短的一生中就征服了当时的希腊人所知的全部世界。而他并非一出生就开始远征的,他的征程仅持续了13年。此前,一直是希腊成天被波斯追着打,自卫反击战的胜利都值得大书特书。而亚历山大,带着三四万人,30天补给,开始追打大流士,然后一直打到了印度边境。怪不得凯撒祭拜了亚历山大之后要大哭,说亚历山大在他这个年龄已经征服了世界。某英雄牛人A崇拜另一个牛人B,牛人B很多后来在历史上都消声匿迹了,大多数时候只是因为我们通过牛人A知道牛人了。比如大诗人李白和被他崇拜得不行的谢公。不过,亚历山大并没有被凯撒掩盖光辉,或者至少同样光辉夺目。这样的牛人,如果出生在中国,或者再晚近一些,书店的书架上帝王之权专栏一定会再多一些分析评论吧。虽然这简直是侮辱亚历山大,因为他并非仅靠权术而伟大,甚至权术都并非其中的主要因素。他被不少人听说的一个原因,是他在征途中建立了不少城市。就跟打《文明》似的,他跑到一个地方,发现哪个河口很适合建城市,以后会人口兴盛,就建个城市。跑到哪个地方,看当地生产力落后,缺少什么,就兴修水利。临死前还打算增修幼发拉底河和底格里斯河之前的运河。他建的很多城市都叫做亚历山大,其中之一在埃及。就是后来被凯撒一把火把里面的大图书馆给烧了的亚里山卓。埃及艳后本来一直苦苦哀求凯撒帮她夺王位什么的,听说图书馆着了,跳起脚骂,"你们这群野蛮人。"可见这城市和图书馆有多么了不起。亚历山大时代的战争,跟我们想像的略有不同。我们一般会觉得侵略啊,民族啊,国家啊什么的。当时似乎也不怎么看重这些。他们的思路,跟咱们春秋战国差不多,大家没事就出"国"到别的国家去工作,没有任何道德上的负担。国家,是贵族和王的国家,不是我们的。所以,战争只是贵族和王间的利益争夺,我们只是跟着跑来跑去而已。亚历山大打大流士的理由就不怎么靠谱,一会说大流士杀了他爸
(史书载,亚历山大恨不得他爸赶快死,故事此处从略),一会说你虽然没侵略过我们,但是你们的祖先侵略过我们的祖先,而且我现在是希腊总统帅,受命打你--希腊人是被亚历山大打得拜他为统帅。亚历山大总是以少胜多,估计训练和技术都发达。打完以后,经常任命当地人作为总督,或者让部下当总督,不过鼓励按当地的习惯治理。那打不打还有什么区别呢?一般就是税收,原来给波斯的,现在给亚历山大。他的战争,大抵如此。他也挺奸诈,这在一个军事家简直是个必然的副产品性格。能打好仗,还内向自闭的,如某个片子里的孙膑,不能令人信服。因为战争是与敌人也与自己人闭集交流的行为,自闭是万万难成事的。就像唱得一嘴好歌的,也大抵可以断定不会太自闭,因为歌曲是取悦于人而不仅是自己的。IT男们也是一样,只是在外人面前可能沉默一些。亚历山大的奸诈令我印象深刻的有三次,当然,也不排除我沉浸在咱们的文化之中,小人之心也说不定。有两次是当地人投降了,准备撤出要塞,亚历山大也同意了。到实施的时候,亚历山大突然觉得敌人是准备逃跑,分散回自己的部落,下令进攻或追击。然后敌人被砍杀不少。我老觉得这家伙是不守信义。另一次是亚历山大打完大流士,他的手下不少人突然开始背叛他。然后他一顿隶反,都kacha了。我就奇怪,这帮手下有毛病么,早先打得如火如荼的时候不背后下刀,天下太平了突然脑生反骨。我恶意猜测,亚历山大在这几次事里都不是好东西。这家伙自己很能打,手下也都不是弱兵。亚历山大死了以后,几个手下就把天下分了。这帮人是经过史称继业者战争的大动干戈,互相一顿杀,然后才分了帝国的。这里包括后来持续到凯撒时代的托勒密王朝,在埃及;还有当时地位还不高的手下的手下塞琉古一世,他得到了两河流域和整个伊朗。说起来也是亚历山大比手下们牛太多,手下中竟无一人hold住整个场面的。所以在快死的时候,大家问,国家要留给谁。亚历山大说"留给最好的人",而没有指定个姓名。能打,政治手段也纯熟,这样的只能称为牛人而已,并不令人感慨。那么,亚历山大让我感慨的是什么呢?完全是因为战争以外的原因。亚历山大猜测印度河 (还是恒河?)与尼罗河是连通的,亚历山大后来意识到自己错了,纠正了这个说法。这样的猜测可能令当今读者大呼弱智。不过,这也说明当时的生产力和技术条件不过如此。当时的技术条件怎么样呢?人们尚不知道波斯湾和红海都只是同一个大洋的一部分,海路相通。人们不知道从印度河口入海,向西一路经过的都是什么样的国度和风俗,物产如何,人们也不知道最终会绕进波斯湾,然后沿河而止,能够到达巴比伦。这些,人们都不知道。是亚历山大派人进行远航验证的。而且,亚历山大此行并非为了掠夺和征服,或者行军困难需要另避路线,只是探索。探索人类所未知的区域。那个时代,还没有人同时踏入过印度河和尼罗河,没有人看到印度人和非洲人一样黑,还没有人知道阿拉伯半岛的南面有地峡
(我怀疑阿里安或者我搞错了,那么长的路似乎不能称为地峡了)。亚历山大带着故乡带来的兵将 (书里称为"伙友")走遍了所有这些地方。当到达印度边界的时候,军士们再也不想前进一步。亚历山大说,"你们回去吧。告诉你们的亲人,你们的国王带着你们征服了……此处省略几百字……这些地方,最后,你们把国王一个人扔在蛮族当中,自己带着战利品回来了。"最终,他没能说服他的士兵,返程。而返程,他居然也选择了一条完全不同的路线。无尽的探索。这种品质在当今的成年人身上是稀缺品质。像顽童一样好奇,不休止的向上的决心,一往无前。我们呢?我们的书架上摆着帝王将相权术论,还有某某成功的秘诀,我们不再学习,也不再进步。学习?那是什么时候的事情了。我们关注的只是成功这一结果,中间的过程,才不屑一顾。所以,如果突然哪儿跳出个爹来,直接让我们满血加全啥色的装备,很多人都会乐醒过来吧。老师家长反对初中生早恋的时候,乐意说一句话,"什么时候做什么样的事。"他们贯彻这一原则,在初高中告诉我们,拿破仑的爱好就是几何,还有欧洲的国王贵族们都喜欢钢琴,毛泽东同志每天洗冷水澡,诸如此类。后来呢?后来我想起个故事。某君的妈妈对他说,你怎么天天不学习呢。某君说,你不也天天打麻将么。他妈说:我是成年人啊。某君想:我也快30了呀。成年了,我们就可以把那些多么有用多么热爱的东西一扔,开始狂野了,每天就只剩下狂野。而亚历山大每天都在征服在探索,他的一生,都没来得及成年,一直是个在努力学习了解这个世界的小男孩。他享受他所从事的,他在每次战斗的时候都在最前线,在决定性的冲锋时总是与战士们同进退。他的前胸布满伤痕,这些伤痕来自所有种类的武器。他与伙们们一起兴建城市、分享战利品、彻夜狂饮。史书载,亚历山大本人并不是很喜欢饮酒,他只是喜欢友谊。他享受他所从事的,从事他所追求的。最后在胜利后返回巴比伦,痛饮之后死于不明原因的高烧不退,32岁。他说,他是神的后代。古来的帝王们都会这一手,所以阿里安说,这也没啥可以谴责的。阿里安之后的凯撒说自己是维纳斯的后代,远在东方的黄帝和刘邦也说过自己的妈怎么怎么的了,然后就有了他。这确实不稀奇。亚历山大说,自己的祖先是赫丘力士
(赫拉克勒斯,古希腊绝对牛人,脚踝骨有毛病的阿喀琉斯的偶像),因此赫丘力士的祖先宙斯也就是亚历山大的祖先了。这也可以令人一笑。不过,我接下来拿起的一本书,翻译者屡次提到自己和夫人的出身如何高贵,我不知怎么就突然想起那个时代出身高贵的人的出身都是怎么回事,心里就不由得不舒服起来。有几个人知道亚历山大他爸是谁呢,还有,养育他的那个小小蛮国?据说,亚历山大一度不承认自己的父亲,他在征服了波斯后衣波斯服装,还引起了马其顿人的不满。令人怀念。永无止歇的向前,那个年轻的真正的人类。--------------------博客会手工同步到以下地址:[http://giftdotyoung.blogspot.com][http://blog.csdn.net/younggift]
布拉万台风遇到长春(仅图)
pics 在北京,在唐山,在长春 3/3
pics 在北京,在唐山,在长春 2/3
pics 在北京,在唐山,在长春 1/3
pics
pics
pics
回忆《秦颂》,一半
回忆《秦颂》,一半今天突然就想起《秦颂》里的那首歌了,不是后面始皇帝大典准备的那首雄壮的,而是开头赢政和高渐离一起吃奶时听的那首童谣。我特意找来原声听。前面是古意盎然的配乐,然后,一个女声低吟,"两只小狗,梦见骨头。汪汪汪汪,咬了一宿。咬了一宿,狗毛两口。汪汪汪汪,没有骨头。"然后……我倒是还记得所有情节,不过如果在回忆一番,就太剧透了。自己激情澎湃一顿,怕以后忘了,写两点感想吧。1. 多读大师作品。我怀疑,大师们可能是自娘胎里就是牛人。看姜文、葛优、周迅 (周迅没参演秦颂,顺便一提)
等牛人的早期作品,就已经霸气露得横流遍野了。想不明白为什么有人上手的时候就那么牛,不过似乎是个事实啊。据说《秦颂》的编剧也编了《活着》,并且说过:我以为我们终于开始了,没成想到那是结束。对于那些开始了就结束的牛篇章,更是值得好好品味学习。C语言等也是,光读教材是不行的,还得多读经典著作,及经典系统中的代码。有的同学刚开始会觉得那些代码有点怪。不过,音乐课老师说了,对美的欣赏在一定程度上是一个习得的过程,也就是说不是天生的,得不停地学习正确的东西才能培养出来。所以,那些代码不是怪的,而恰恰就是正常的。再顺便一提,《秦颂》后面大典那段的歌词,我说那么质朴雄浑哪,那就是琅邪台刻石,《史记·秦始皇纪》里记载了的。那些牛人的文学作品也是一样,应该读。优秀的网络小说,就让时间和其他读者替我们筛选吧。2. 勿忘那些本始的理想骨头之于两只小狗也罢,音乐或栎阳公主之于高渐离也罢,天下之于秦始皇也罢,都是一样的不懈追求的理想,或者强烈的欲望。我们喜欢代码喜欢文学,就应该努力持续地追求下去,不及他顾。如果有一天我们发现自己其实喜欢的是花花世界的喧嚣,那就不要有任何掩饰,去追求。所有努力的追求都有值得肯定的方面,无论追求的是什么,那些种种掩饰才是丑的。高渐离毫不掩饰地追求音乐和栎阳公主(仔细看台词,确实有追求的成分),始终如一。高渐离先生是燕人,就是北京地区的人。读到此处,可能你也发现燕和北京是多么不一样的两个地方。倾望楼盘及听着IT界这样的说法,实在想不到跟两只小狗这样单纯的热爱有什么共同点。繁华和各种修饰,把我们本初的理想淹没了。深入代码的本原,不为一城一池的得失所动,眼前的项目都是我们追求代码本原的过程,而不是动机。3. 影子《秦颂》的英文名是 帝王的影子。类似的,安德的游戏系列有霸主的影子,黑泽明电影有影子武士。影子,是个挺有意思的东西呢。--------------------博客会手工同步到以下地址:[http://giftdotyoung.blogspot.com][http://blog.csdn.net/younggift]