青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

syhd142  
日歷
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011
統計
  • 隨筆 - 23
  • 文章 - 122
  • 評論 - 31
  • 引用 - 0

導航

常用鏈接

留言簿(2)

隨筆檔案(23)

文章分類(270)

文章檔案(122)

我的豆瓣

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

 

轉至:http://www.zeuux.org/science/learning-emacs.cn.html


學習GNU Emacs

作者:夏武

1 GNU Emacs介紹

Emacs編輯器是最受歡迎、傳播范圍最廣、也是最強大和最靈活的UNIX文本編輯器。與其他文本編輯器的重要區別在于它是一個完備的工作環境,使用Emacs可以完成各種日常工作。對很多Emacs用戶來說,Emacs已經超越了編輯器的范疇,使用Emacs是一種文化,一種生活。 GNU Emacs是GNU開發的Emacs變體,也是最廣泛使用的Emacs編輯器。本文將以GNU Emacs為例講解GNU Emacs編輯器的使用和技巧。首先介紹一下常用的快捷鍵,接著介紹GNU Emacs擴展,最后是.emacs文件的配置。

2 快捷鍵

GNU Emacs的快捷鍵都是綁定于CTRL鍵和ALT鍵上。每個快捷鍵對應一個指令名稱,也就是一個對應的函數名稱,這允許你根據不同的喜好將快捷鍵綁定到不同的指令名稱。另外,在Emacs中有很多的指令沒有綁定快捷鍵,我們可以通過M-x 指令名稱來執行指令。例如,全文替換我們可以使用M-x replace-strings。這樣,很多沒有綁定快捷鍵的功能都可以用到了。

2.1 基本操作

表1是基本操作指令列表。

表1 基本操作指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-SPset-mark-command設置標記C-qquoted-insert插入引用
C-abeginning-of-line移動到行首C-risearch-backward向前查找
C-bbackward-char向前移動一個字符C-sisearch-forward向后查找
C-ttranspose-chars掉換前后二個字符位置C-ddelete-char刪除一個字符
C-eend-of-line移動到行尾C-vscroll-up向下滾動一屏
C-fforward-char向后移動一個字符C-wkill-region刪除選定區域
C-x <scroll-left向左移動一屏C-x >scroll-right向右移動一屏
TABforward-button縮進C-yyank粘貼
C-zsuspend-frame暫停emacsC-nnext-line移動到下一行
C-kkill-line刪除一行ESCESC-prefix取消前綴
C-oopen-line增加一行DELdelete-backward-char向前刪除一個字符
C-pprevious-line向上移動一行C-zsuspend-emacs暫停Emacs
C-_undo取消C-lrecenter使光標所在行變為屏幕中央

2.2 幫助

表2是幫助指令列表。

表2 幫助指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-h wwhere-is查看命令菜單位置或者綁定熱鍵C-h kdescribe-key查看熱鍵詳細功能描述
C-h thelp-with-tutorial查看Emacs教程C-h cdescribe-key-briefly查看熱鍵簡單功能描述
C-h nview-emacs-news瀏覽Emacs新聞C-h bdescribe-bindings查看綁定熱鍵
C-h mdescribe-mode查看編輯模式C-h C-c查看許可證信息
C-h ?help-for-help查看幫助列表

2.3 緩沖區操作

表3是緩沖區操作指令列表。

表3 緩沖區操作指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-x C-dlist-directory列出當前目錄C-x =what-cursor-position顯示當前光標所在位置
C-x C-ffind-file查找文件C-x TABindent-rigidly強制縮進
C-x C-odelete-blank-lines刪除空白行C-x blist-buffers打開另外一個緩沖區
C-x C-pmark-page全選C-x C-rfind-file-read-only以只讀方式打開文件
C-x C-ssave-buffer保存當前緩沖區C-x iinsert-file插入文件
C-x C-ttranspose-lines掉換前后行位置C-x hmark-whole-buffer標記當前全部緩沖區
C-x C-vfind-alternate-file打開另外一個文件,關閉緩沖區C-x lcount-lines-page計算當前緩沖區行數
C-x C-wwrite-file保存緩沖區內容到文件C-x kkill-buffer關閉緩沖區
C-x mmail寫EmailC-x 4 mmail-other-window打開新窗口寫Email
C-x ssave-some-buffers保存多個文件C-x uadvertised-undo取消上一步操作

2.4 宏操作

表4是宏操作指令列表。

表4 宏操作指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-x (start-kbd-macro開始錄制宏C-x )end-kbd-macro結束宏錄制
C-x ecall-last-kbd-macro執行上一次綁定的宏命令

2.5 窗口操作

表5是窗口操作指令列表。

表5 窗口操作指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-x 0delete-window關閉當前窗口C-x 1delete-other-windows保留當前窗口,關閉其他窗口
C-x 2split-window-vertically水平分割窗口C-x 3split-window-horizontally垂直分割窗口

2.6 C語言編程模式

表6是C語言編程模式的指令列表。

表6 C語言編程模式指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
M-abackward-sentence移動到語句開頭M-eforward-sentence移動到語句結尾
C-M-abeginning-of-defun移動到函數開頭C-M-eend-of-defun移動到函數結尾

2.7 SGML語言編程模式

表7是SGML語言編程模式指令列表。

表7 SGML語言編程模式指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-c C-tsgml-tag插入標記C-c C-asgml-attributes插入屬性
C-c C-bsgml-skip-tag-backward移動到前一個標記C-c C-fsgml-skip-tag-forward移動到后一個標記
C-c DELsgml-delete-tag刪除一個標記

2.8 版本控制命令

表8是版本控制指令列表。

表8 版本控制指令

快捷鍵指令名稱用途快捷鍵指令名稱用途
C-x v dvc-directory列出目錄下修改過的文件C-x v =vc-diff顯示改動
C-x v lvc-print-log顯示改動歷史記錄C-x v ivc-register加入文件到版本控制中
C-x v hvc-insert-headers插入版本控制信息C-x v rvc-retrieve-snapshot取某一版本文件
C-x v vvc-next-action進入提交改動狀態

3 GNU Emacs擴展

3.1 Emacs Lisp語言介紹

3.2 有用的GNU Emacs擴展

3.3 寫一個GNU Emacs擴展

這里我們自己動手寫一個GNU Emacs擴展,實現復制一行的功能。下面是實現這個擴展的代碼。

(defun copy-line (&optional arg)
 "Save current line into Kill-Ring without mark the line"
 (interactive "P")
 (let ((beg (line-beginning-position)) 
	(end (line-end-position arg)))
 (copy-region-as-kill beg end))
)
			  
將上面這段代碼拷貝到.emacs中,就可以開始使用這個功能了。

4 .emacs文件

4.1 樣例

;;顯示時間
(display-time)
;;顯示行號
(column-number-mode t)
(show-paren-mode t)
;;設置TAB寬度為4
(setq default-tab-width 4) 
;;以下設置縮進 
(setq c-indent-level 4)
(setq c-continued-statement-offset 4)
(setq c-brace-offset -4)
(setq c-argdecl-indent 4)
(setq c-label-offset -4)
(setq c-basic-offset 4)
(global-set-key "\C-m" 'reindent-then-newline-and-indent)
(setq indent-tabs-mode nil)
(setq standard-indent 4)

;;開啟語法高亮。
(global-font-lock-mode 1) 

;;設置默認工作目錄
(setq default-directory "/home/test/source/") 

;; 去掉滾動條
(set-scroll-bar-mode nil)

;;關閉開啟畫面
(setq inhibit-startup-message t) 
(setq indent-tabs-mode t)

;;不產生備份文件
(setq make-backup-files nil) 

;;設置自定義變量
(custom-set-variables
'(column-number-mode t)
'(current-language-environment "UTF-8")
'(display-time-mode t)
'(ecb-options-version "2.32")
'(mouse-1-click-in-non-selected-windows t)
'(mouse-drag-copy-region t)
'(mouse-yank-at-point t)
'(save-place t nil (saveplace))
'(show-paren-mode t)
'(transient-mark-mode t))
(custom-set-faces
;;選擇小工具欄圖標
(tool-bar-mode -1)
				

5 總結

6 參考資料

posted on 2010-11-03 21:01 Fucker 閱讀(851) 評論(0)  編輯 收藏 引用
 
Copyright © Fucker Powered by: 博客園 模板提供:滬江博客
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品国产一区二区三区| 欧美一区二区视频观看视频| 国产精品乱码妇女bbbb| 欧美3dxxxxhd| 欧美日韩成人综合在线一区二区| 欧美乱妇高清无乱码| 欧美日本在线看| 国产精品外国| 激情视频一区二区| 亚洲激情专区| 亚洲欧美色婷婷| 久久在线精品| 亚洲激情成人| 99av国产精品欲麻豆| 亚洲午夜视频在线| 久久九九国产精品| 欧美精品在线视频| 国产亚洲精品久久飘花| 亚洲国产成人tv| 亚洲自拍三区| 美女精品在线观看| 亚洲国产精品第一区二区| 99精品欧美一区二区三区综合在线| 一区二区三区欧美日韩| 久久成人在线| 亚洲精品影视| 欧美一区二区三区精品| 欧美精品尤物在线| 国语自产精品视频在线看一大j8| 亚洲伦理精品| 久久久噜噜噜| 99精品欧美一区二区三区 | 美女脱光内衣内裤视频久久影院| 亚洲黄色一区| 羞羞答答国产精品www一本| 欧美顶级少妇做爰| 国产在线欧美日韩| 午夜精品久久久久久99热软件| 老司机免费视频久久| 国产精品99久久久久久久女警 | 香蕉成人久久| 欧美日韩国产123区| 在线免费观看日本欧美| 久久精品三级| 亚洲影院一区| 国产精品a级| 在线一区免费观看| 亚洲精品免费在线| 欧美.com| 亚洲高清二区| 欧美成人官网二区| 欧美在线视频观看| 国产欧美一区二区三区在线老狼| 国产精品99久久久久久久久| 免费欧美日韩| 久久免费偷拍视频| 国语自产在线不卡| 久久亚洲影音av资源网| 欧美综合激情网| 国产午夜精品久久久| 久久大逼视频| 欧美一区二区三区精品| 在线播放国产一区中文字幕剧情欧美| 欧美在线观看一二区| 小黄鸭精品密入口导航| 国产三级欧美三级| 久久青青草综合| 可以免费看不卡的av网站| 伊人成综合网伊人222| 欧美成在线观看| 免费成人激情视频| 亚洲精品乱码久久久久久黑人 | 在线一区二区三区四区| 国产精品成人一区二区艾草| 两个人的视频www国产精品| 欧美一区二区三区精品电影| 最近中文字幕mv在线一区二区三区四区| 欧美在线亚洲| 在线观看91精品国产入口| 欧美国产精品专区| 免费日韩成人| 在线亚洲一区二区| 午夜一区二区三区在线观看| 韩国av一区二区三区| 欧美成人小视频| 欧美日韩成人激情| 性色av一区二区三区| 久久国内精品自在自线400部| 在线电影国产精品| 亚洲人成艺术| 国产精品激情偷乱一区二区∴| 久久av一区二区三区| 久久亚洲电影| 亚洲一二三区视频在线观看| 久久国产精品一区二区| 亚洲精品国精品久久99热| 亚洲天堂免费在线观看视频| 伊人久久亚洲热| 夜夜夜精品看看| 亚洲国产成人91精品| 亚洲男人的天堂在线aⅴ视频| 影音先锋一区| 亚洲一区二区高清视频| 亚洲国产二区| 亚洲欧美成人一区二区三区| 最新日韩在线| 欧美一区二区三区久久精品 | 国产一区二区三区四区老人| 亚洲国产精品黑人久久久| 国产精品视频免费在线观看| 欧美粗暴jizz性欧美20| 国产日韩欧美精品综合| 亚洲精品国产视频| 136国产福利精品导航网址应用| 99riav国产精品| 亚洲全部视频| 久久久久久91香蕉国产| 欧美一区二区三区免费观看视频| 欧美精品一卡| 欧美激情精品久久久| 国外成人性视频| 亚洲欧美综合一区| 亚洲欧美日韩精品久久| 欧美另类女人| 欧美激情第五页| 亚洲第一精品影视| 久久视频精品在线| 久久久久综合网| 狠狠久久亚洲欧美| 亚洲欧美视频在线观看| 午夜精品久久99蜜桃的功能介绍| 欧美精品一区二区三区久久久竹菊 | 国产精品成人一区二区三区夜夜夜 | 国产精品久久久久久亚洲调教| 亚洲高清av| 亚洲国产成人高清精品| 久久综合九色欧美综合狠狠| 久久婷婷综合激情| 国内偷自视频区视频综合| 欧美一区二区三区喷汁尤物| 欧美夜福利tv在线| 国产欧美精品久久| 欧美一区二区三区在线| 久久一区二区三区国产精品| 伊人精品成人久久综合软件| 美女国产精品| 亚洲片区在线| 亚洲一区影音先锋| 国产日韩亚洲欧美精品| 久久久xxx| 欧美激情亚洲自拍| 亚洲精品在线三区| 欧美视频网站| 午夜日韩福利| 欧美顶级少妇做爰| 亚洲美女黄色| 国产精品高清免费在线观看| 欧美一区观看| 欧美激情国产日韩精品一区18| 亚洲激情视频在线观看| 欧美精品三级日韩久久| 亚洲一区精品电影| 每日更新成人在线视频| 亚洲精品欧洲精品| 国产精品美女久久久浪潮软件 | 欧美一级久久| 蜜桃av一区二区三区| 99re这里只有精品6| 国产精品久久999| 欧美自拍偷拍午夜视频| 亚洲国产影院| 欧美在线免费| 亚洲精品亚洲人成人网| 国产精品美女主播在线观看纯欲| 欧美中文字幕视频| 最新亚洲视频| 欧美中文字幕在线| 一本大道av伊人久久综合| 国产免费成人av| 欧美激情一区二区三区| 性欧美超级视频| 亚洲理论在线| 免费成人黄色片| 欧美一区二区三区在线播放| 亚洲精品国偷自产在线99热| 国产欧美不卡| 欧美午夜宅男影院| 欧美国产1区2区| 久久精品午夜| 亚洲欧美综合精品久久成人| 亚洲精选视频免费看| 久久资源av| 性欧美激情精品| 一区二区三区日韩精品| 91久久精品国产91久久性色tv| 国产亚洲欧美aaaa| 国产精品普通话对白| 欧美主播一区二区三区美女 久久精品人 | 极品少妇一区二区三区| 国产精品久久久久免费a∨大胸|