This topic created in 4176 days ago, the information mentioned may be changed or developed.
一直都用vim写代码,C C++ Python...
这两天突然想换个口味,尝试下Emacs。但是试了两天还是没有什么头绪,难道是这两个之间在使用习惯上相差太大了?
不是按键不适应,只是好像觉得一直以来都习惯于vim的三种模式,并且hjkl包括ctrlp等插件能很快的在view模式下进行浏览,而在emacs下没有这三种模式,一下子觉得很不习惯。
请问下各位emacser是如何起步的,如果有同学同时拥有vim和emacs使用经验的,不妨分享下。
31 replies • 2014-12-10 22:03:43 +08:00
 |
|
1
boom11235 Dec 10, 2014
你可以在emacs中装个evil插件,立马拥有vim的三种模式..
|
 |
|
2
ozking Dec 10, 2014
先熟悉基本快捷键,然后把el-get搞起来,其他找什么就去EmacsWiki
|
 |
|
3
nicai000 Dec 10, 2014
当然相差大, 另外没有需求为什么要转变, 太闲?
|
 |
|
4
tftk Dec 10, 2014
我就看看不说话。
|
 |
|
6
lululau Dec 10, 2014
Emacs 和 Vim 都用过,不过我是先用的 Emacs,两者最大的不同是 Vim 有多个模式,同一样一个 Key 在不同模式下可以完成不同的功能,而 Emacs 没有像 Vim 的多个模式,因此想要更多的快捷键就只能通过组合键,Vim多个模式虽然有优点,但是缺点也明显,就是要在不同模式间切换,麻烦。
我现在主要用 Vim,很多快捷盘配置 Emacs 风格了:
map <c-x><c-c> <ESC>:qa<CR> imap <c-x><c-c> <ESC>:qa<CR> map <c-x><c-s> <ESC>:w<CR> imap <c-x><c-s> <c-o>:w<CR> smap <c-x><c-s> <c-o>:w<CR> map <c-x><c-k> :bw!<CR> imap <c-x><c-k> <ESC>:bw!<CR> map <c-x>k <Nul>c<Nul> imap <c-x>k <esc><ESC><Nul>c<Nul> " map <c-x><c-b> <Nul>a " imap <c-x><c-b> <ESC><ESC><Nul>a map <c-x><c-b> <ESC>:CommandTBuffer<CR> imap <c-x><c-b> <ESC>:CommandTBuffer<CR> map <c-x>b <ESC>:CommandTMRU<CR> imap <c-x>b <ESC>:CommandTMRU<CR> map <c-x><c-f> <ESC>:CommandT<CR> imap <c-x><c-f> <ESC>:CommandT<CR> cmap <c-p> <up> cmap <c-n> <down> map <C-h> <C-w><Left> imap <c-e> <c-o>A imap <c-a> <c-o>^ imap <c-f> <Right> imap <c-b> <Left> imap <c-n> <Down> imap <c-p> <Up> imap <c-d> <Del> imap <c-k> <c-o>C imap <esc>f <c-o>e cmap <esc>f <S-Right> imap <esc>b <c-o>b cmap <esc>b <S-Left> imap <esc>< <c-o>gg<c-o>0 imap <esc>> <c-o>G<c-o>$ imap <esc><bs> <esc><esc>caw cmap <esc><bs> <c-w>
|
 |
|
7
RyanKung Dec 10, 2014
什么时候开始写clojure/lisp/haskell了再转也不迟。
|
 |
|
8
ffffwh Dec 10, 2014 via Android
前后转了七7次大概,才转成功。
|
 |
|
10
caiych Dec 10, 2014
……也有一段时间想转……然后发现跟tmux配置快捷键冲突就算了……
|
 |
|
15
shellfly Dec 10, 2014
说几个平时Emacs比Vim好用的地方
分屏,Ctrl+2水平分,Ctrl+3垂直分,也容易自定义成自己喜欢的组合键
目录管理,dired-mode, 查看目录,创建目录
查看buffers, ibuffer,同时打开几十文件都是很正常的,我一般都是一屏显示不了文件列表的时候才去关,Vim查看buffer只能跳到对应数字的buffer,多了就不好用了
自动补全(打卡文件的时候),i-do mode,会在打卡文件的时候帮你补全,不需要想vim那样一下一下tab
很多高级的文件编辑功能 比如递归替换目录下所有匹配文件里的某个pattern(find-name-dired ), 可以把所有.py文件里的 import settings 替换成from django.conf import settings
|
 |
|
16
ngn999 Dec 10, 2014
@ caiych 你是配置tmux为emacs模式了? emacs + tmux 目前还没有什么冲突的
|
 |
|
17
icecoffee Dec 10, 2014
曾经试过转emacs,发现每天就在查各种快捷键和搞配置了。然后就决定vim将就用下去吧。。。
|
 |
|
18
lch21 Dec 10, 2014
emacs 可以在buffer中操作命令行,相当有用
|
 |
|
19
Hongmin Dec 10, 2014
emacs自带很完善的新手学习和进阶教程。。。
|
 |
|
20
jianghu52 Dec 10, 2014
我这种只会用st的人,就出来丢人现眼了
|
 |
|
21
phoneli Dec 10, 2014
先vim一个月,后emacs一年多,最后还是vim且很满意。
|
 |
|
22
yangxin0 Dec 10, 2014 1
我用emacs快四年了, 其中经历过各种配置折腾, 现在emacs几乎是裸配置, 只有一个自定义配色,和修改了相关快捷键。 入门的话最好的方式建议真正用emacs来写代码, 写代码的时候不要图快,把结构在脑袋里面想清楚了,在用emacs一个个字母的敲出来。我个人的建议不要去看什么自动补齐这些花哨的功能, 很多人真的是写了又删,删了又写, 或者时间不够直接push了。
|
 |
|
23
sectic Dec 10, 2014 via Smartisan T1
emacs 的 magit 是我用过最舒服的git客户端。
|
 |
|
25
yangxin0 Dec 10, 2014
(menu-bar-mode t) (tool-bar-mode -1) (scroll-bar-mode -1) (setq display-time-24hr-format t) (setq kill-ring-max 200) (setq inhibit-startup-message t) (setq major-mode 'text-mode) (show-paren-mode t) (setq frame-title-format "%f") (setq make-backup-files nil) (fset 'yes-or-no-p 'y-or-n-p) ;;(global-hl-line-mode 1) (setq-default indent-tabs-mode nil) ;;(global-font-lock-mode -1) ;;(set-background-color "light grey") (fringe-mode -1) (set-fringe-mode 0)
(defun nil-fun() (interactive))
;; key binding (define-key esc-map "g" 'goto-line) (global-set-key (kbd "C-z") 'undo) (global-set-key (kbd "C-x C-z") 'undo) (global-set-key (kbd "C-\\") 'nil-fun) ;;(global-set-key (kbd "<mouse-3>") 'nil-fun) ;;(global-set-key (kbd "<down-mouse-1>") 'nil-fun) (setq mac-option-modifier 'super) (setq mac-command-modifier 'meta) (global-set-key (kbd "C-j") 'newline-and-indent)
(set-face-attribute 'default nil :font "Consolas 16") (dolist (charset '(kana han symbol cjk-misc bopomofo)) (set-fontset-font (frame-parameter nil 'font) charset (font-spec :family "Microsoft Yahei" :size 13)))
|
 |
|
27
duhastmich Dec 10, 2014
转到emacs后就是magit用不惯,还在用fugitive
|
 |
|
28
vietor Dec 10, 2014 via Android
写lisp会上瘾浪费精力,建议别转
|
 |
|
31
expkzb Dec 10, 2014
xcode中装vim扩展,insert模式时可以用emacs快捷键,一起用的感觉蛮好的
|