之前写过一篇在emacs中使用TRAMP进行文件管理的文章,这里继续说几个后续问题。
Shell
之前提到,shell的提示符很恶心,当然,这个问题是可以解决的。shell里头有个叫PS1的环境变量,主要负责提示符的显示格式。在目标服务器上的~/.bashrc里头加入PS1的定义就好了,比如我的PS1是这样的
1 | PS1="[\u@\h \W]\$ " |
至于\u\h\W这些东西是怎么定义的,请自行谷歌,说这个的文章一大片。
TRAMP的相关设置
使用tramp中会有一些不方便的时候,比如你每次都要输入协议“ssh”,每次都有用户名和ip,当然,还要输入密码。这样的过程其实很烦,tramp中可以进行一些默认的设置来帮我们完成这些工作。比如:
1 2 3 | (setq tramp-default-method "ssh") (setq tramp-default-host "0.0.0.0") (setq tramp-default-user "xiafei") |
你甚至可以设定在哪台服务器上使用哪个id和哪种协议,这些都在TRAMP USER Manual里头,我就不多说了。
还有一个问题一直困扰着我,也是非emacser bs我的重要一点,每次我在emacs里头make一坨代码的时候都要输入一次密码。比如,M-x shell-command,输入make后,需要输入密码。每次make都这样,除非两次make时间间隔很短。这说明tramp还是有密码的缓存机制的,Manul里头也给出了答案——只需要设置变量password-cache-expiry即可,单位是秒,设置为nil表示不缓存。比如我的:
1 | (setq password-cache-expiry 36000) |
你懂的….哈哈…
p.s. 原文地址,http://chunyemen.org/archives/487,欢迎访问纯爷们的小生活
p.s.s 这个连姓氏都可以成为敏感瓷的时代真是别有乐趣

