Search This Blog

Wednesday, February 22, 2006

用emacs上bbs

我一直想着要是在bbs上发文时能像emacs一样编辑,那可太爽了,不过既然bbs不支持emacs的编辑功能,那就用emacs上bbs么
其实很简单,M-x ansi-term,运行后emacs会让你选择程序,默认是bash,然后就会出来一个term,其他的就跟在终端下上bbs一样了
不过发呆时间一长就会掉线,所以可以写个函数防止发呆:
(defvar antiidle)
(defun enable-anti-idle ()
(interactive)
(setq antiidle (run-with-timer 0 180 '(lambda ()
(term-send-up)
(term-send-down)))))

这个函数让emacs每三分钟向term发送一个“上”和一个“下”,然后把run-with-timer返回的值赋给antiidle
(defun disable-anti-idle ()
(interactive)
(cancel-timer antiidle))

这个函数把刚才用run-with-timer“注册”的行为注销掉
这样就可以在需要的时候开启或关闭防止发呆功能,当然,设个快捷键会更方便
另外,在连接主机之前在终端下先运行stty rows 24 cols 80效果会更好
连接上主机以后,默认的是term-char-mode,在这个mode下每按一个键就会向终端发送,所以适合于浏览,如果要发文,那么就会出问题,可以 切换到term-line-mode,然后像平时一样编辑,要发送之前再切换回term-char-mode就可以按C-w发文了
term-char-mode绑定到了C-c C-k
term-line-mode绑定到了C-c C-j

No comments: