Vietnamen’s Weblog

Time, Chances, Diligence, Intelligence: which is the most important?

Sử dụng hiệu quả Emacs

leave a comment »

Để xem thông tin về cách cài đặt Emacs, đọc Editors. Sau đây là một vài bổ sung về các chức năng tuyệt vời của Emacs khi khuôn khổ bài viết trên quá dài.

LaTeX

Xin xem bài viết về LaTeX.

References:

  1. http://www.phys.uu.nl/~haque/latexemacs.html
  2. http://www.gentoo-wiki.info/LaTeX

Emacs Code browser

ECB giúp viết codes lập trình đơn giản hơn với emacs. Xin xem bài viết ECB.

References:

  1. http://ecb.sourceforge.net/

R statistic language

ESS giúp soạn thảo và chạy các script viết cho ngôn ngữ thống kê R.

sudo apt-get install ess

To use inside emacs: M-x R

hoặc M-x S (với S-Plus)

Make sure these lines are in ~/.emacs

; automatically get the correct mode
auto-mode-alist (append (list '("\\.c$" . c-mode)
			      '("\\.tex$" . latex-mode)
			      '("\\.S$" . S-mode)
			      '("\\.s$" . S-mode)
			      '("\\.R$" . R-mode)
			      '("\\.r$" . R-mode)
			      '("\\.html$" . html-mode)
                              '("\\.emacs" . emacs-lisp-mode)
	                )
		      auto-mode-alist)
; comment out the following if you are not using R/S-Plus on ACPUB
; add a ";" in front of each line
(load "/usr/pkg/ess/lisp/ess-site")
(setq-default inferior-S+6-program-name "Splus")
(setq-default inferior-R-program-name "R")
Chú ý: Extensions for R mode end in .R or .r by default; for S use .S or .s as a file suffix

Một số phím tắt:

  • Esc-p Previous Command (at command line)
  • Esc-n Next Command (at command line)
  • C-c C-v Get help on R/S object (enter name in
  • C-c C-d Dump object or function to a Emacs buffer for editing
  • C-c C-l Load file from buffer into R
  • C-c C-f submit a Function in current buffer to R
  • C-c C-j submit the current line in buffer to R
  • C-c C-r submit the highlignted or marked region to R
  • C-c TAB complete object/file name
  • C-h m for help on ESS mode
  • More help is available under the iESS menu in emacs:
    • about (Emacs Info system for on-line help for ESS)
    • describe (for Control/Escape sequences and definitions for ESS)

References:

  1. http://ess.r-project.org/Manual/ess.html
  2. http://www.stat.duke.edu/courses/Spring04/sta244/computing/R-ESS.html

VC – local version control

VC đóng vai trò làm trung gian để quản lí version/source thông qua 1 trong các hệ thống RCS CVS SVN SCCS Arch MCVS.

Sau đó, chỉ việc dùng theo các keybinding sau

C-x vv  = check in/check out

Khi nào bạn check-in, nó sẽ hiện ra một buffer cho bạn gõ vào các thông tin gợi nhớ về lần cập nhật này (ví dụ: tại sao cập nhật, đã sửa bug nào rồi, ai sửa…)

C-x cc = kết thúc việc nhập message

C-x vc

C-x vu

M-x vc-<TAB>  (để liệt kê ra các lệnh của version control nếu ta quên phím tắt)

References:

  1. http://docstore.mik.ua/orelly/perl/sysadmin/appa_01.htm
  2. http://agave.garden.org/~aaronh/rcs/manual/gnu_emacs/rcs_1.html
  3. http://www.gnu.org/software/emacs/manual/html_node/emacs/General-VC-Options.html#General-VC-Options

RCS – Revision control system

Ngoài việc dùng SVN, ta có thể dùng một tiện ích nhỏ gọn và tiện lợi cho emacs, đó là rcs. RCS đơn giản vì 1 file chỉ cho phép có tối đa 1 người chỉnh sửatại 1 thời điểm.

sudo apt-get install rcs

Cấu hình

Keybinding Description
C-h t Start the tutorial.
C-h i m emacs RET Read the EmacsManual.
C-h m, C-h b Describe the current major mode.
M-x customize group RET foo RET Configure handling of .foo files.
C-h c, C-h k What does this key do?
C-h f What does this function do?
C-h v What does this variable do?
C-h a Search for commands by regexp.
M-x customize apropos Search for options by regexp.
M-: Prompt for expression.
M-x load-file RET ~/.emacs RET Reload .emacs without restarting.

Một số packages nên cài đặt: auctex, haskell-mode, lgrind

References:

  1. http://www.emacswiki.org/emacs/EmacsChannelFaq

TabMode

Một tính năng ưu việt mà tôi mới được biết là tab-browsing. Đây là một tính năng mới mà các webbrowsers mới có gần đây. Emacs cũng hỗ trợ chức năng này với tabbar mode.

GNU Emacs phiên bản mới đã tích hợp sẵn, ta chỉ việc add nội dung sau vào ~/.emacs

(require ‘tabbar)
(tabbar-mode) ;comment out this line to start without the tab on top
(global-set-key [(control shift h)] ‘tabbar-mode)
(global-set-key [(control shift up)] ‘tabbar-backward-group)
(global-set-key [(control shift down)] ‘tabbar-forward-group)
(global-set-key [(control shift left)] ‘tabbar-backward)
(global-set-key [(control shift right)] ‘tabbar-forward)
(global-set-key [(control next)] ‘tabbar-forward-tab)
(global-set-key [(control prior)] ‘tabbar-backward-tab)

Sau đó, load lại file cấu hình: M-x load-file <RET> ~/.emacs

Ở phía trên sẽ hiện ra các tab. Điểm hay ở đây là các buffer sẽ được phân loại ra theo major mode. Ví dụ: các files ở Latex-mode sẽ được hiện ra cùng với nhau theo một group.

– Để di chuyển qua lại giữa các group: Ctrl-Shift-Up or Ctrl-Shift-down

– Để di chuyển qua lại giữa các tab trong cùng 1 group: Ctrl-Shift-left   or Ctrl-Shift-right

References:

  1. http://www-cdf.fnal.gov/~sthrlnd/emacs_help.html
  2. http://www.emacswiki.org/emacs/TabBarMode

Written by vietnamen

Tháng Hai 18, 2009 lúc 9:55 chiều

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: