[Emacs]linux下编译安装emacs23 cvs

来源:互联网 发布:apache ab 和jmeter 编辑:程序博客网 时间:2024/05/17 06:45
[Emacs]linux下编译安装emacs23 cvs
系统: ubuntu 7.10
我现在2台机上在用这个版本,一台机是gnome, 另一台机是KDE,KDE上的emacs-gtk可以直接用scim输入了,但gnome据说是某session-daemon程序的问题导致不能激活外部输入法,我现在的解决方法是开一个terminal, 在terminal下用emacs -nw启动,这样就能用外部输入法输入中文了



Checkout源代码


sudo apt-get install ssh cvs
export CVS_RSH
="ssh"
cvs 
-z3 -d:pserver:anonymous@cvs.sv.gnu.org:/cvsroot/emacs co -r emacs-unicode-2 emacs 


安装依赖包


sudo apt-get install texinfo libgpmg1-dev libungif4-dev libpng12-dev libgd2-xpm-dev libtiff4-dev libjpeg62-dev librsvg2-dev libgtk2.0-dev
注意:上面有几个图形库不是必须的;我的机器本来就装了很多开发库,所以上面的库估计也是不全的

编译安装


./configure --prefix=/usr --enable-font-backend --with-gtk --with-xft --with-freetype && make bootstrap && make info && sudo make install



配置


编辑~/.Xresources

Xft.antialias: 1
# 可以尝试把hinting关了对比效果,有些显示器上不开反而更好看
Xft
.hinting: 1
Xft
.hintstyle: hintfull 
Xft
.rgba: rgb

Emacs
.FontBackend: xft 
Emacs.Geometry: 100x32+4+4
执行xrdb ~/.Xresources例配置生效

编辑~/.emacs文件(最新版在我的wiki)
;;设置个人信息
;;
(setq user
-full-name "Jarod Liu")
(setq user
-mail-address "liuyuanzhi(at)gmail.com")

;;添加自定义loadpath
;;
(
if (fboundp 'normal-top-level-add-subdirs-to-load-path)
    (let* ((my-lisp-dir "/home/jarod/.myemacs/")
           (default-directory my-lisp-dir))
      (setq load-path (cons my-lisp-dir load-path))
      (normal-top-level-add-subdirs-to-load-path)))


;;设置字体 
;;
(set-default-font "Monospace-14")
(set-fontset-font (frame-parameter nil 
'font)
          
'unicode '("Microsoft YaHei" . "unicode-bmp")) 
(set
-fontset-font (frame-parameter nil 'font)
          
'han '("Microsoft YaHei" . "unicode-bmp"))
(set-fontset-font (frame-parameter nil 
'font)
          
'symbol '("Microsoft YaHei"  . "unicode-bmp"))
(set
-fontset-font (frame-parameter nil 'font)
          
'cjk-misc '("Microsoft YaHei"  . "unicode-bmp"))
(set-fontset-font (frame-parameter nil 
'font)
          
'bopomofo '("Microsoft YaHei"  . "unicode-bmp")) 


;; 
For my language code setting (UTF-8)
;;
(setq current
-language-environment "UTF-8")
(setq default
-input-method "chinese-py")
(setq locale
-coding-system 'utf-8)
(set-terminal-coding-system 
'utf-8)
(set
-keyboard-coding-system 'utf-8)
(set-selection-coding-system 
'utf-8)
(prefer
-coding-system 'utf-8)


;;启动服务器(for emacsclient)
;;
(server-start)


;;自定义按键
;;
(global-set-key [f1] 
'shell);F1进入Shell 
;(global
-set-key (kbd "C-SPC"'nil);用win+space为set-mark键,留出ctrl+space热键作为输入法
;(global-set-key (kbd "S-SPC") 
'set-mark-command)


;;使用习惯配制
;;
(setq default
-major-mode 'text-mode);一打开就起用 text 模式。
(global-font-lock-mode t);语法高亮
(auto-image-file-mode t);打开图片显示功能
(fset 
'yes-or-no-'y-or-n-p);以 y/n代表 yes/no
(setq default-fill-column 80);默认显示 xx列就换行
(column-number-mode t);显示列号
(show-paren-mode t);显示括号匹配
(setq show-paren-style 
'parentheses);括号匹配时显示另外一边的括号,而不是跳到另一个括号
;(display
-time-mode 1);显示时间,格式如下
;(setq display
-time-24hr-format t)
;(setq display
-time-day-and-date t)
(tool
-bar-mode nil);去掉工具栏
(scroll
-bar-mode nil);去掉滚动条,可以使用鼠标滚轮
(setq scroll
-margin 3 scroll-conservatively 10000);防止页面滚动时跳动, scroll-margin 3 可以在靠近屏幕边沿3行时就开始滚动
(mouse
-avoidance-mode 'animate);光标靠近鼠标指针时,让鼠标指针自动让开
(setq mouse-yank-at-point t);支持中键粘贴
(transient-mark-mode t);高亮显示要拷贝的区域
(setq x-select-enable-clipboard t);支持emacs和外部程序的粘贴
(setq interprogram-paste-function 
'x-cut-buffer-or-selection-value) ;
(setq frame
-title-format "%b");在标题栏提示buffer名
(setq
-default make-backup-files nil);不要生成临时文件
(setq visible
-bell t);关闭烦人的出错时的提示声
(setq inhibit
-startup-message t);关闭起动时的那个“开机画面”
(setq 
kill-ring-max 64);undo number
;; 缩进
(setq default
-tab-width 4);;    设置tab为4个空格的宽度
(setq tab
-width 4)
(global
-set-key "\C-m" 'newline-and-indent)
(global-set-key "\C-j" 
'newline);; 交换这两个按键。因为大多数情况下,回车后是要缩进的。

;; mode alist
(mapcar
 (function (lambda (setting)
         (setq auto
-mode-alist
           (cons setting auto
-mode-alist))))
 
'(("\\.xml$".  sgml-mode)
   ("\\\.bash" . sh-mode)
   ("\\.rdf$".  sgml-mode)
   ("\\.session" . emacs-lisp-mode)
   ("\\.l$" . c-mode)
   ("\\.css$" . css-mode)
   ("\\.cfm$" . html-mode)
   ("gnus" . emacs-lisp-mode)
   ("\\.idl$" . idl-mode)
   ("\\.rb$" . ruby-mode)
   ("\\.rhtml$" . html-mode)))




;; tabbar
;;
(require 
'tabbar) ; http://liuyuanzhi.googlepages.com/tabbar.el
(tabbar
-mode)
;(global
-set-key (kbd ""'tabbar-backward-group)
;(global-set-key (kbd "") 
'tabbar-forward-group)
(global
-set-key (kbd "C-`"'tabbar-backward) ;切换TAB的快捷键
(global-set-key (kbd "C-<tab>") 
'tabbar-forward)
;(set
-face-attribute 'tabbar-default-face nil :family "Tahoma") ;设置tabbar字体


;; color-theme 
;;
(require 
'color-theme) ;http://liuyuanzhi.googlepages.com/color-theme.el
(color
-theme-gnome2)


;; ruby                                                                         
;; based on http
://www.rubygarden.org/Ruby/page/show/InstallingEmacsExtensions  
;;                                                                              
(
require 'ruby-mode) ;安装ubuntu中的ruby-elisp包
(autoload 
'ruby-mode "ruby-mode" "Ruby editing mode." t)
(modify
-coding-system-alist 'file "\\.rb$" 'utf-8)
(modify
-coding-system-alist 'file "\\.rhtml$" 'utf-8)


(autoload 
'run-ruby "inf-ruby"
  "Run an inferior Ruby process")
(autoload 
'inf-ruby-keys "inf-ruby"
  
"Set local key defs for inf-ruby in ruby-mode")
(add
-hook 'ruby-mode-hook
          
'(lambda ()
             (inf
-ruby-keys)))
;; 
If you have Emacs 19.2x or older, use rubydb2x                              
(autoload 
'rubydb "rubydb3x" "Ruby debugger" t)

配置文件都是从网上直接copy来的,把一些不用的注释了
posted on 2007-12-19 10:29 Jarod 阅读(2704) 评论(0)  编辑  收藏 所属分类: Linux
新用户注册  刷新评论列表
原创粉丝点击