Re: [emcs] emacs新手的幾個問題
看板Editor (編輯器(vim/emacs))作者YuiHirasawa (平澤 唯)時間9年前 (2015/03/24 02:46)推噓1(1推 0噓 13→)留言14則, 2人參與討論串2/2 (看更多)
※ 引述《ireullin (raison detre)》之銘言:
: 標題: [emcs] emacs新手的幾個問題
: 時間: Sun Mar 22 14:42:31 2015
:
: 因為是新手,所以很多東西還不熟悉
: 請多多包涵
: 我使用的是emacs24.4
: 都是在-nw狀態下執行
: 以下是我的問題
:
: 1.設定tab為四個空格
: 不管開啟甚麼檔案
: 都希望按下tab鍵之後是四個空格
: 網路上google了很多
: 可是每個人的解法都不一樣
: 我試了好像也不行
:
這個要求有點麻煩,因為每種程式語言的major-mode可能都會自己自訂他的tab
會有怎樣的功能(精確的說,是該major-mode會在自己的map中把tab給bind到
哪個function),像是內建的python-mode按多次tab會來回indent。這是沒辦
法的,你只能手動覆蓋預設的binding。
所以要達到你的要求,你必須手動明確明確指定哪些major-mode的map要讓tab
綁到「插入四個空格」。然後...學點Elisp吧XD
按C-h v 輸入 major-mode 可以查看目前的major-mode實際叫做什麼名子,
mode名稱-map就是該mode的map名稱:
(defun my-tab-insert-space ()
(interactive)
(insert " "))
(mapc (lambda (mode-name)
(define-key (symbol-value mode-name) (kbd "<tab>")
'my-tab-insert-space))
'(emacs-lisp-mode-map
lisp-interaction-mode-map
cperl-mode-map
python-mode-map
;; 繼續加上你要的mode
))
不過在這個設定之前,必須先加上(require '你要的mode)不然他會說沒有
這個map之類的錯誤。
: 2. 我在xwindow下面的console按著shift加上方向鍵
: 可以達到C-@一樣的功能
: 但是在windows使用putty連上linux之後
: 好像這個功能就沒了
: 是有哪裡要設定嗎
tty裡面shift除了輸入字元外其他的binding應該都是不起作用的,請另外想
個binding。
: 3. 如何複寫原本的熱鍵
: 又如何新增一個熱鍵是原有的功能但是
: 但是原本的熱鍵不被覆蓋掉
: e.g.
: 原本C-w是剪下,但其實有點不太順手= =a
: 希望可以再加一個C-x x也是剪下功能
: 而C-w是狀況是要並存或是關閉
:
: 以上
: 再麻煩大家了
:
你在Emacs中的任何操作其實都是一個個的function。例如預設的方向鍵上、
下、左、右實際上分別是綁到(previous-line) (next-line) (left-char)
(right-char)這幾個functions。
要怎麼知道特定按鍵是bind到哪個function?
=> C-h k [按鍵] 顯示該按鍵在目前buffer是bind到哪個function
=> C-h f [function name] 顯示該function在目前buffer中被bind到哪些key
「一個function可以被bind到數個key」,所以你高興的話也可以把你的上下左
右鍵全部綁成(newline)讓沒有人會用你的Emacs。
綁的方法很簡單:
1. 上面提過的local key-binding(指定在你要的mode有效)
(define-key 你要的mode-map (kbd "C-x x") 'function-name)
2. Global key:所有mode皆有效(除非該mode已經有使用該key-binding,
將優先採用local key binding)
(global-set-key (kbd "C-x x") 'function-name)
至於「C-w是狀況是要並存或是關閉」這句請加油,我真的不知你在寫啥...
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.85.115.137
: ※ 文章網址: https://www.ptt.cc/bbs/Editor/M.1427006553.A.9BC.html
--
→
10/15 02:11,
10/15 02:11
→
10/15 02:12,
10/15 02:12
→
10/15 02:12,
10/15 02:12
→
10/15 02:12,
10/15 02:12
→
10/15 02:13,
10/15 02:13
推
10/15 02:15,
10/15 02:15
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.234.158.113
※ 文章網址: https://www.ptt.cc/bbs/Editor/M.1427136404.A.639.html
推
03/24 11:47, , 1F
03/24 11:47, 1F
→
03/24 11:48, , 2F
03/24 11:48, 2F
→
03/24 11:49, , 3F
03/24 11:49, 3F
→
03/24 11:50, , 4F
03/24 11:50, 4F
→
03/24 11:51, , 5F
03/24 11:51, 5F
→
04/05 14:14, , 6F
04/05 14:14, 6F
→
04/05 14:15, , 7F
04/05 14:15, 7F
→
04/05 14:16, , 8F
04/05 14:16, 8F
→
04/05 14:16, , 9F
04/05 14:16, 9F
→
04/05 14:17, , 10F
04/05 14:17, 10F
→
04/05 14:18, , 11F
04/05 14:18, 11F
→
04/05 14:19, , 12F
04/05 14:19, 12F
→
04/05 14:20, , 13F
04/05 14:20, 13F
→
04/05 14:22, , 14F
04/05 14:22, 14F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Editor 近期熱門文章
PTT數位生活區 即時熱門文章