CentOS6U 5 64 비트 컴 파일 최신 버 전의 Emacs 편집기 설치

10750 단어 centosemacs컴 파일
yum 의 설치 방식 을 통 해 설 치 된 버 전이 비교적 낡 았 다 (21 버 전인 것 같 아 직접 확인 하지 않 았 다).샤 오 백 은 최신 버 전의 Emacs 를 즐겨 사용 하기 때문에 컴 파일 하여 설치 하려 고 한다.
환경 준비,
    :CentOS6U5 64bit
    :Basic  "Development Tools"  

다음은 설치 절차 입 니 다.
   
1. EPEL 소스 설치
rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel//6/x86_64/epel-release-6-8.noarch.rpm

2. Emacs 최신 버 전 을 다운로드 합 니 다. 여기 서 사용 하 는 최신 버 전 은 24.5 입 니 다.
3. Emacs 의존 패키지 설치
# yum install -y ncurses-devel
# ----------      ----------
#            Emacs          ,
#       Emacs      
# yum install -y libpng-devel libjpeg-devel libtiff-devel

4. Emacs 컴 파일 설치
# cd /usr/local/src/
# tar -xf emacs-24.5.tar.gz
# cd emacs-24.5
# ./configure
# make
# src/emacs -Q ;   make  Emacs    ,   
# make install

5. 프로필 준비
# cat ~/.emacs
(global-set-key "\C-h" 'backward-delete-char-untabify)
(global-set-key "\d" 'delete-char)
  
;; disable the startup info
(setq inhibit-startup-message t)
  
(setq-default tab-width 4)
  
(setq fill-column 70)
  
  ;; Display settings
  (display-time-mode t)
  (column-number-mode t)
  
  ;;        
  (transient-mark-mode t)
  
  ;;         
  (setq x-select-enable-clipboard t)
  
  ;; Show the patern parentheses
  ;;       
  (show-paren-mode t)
  (setq show-paren-style 'parentheses)
  
  ;; multi windows settings
  ;;(require 'window-numbering)
  ;;(window-numbering-mode 1)
  ;; Time settings
  ;;        (  ,   ),  
  ;; (setq display-time-day-and-date t)
  (display-time-mode 1)
  (setq display-time-24hr-format t)
  (setq display-time-use-mail-icon t) ;;       
  (setq frame-title-format "LavenLiu@%b")
  ;; GDB  ,   GDB
  (setq gdb-many-windows t)
  
  ;; Syntax highlight
  (global-font-lock-mode t)
  
  ;; y|n represents yes|no
  ;;    'y' 'n'  'yes' 'no'
  (fset 'yes-or-no-p 'y-or-n-p)
  
  ;;;; yasnippet setting
  (add-to-list 'load-path "~/.emacs.d/elpa/yasnippet")
  (require 'yasnippet)
  (yas/global-mode 1)
  ;; stop auto save
  (setq auto-save-default nil)
  (setq make-backup-files nil)
  
  
  ;; turn on ruler
  ;;(ruler-mode 1)
  
  ;;          ,         。
  ;; Encoding style
  (set-buffer-file-coding-system 'utf-8)
  (set default-buffer-file-coding-system 'utf-8)
  (set-terminal-coding-system 'utf-8)
  (set-language-environment 'UTF-8)
  (set-locale-environment "UTF-8")
  ;;
  (custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
  '(ansi-color-faces-vector
  [default default default italic underline success warning error])
  '(ansi-color-names-vector
  ["black" "red3" "ForestGreen" "yellow3" "blue" "magenta3" "DeepSkyBlue" "gray50"])
  '(auto-image-file-mode t)
  '(auto-save-default nil)
  '(c-label-minimum-indentation 4)
  '(column-number-mode t)
  '(compile-command "gcc -g -o")
  '(current-language-environment "UTF-8")
  '(custom-enabled-themes (quote (light-blue)))
  '(display-time-mode t)
  '(ede-auto-add-method (quote always))
  '(emms-lyrics-coding-system (quote gb2312))
  '(emms-lyrics-display-buffer t)
  '(emms-lyrics-display-on-minibuffer t)
  '(emms-player-list
  (quote
      (emms-player-mpg321 emms-player-ogg123 emms-player-mplayer)))
  '(global-semantic-highlight-edits-mode t)
  '(global-semantic-highlight-func-mode t)
  '(global-semantic-idle-completions-mode t nil (semantic/idle))
  '(image-animate-loop t)
  '(jde-jdk-registry (quote (("1.7.0_75" . "/usr/lib/jdk1.7.0_75"))))
  '(make-backup-files nil)
  '(mew-addrbook-file "~/Mail/Addrbook")
  '(mew-mail-domain "163.com")
  '(mew-name "xxxxxxxx")
  '(mew-smtp-server "smtp.163.com")
  '(mew-use-auto-alias t)
  '(mew-user "xxxxxxxx")
  '(org-agenda-files (quote ("~/Desktop/iGTD/iGTD.org")))
  '(org-completion-use-ido t)
  '(org-modules
  (quote
      (org-bbdb org-bibtex org-ctags org-docview org-gnus org-info org-irc org-mhe org-rmail org-w3m org-eshell org-mew org-toc)))
  '(org-startup-with-inline-images t)
  '(org-use-fast-todo-selection t)
  '(package-archives
  (quote
      (("gnu" . "http://elpa.gnu.org/packages/")
      ("melpa" . "http://melpa.org/packages/"))))
  '(safe-local-variable-values (quote ((TeX-master . t))))
  '(semantic-default-submodes
  (quote
      (global-semantic-decoration-mode global-semantic-idle-completions-mode global-semantic-idle-scheduler-mode global-semanticdb-minor-mode global-semantic-idle-summary-mode global-semantic-mru-bookmark-mode)))
  '(semantic-idle-scheduler-idle-time 3)
  '(send-mail-function (quote smtpmail-send-it))
  '(show-paren-mode t)
  '(smtpmail-smtp-server "smtp.163.com")
  '(smtpmail-smtp-service 25)
  '(vc-annotate-color-map
  (quote
      ((20 . "#ab4642")
      (50 . "#dc9656")
      (80 . "#f7ca88")
      (110 . "#a1b56c")
      (140 . "#86c1b9")
      (170 . "#7cafc2")
      (200 . "#ba8baf")
      (230 . "#a16046")
      (260 . "#181818")
      (290 . "#282828")
      (320 . "#383838")
      (350 . "#585858"))))
  '(vc-annotate-very-old-color "#585858"))
  (custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
  '(default ((t (:family #("   " 0 3 (charset chinese-gbk)) :foundry "outline" :slant normal :weight normal :height 120 :width normal)))))
  
  ;; E-Mail settings
  (add-to-list 'load-path
             (expand-file-name "~/.emacs.d/elpa/mew-20140901.1737/"))
  (autoload 'mew "mew" nil t)
  (autoload 'mew-send "mew" nil t)
  
  (if (boundp 'read-mail-command)
      (setq read-mail-command 'mew))
  
  (autoload 'mew-user-agent-compose "mew" nil t)
  (if (boundp 'mail-user-agent)
      (setq mail-user-agent 'mew-user-agent))
  (if (fboundp 'define-mail-user-agent)
      (define-mail-user-agent
      'mew-user-agent
      'mew-user-agent-compose
      'mew-draft-send-message
      'mew-draft-kill
      'mew-send-hook))
  ;; Highlight the selected region
  (transient-mark-mode t)
  
  ;;          
  (set-cursor-color "red")
  (set-mouse-color "goldenrod")
  
  ;;          
  (set-face-background 'region "yellow")
  
  ;; Add a blank line at the end of the file
  ;;            
  (setq require-final-newline t)
  (setq track-eol t)
  
  (add-to-list 'load-path "~/.emacs.d/elpa/pde/lisp")
  (load "pde-load")
  ;; ditaa block for org mode
  (org-babel-do-load-languages
  'org-babel-load-languages
  '((ditaa . t) ; this line activates ditaa
  (plantuml . t)
  (awk . t)
  (python . t)
  (perl . t)
  (ruby . t)
  (R . t)
  (sh . t)
  (gnuplot . t)
  (org . t)
  (java . t)
  (emacs-lisp . t)
  (calc . t)
  (sql . t)
  (dot . t)
  ))
  (setq org-ditta-jar-path (expand-file-name "~/.emacs.d/elpa/contrib/scripts/ditta.jar"))
  (setq org-plantuml-jar-path (expand-file-name "~/.emacs.d/elpa/contrib/scripts/plantuml.jar"))
  ;; org mode do not prompt me
  (setq org-confirm-babel-evaluate nil)
  (setq org-src-fontify-natively t)
  
  ;; ===============================================
  ;; my own functions
  (defun gtd ()
  (interactive)
  (find-file "~/Desktop/iGTD/iGTD.org")
  )
  
  ;; my own shortcuts
  (global-set-key "\C-cx" 'gtd)
  (global-set-key (kbd "M-g") 'goto-line)
  (global-set-key "\C-\\" 'set-mark-command)
  
  (defun read-only-if-symlink ()
  (if (file-symlink-p buffer-file-name)
      ((progn )
       (setq buffer-read-only t)
       (message "File is a symlink"))))
  (add-hook 'find-file-hook 'read-only-if-symlink)
  
  (add-hook 'local-write-file-hooks 'update-writestamps)
  
  (defun update-writestamps ()
  "Find writestamps and replace them with the current time."
  (save-excursion
      (save-restriction
      (save-match-data
        (widen)
        (goto-char (point-min))
        (while (search-forward "WRITESTAMP((" nil t)
          (let ((start (point)))
            (search-forward "))")
            (delete-region start (- (point) 2))
            (goto-char start)
            (insert-date))))))
  nil)
  
  ;;;       
  (add-to-list 'load-path "~/.emacs.d/elpa/auto-complete")
  (require 'auto-complete)
  
  ;;; Python       
  (add-to-list 'load-path "~/.emacs.d/elpa/python-environment")
  (add-to-list 'load-path "~/.emacs.d/elpa/jedi")
  (add-to-list 'load-path "~/.emacs.d/elpa/jedi-core")
  (add-to-list 'load-path "~/.emacs.d/elpa/virtualenv")
  (add-to-list 'load-path "~/.emacs.d/elpa/ctable")
  (add-to-list 'load-path "~/.emacs.d/elpa/concurrent")
  (add-to-list 'load-path "~/.emacs.d/elpa/deferred")
  (add-to-list 'load-path "~/.emacs.d/elpa/epc")
  (add-to-list 'load-path "~/.emacs.d/elpa/popup")
  (require 'popup)
  (require 'ctable)
  (require 'concurrent)
  (require 'epc)
  (add-hook 'python-mode-hook 'jedi:setup)
  (autoload 'jedi:setup "jedi" nil t)
  (setq jedi:complete-on-dot t)
  (require 'cedet)
  (global-ede-mode 1)
  
  ;; My Own settings
  ;; easy keys for split windows
  (global-set-key (kbd "M-3") 'delete-other-windows) ; [Alt+] unsplit all
  (global-set-key (kbd "M-4") 'split-window-below)
  (global-set-key (kbd "M-$") 'split-window-right)
  (global-set-key (kbd "M-RET") 'other-window) ; [Alt+Return] move cursor to next pane
  (global-set-key (kbd "M-0") 'delete-window)  ; remove current pane

6.. emacs. d 디 렉 터 리 를 현재 사용자 의 집 디 렉 터 리 에 배치
7. Python 과 관련 된 의존 패키지 jedi 설치
yum install -y python-pip
pip install ecdsa
pip install epc
pip install jedi

상기 몇 가지 절 차 는 Emacs 의 설치 와 Python 프로 그래 밍 환경의 설정 을 완 료 했 습 니 다. 다음은 Enjoy!

좋은 웹페이지 즐겨찾기