emacs 操作及其它

好了,開始用 emacs 吧

1. 所有 mode 共有的基本操作

   停止/取消任何動作
     c-g c-g c-g c-g
   動作重複
     c-u (4),c-(n)
   移動光標
      橫向:左/右 b/f,c-左/右 (單詞),Home/End c-a/c-e,c-PgUp/c-PgDn (橫向翻頁)
      縱向:上/下 p/n,c-上/下 (段落),PgDn/PgUp c-v/m-v,c-Home/c-End m-</m->
      括號:m-c-p (後一個),m-c-n (前一個) (可用於各種語言函數跳轉)
      當前行移到窗口中間:c-l
   刪除
     c-Del,m-Del (單詞),c-k c-k (行),m-/ (空格), ESC-Space (留一個空格)
   後悔/反悔
     c-x u,c-/,c-_; 反悔:移動一下光標,再後悔
   剪切/複製/粘貼
     塊開始:c-Space,c-@;c-w;m-w;c-y;m-y;c-x h (全選)
     c-x c-x (替換起始位置)
   矩形區域
     c-x r k (剪切),c-x r d (剪切,不復制),c-x r c (清除)
     c-x r y (粘貼),c-x r o (插入空白矩形)
   查找
     c-s (向前),c-r (向後),大小寫:有大寫字母
     c-s m-y (粘貼),c-s c-w (當前光標處的字符),c-s c-y (當前到行尾的字符)
     c-s Return c-w (單詞)
   替換
     m-%;! (全部替換),Space/n (替換,下一個),Del/n (不替換,下一個)
     . (替換當前,退出), (替換停留,可跟y),^ (返回上次替換位置),Return/q (退出)
      遞歸:c-r (進入),m-c-c (退出),c-] (徹底退出替換)
   正則表達式
      ^ (行首),$ (行尾), . (任意單個),.* (任意多個),/< (單詞開頭),/> (單詞結尾)
      [] (匹配方括號中的任意一個,如a-z),特殊字符加 /
   拼寫檢查
     m-$ (當前單詞),m-x ispell (全文)
   轉換Tab爲空格
      選塊 m-x untabify
   選擇區域大小寫
     c-x c-u (大寫),c-x c-l (小寫)
   更改文字大小
     Shift - MouseLeft
   重繪/屏幕中心
     c-l
   自動折行可見
     m-x set-variable: truncate-partial-width-windows: nil/t
   高亮當前行
     m-x global-hl-line-mode
   畫文本圖形
     m-x edit-picture (退出: c-c c-c)
     c-c ^ 上,c-c . 下,c-c < 左,c-c > 右
     c-c / 右下,c-c ' 右上,c-c ` 左上,c-c / 左下
   自動補齊
     m-/,m-x semantic-ia-complete-symbol-menu,m-x senator-completion-menu-keyboard-popup
   ECB
     m-x ecb-active, m-x ecb-... , ecb-change-layput:left3 / 9
   cscope
     m-x cscope-... ,
     c-c s g, c-c s u
     c-c s a: cscope-set-initial-directory
     c-c s t: cscope-find-this-text-string
   調整行距
     *scratch* (setq-default line-spacing 3)  C-j
   顯示圖片
     m-x thumb-...  c-c t ...
   宏
     c-x ( (開始),c-x ) (結束),c-x e (執行),c-u c-x ( (增加),m-c-c (退出遞歸)
   大綱
     主模式: m-x outline-mode,副模式: m-x outline-minor-mode (c-c c-o)
     移光標: c-c c-n/p (標題),c-c c-f/b (同級),c-c c-u (上級)
     顯隱: c-c c-a/t (全部),c-c c-k/l (正文),c-c c-s/d (子標題)
     設置/顯示符號: c-h v outline-reg
   顯示/隱藏 副模式
     m-x hs-minor-mode,c-c @ c-c (隱藏/顯示模塊)
     c-c @ c-m-h (隱藏全部頂極),c-c @ c-m-s (顯示全部頂極)
   十六進制
     hexl-mode,hexl-mode-exit,...
   編譯 elisp .el-> .elc
     m-x byte-compile

2. 字符界面的基本操作

   菜單
     m-` (m-x tmm-menubar) / PageUp

3. 中文 (utf-8)

   emace 打開中文文件
     ;; locale coding
     (setq locale-coding-system'utf-8)
     (prefer-coding-system'utf-8)
     (set-keyboard-coding-system'utf-8)
     (set-terminal-coding-system'utf-8)
     (set-selection-coding-system'utf-8)
     (set-clipboard-coding-system 'ctext)
     (set-buffer-file-coding-system 'utf-8)
   emacs 內部輸入中文
     c-/ (輸入法進出),c-x Return c-/ (輸入法選擇)
   emacs 外部輸入中文
     用 scim 吧,/etc/X11/xinit/xinitrc.d/
       # setup XMODIFIERS
       [ -z "$XMODIFIERS" -a -n "$XIM" ] && XMODIFIERS="@im=$XIM"
       [ -n "$XMODIFIERS" ] && export XMODIFIERS
       export XIM=scim
       export XIM_PROGRAM=scim
       export GTK_IM_MODULE=scim
       export XMODIFIERS="@im=SCIM"
       gnome-im-settings-daemon >/dev/null


3. c 語言 mode

   宏預處理
     c-c c-e,c-macro-expand



========================================================

GDB

display/i $pc

顯示當前代碼行
list *$pc

使用 GDB 環境變量
set $i = 0
print bar[$i++]->contents




========================================================

Shell

多文件查找替換:find | grep "/.c" | xargs sed -i -e "s//"<body bgcolor=/////"#FFFFFF//"<body bgcolor=/////"e4ecf4/g"


========================================================

tcpdump

tcpdump -s 2000 -w web.log port 80
tcpdump -nnXs 2000 -r web.log | less

========================================================

find

find -name '*.[ch]' -exec sed -i -e 's/EDF3FB/D3DDDF/g' {} /;


========================================================

GNOME

切換 workspace : Ctrl + Alt + <left>/<right>

改變 workspace 數量

vim /etc/gconf/schemas/metacity.schemas
/num_workspaces
改變 <default>4</default>
# gconftool-2 --install-schema-file=/etc/gconf/schemas/metacity.schemas




What I want?
--------------------------------------------------------

1. 閱讀代碼 (c, c++, html, css, js, shell, ...)  [2006-05-26]
   寫代碼

   [說明] 不用來收發郵件,工作有 Outlook,個人有在線郵件
          閱讀代碼取代 SourceInsight,支持跳轉/返回:函數、變量、宏,等等

2. 隨便寫一些東西、亂記   [2006-05-26]

   [說明] 類似 Windows 上的 Notepad 和 Linux 上的 GEdit,隨便記錄東西,不會有 Notepad 的自動永久折行問題。
          最好能有自動懸掛縮進,類似於 Word 。
          可以摺疊。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章