又一次尝试Emacs失败。。。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
abszero
V2EX    Emacs

又一次尝试Emacs失败。。。

  •  
  •   abszero 2013-07-21 23:53:24 +08:00 7963 次点击
    这是一个创建于 4471 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本来用着Vim好好的,今天又心血来潮想去尝试下Emacs...止步于教程。

    引用网上一句话,”Vim难割舍,却又看Emacs情切切“。

    求拍醒。。。
    第 1 条附言    2013-07-22 18:49:55 +08:00
    mbp的键盘alt键很难按到,请问用emacs的各位是如何解决这个问题的?
    54 条回复    2015-04-04 10:53:54 +08:00
    sinxccc
        1
    sinxccc  
       2013-07-21 23:55:35 +08:00
    evil
    lightening
        2
    lightening  
       2013-07-21 23:56:28 +08:00
    Vim转Emacs后使用TM\subl等编辑器的飘过。
    Emacs的插件们太老了,很多github上的插件都几年没有更新了。Vim这边活跃度还是很高的,插件基本都能跟上技术的步伐。
    ayang23
        3
    ayang23  
       2013-07-21 23:57:14 +08:00
    哈哈,我也失败了不知5次了。
    abszero
        4
    abszero  
    OP
       2013-07-22 00:01:36 +08:00
    @sinxccc 一直想深入了解下Emacs的特别之处,再取舍。。还没了解到又放弃了。。。
    @lightening Vim有些插件更新确实很快,Emacs就不了解了。
    @ayang23 同样,三四次的样子。。。
    bearcat001
        5
    bearcat001  
       2013-07-22 00:04:45 +08:00
    都研究过,用了sublime以后就不想再折腾了,把快捷键都整成emacs的
    服务器上用vim,平时用sublime
    abszero
        6
    abszero  
    OP
       2013-07-22 00:07:44 +08:00
    @bearcat001 用过sublime text2,后来还是用回vim了。vim配置好后,也不至于说折腾。
    unionx
        7
    unionx  
       2013-07-22 03:54:39 +08:00
    把Linux当Emacs用,把C当Emacs Lisp用,一样的
    loading
        8
    loading  
       2013-07-22 06:14:30 +08:00 via iPhone
    你不怕被烧死就用吧
    ufo22940268
        9
    ufo22940268  
       2013-07-22 06:52:29 +08:00 via iPhone
    和lz一样啊,总觉得emacs高级很多,可是习惯了vim之后怎么都习惯不了emacs。强烈关注
    sinxccc
        10
    sinxccc  
       2013-07-22 08:21:26 +08:00
    我倒是尝试了几次换到 VIM 或者 Sublime Text,不过没法习惯很快就换回来了…
    jasanjun
        11
    jasanjun  
       2013-07-22 08:45:52 +08:00
    vim会一点,平时工作都在Emacs上面
    要强制自己去用,尽管开始的效率低下,操作别扭,也要在Emacs下完成
    vietor
        12
    vietor  
       2013-07-22 09:13:09 +08:00
    emacs 的关键是配置,我就是根据 https://github.com/purcell/emacs.d 整理的自己使用的子集 https://github.com/vietor/emacs.d 。经过合适的配置之后,记好常用的快捷键就会顺手起来了。现在我基本上,用到什么之后才增加相应的配置,而且将版本限定为至少24.3,省去一些兼容性麻烦。

    有些时候,只是修改配置文件,直接使用vi,只有涉及到编码之类的才启用emacs的,因为使用了session之后,就显得有些“重型了”。
    fangzhzh
        13
    fangzhzh  
       2013-07-22 09:29:39 +08:00
    emacs和vim其实都是肌肉记忆, 用多了,熟练了, 各种key binding就是自然而然的事情, 不需要怎么学的
    推荐个网站: emacser.com, 上边有很多 emacs的教程, 配置, 说明
    xlmo
        14
    xlmo  
       2013-07-22 10:13:05 +08:00
    破釜沉舟就能成功。
    lch21
        15
    lch21  
       2013-07-22 10:50:36 +08:00
    emacs 的buffer 在经常操作命令行的情况下特别好用
    laihj
        16
    laihj  
       2013-07-22 11:02:59 +08:00
    删除vim能成功
    wity_lv
        17
    wity_lv  
       2013-07-22 11:29:50 +08:00
    emacs 没折腾。
    notepad++, sublime text 2 , textmate , vim 折腾了一圈。
    现在还是回到IDE环境 + VIM插件:
    Java: IDEA free version + IdeaVim
    ObjC: XCode + XVim
    Editor: TextMate 2
    abszero
        18
    abszero  
    OP
       2013-07-22 11:33:53 +08:00
    @ufo22940268 倒不是觉得emacs高级很多,就是想了解下,再做选择。
    @jasanjun 当初学vim的时候也是这样的
    @fangzhzh vim倒是熟练了,就是想了解下emacs
    @lch21 求介绍,和vim的区别在于?
    @laihj 难以割舍啊。
    abszero
        19
    abszero  
    OP
       2013-07-22 11:35:34 +08:00
    @wity_lv 写Java的时候会用ide,写php的时候就用vim了。。
    lch21
        20
    lch21  
       2013-07-22 16:25:17 +08:00
    emacs 可以在命令行的输出结果中进行修改,然后再执行,非常方便
    pubby
        21
    pubby  
       2013-07-22 18:27:22 +08:00
    十几年一直用emacs, 改几个字符用vi
    luikore
        22
    luikore  
       2013-07-22 18:47:27 +08:00
    emacs 靠的是宗教力, elisp 没 python 好使, 换 sublime 吧
    abszero
        23
    abszero  
    OP
       2013-07-22 18:48:18 +08:00
    @luikore sublime用过,不够vim好使。
    weejulius
        24
    weejulius  
       2013-07-22 20:34:43 +08:00
    你可以试试的配置 https://github.com/weejulius/emacs.d ,我一直用它写clojure
    angelface
        25
    angelface  
       2013-07-22 20:37:35 +08:00   2
    绑定到command键就好了, 就很舒服了。

    emacs只要看tut就可以了, 很方便的
    abszero
        26
    abszero  
    OP
       2013-07-22 20:52:23 +08:00
    @weejulius 习惯自己一点点加上去,把握每一项配置。当初学vim的时候就是这样过来的。
    @angelface 你平时用什么手指按command键的,我都是用大拇指的。alt键绑到command键后,command键绑到alt键?
    angelface
        27
    angelface  
       2013-07-22 21:10:27 +08:00 via iPhone
    我也是用大拇指,建议你用purecell cmd绑定后就不用alt了啊,哈哈
    venmos
        28
    venmos  
       2013-07-22 21:28:44 +08:00
    你们是说这样很高级吗?
    http://venmos-com.qiniudn.com/emacs-screen.jpg
    abszero
        29
    abszero  
    OP
       2013-07-22 21:29:45 +08:00
    @angelface purecell是指配置文件?“cmd绑定后就不用alt了啊”这句话是什么意思呢?
        30
    abszero  
    OP
       2013-07-22 21:31:31 +08:00
    @venmos 略,可以集成shell这点很具诱惑力。
    venmos
        31
    venmos  
       2013-07-22 21:42:39 +08:00   1
    @abszero (setq mac-command-modifier 'meta)
    renyuan1985
        32
    renyuan1985  
       2013-07-22 21:48:32 +08:00
    @bearcat001 我和你一样,主要是习惯了一个很难改啦!
    angelface
        33
    angelface  
       2013-07-22 21:55:13 +08:00
    @abszero purcell是这个, 用package.el来管理软件的安全, 处理了一些基本的配置, 比如mac下, cmd绑定为meta, 本来就是ctrl+meta现在meta在cmd上了, 那alt就是没啥用处了,所以就没有用了啊。
    sunshinewang
        34
    sunshinewang  
       2013-07-22 21:58:26 +08:00
    刚毕业那会研究很久,收集了很多有用的插件,但是后来总觉普通编辑用太重了,渐渐的也就不用了
    abszero
        35
    abszero  
    OP
       2013-07-22 22:00:27 +08:00
    @angelface 我caps lock和ctrl互换了,你是不是也是这样?
    angelface
        36
    angelface  
       2013-07-22 22:01:53 +08:00
    @abszero emm~~我用hhkb pro2
    abszero
        37
    abszero  
    OP
       2013-07-22 22:08:37 +08:00
    @angelface 仰望。。
    Ricepig
        38
    Ricepig  
       2013-07-22 22:23:18 +08:00
    @venmos 居然有微博,碉堡了!
    venmos
        39
    venmos  
       2013-07-22 22:36:32 +08:00   1
    我写了一个KeyRemap4Macbook的配置,把Macbook的键盘改为HHKB布局,不过如果不是用HHKB的人用起来感觉会很奇怪.
    https://github.com/venmos/macbook2hhkb
    abszero
        40
    abszero  
    OP
       2013-07-22 23:19:00 +08:00
    @venmos 了解下,之前觉得KeyRemap4Macbook太麻烦。
    venmos
        41
    venmos  
       2013-07-22 23:20:47 +08:00   2
    话说难道你们都不使用Emacs Server(Emacs --daemon)?我用OSX开机即启动Emacs --daemon,之后都是使用emacsclient,这样就可以实现秒开...
    tshwangq
        42
    tshwangq  
       2013-07-22 23:22:26 +08:00   1
    用emacs,你得有些其它的兴趣配合。
    比如用emacs收email,上新闻组,irc, w3m什么的。
    还有那个org-mode.
    你才有激情一直用。
    sugarit
        43
    sugarit  
       2013-07-22 23:32:46 +08:00   1
    推荐一下 http://github.com/purcell/emacs.d
    我参照了他的配置写了自己的开发环境,很顺手,多用就行了
    sinxccc
        44
    sinxccc  
       2013-07-22 23:57:30 +08:00   1
    如果你是用 Emacs mac port 的话,meta 键默认就是 Command。
    abszero
        45
    abszero  
    OP
       2013-07-23 00:18:35 +08:00
    @sinxccc
    @sugarit
    @tshwangq
    @venmos

    command改成ctrl,caps lock改成alt,靠谱不?
    venmos
        46
    venmos  
       2013-07-23 01:21:36 +08:00
    @abszero 我只是把Caps改成Ctrl了,别的都没改.其实一开始不用考虑那么多,尤其还是习惯其他编辑器的,不管你把M键换成哪个都会感觉不适应,随便改一个慢慢就习惯了...
    sinxccc
        47
    sinxccc  
       2013-07-23 01:38:06 +08:00
    @abszero 我的建议也跟楼上一样,系统级别交换 Ctrl 和 Caps。这样不光是在 Emacs 下面,还有基本上所有的系统编辑框里快捷键都会比较顺手。

    然后在 Emacs 里用 Cmd 还是 Opt 做 meta 完全看你个人的习惯。
    用 Cmd 做 meta 的好处是好按,顺手,有一些特殊符号也可以直接用 Opt 来输入,就跟其他 Mac 的程序一样;
    用 Opt 做 meta 的好处一个是不占用 Cmd,这样你可以在比如 Cmd+c Cmd+v 之类的快捷键上保持跟别的程序一致,不至于手滑按错,另一个是如果你用系统终端登录其他系统用 Emacs 的时候,你只能用 Opt 做 meta,这样至少终端下跟 GUI 下 Emacs 的按键是一样的,如果你经常同时用两者的话可以减少按错的概率。

    不管是官方的 Emacs for OS X/Aquamacs 还是 Emacs mac port,交换 Opt 和 Cmd 都是很容易的事情。

    另外如果你用 HHKB 的话,保持跳线 011001 就挺好用的了。
    venmos
        48
    venmos  
       2013-07-23 01:41:19 +08:00
    @abszero 真心想学Emacs的话最大的困难是学习ELisp,可以看看GNU Emacs Lisp编程入门神马的.ELisp是Emacs的核心精华,如果只会用Emacs而不会ELisp的话那也只是"会操作"Emacs而已,没有多少乐趣.我以前也是用Vim的,转成Emacs后第一次写ELisp很头疼,不过慢慢的时间长了,多看看别人写的也就稍微会一点了,到现在用了已经有快三年了吧,算是有点"熟练"了.

    不过,当然,你也可以用其他任何语言来扩展Emacs,不止Lisp,比如我的Emacs配置统计:
    http://venmos-com.qiniudn.com/emacs.d-cloc.jpg

    然后是纯我自己写的Elisp统计:
    http://venmos-com.qiniudn.com/emacs-cloc.jpg
    abszero
        49
    abszero  
    OP
       2013-07-23 09:02:52 +08:00 via Android   1
    @venmos
    @sinxccc

    谢谢中肯的建议,至于ELisp,后期会学,前期也就先熟悉下,能正常写代码先。
    welsonla
        50
    welsonla  
       2013-08-13 16:55:34 +08:00
    今天尝试了下purcell的配置,感觉药量有点太大太强悍了
    grayson
        51
    grayson  
       2014-10-16 09:16:07 +08:00
    @abszero 我从Vim转过来的,安装Evil插件就搞定了。 可以参考这个: http://juanjoalvarez.net/es/detail/2014/sep/19/vim-emacsevil-chaotic-migration-guide/
    caoyuanqi
        52
    caoyuanqi  
       2014-12-03 12:10:42 +08:00
    关键是用,但是因为是转行过来做IT的,到澳洲来第一次上编程课程就是老师给了个emacs的配置来教C,之后就踏上了Emacs的不归路,还记得之前很蛋疼的用emacs编java的痛苦(现在这个后遗症就是java写出来还像C)...,多用就行
    megoo
        53
    megoo  
       2015-04-04 10:14:30 +08:00
    @lightening TM是什么?
    megoo
        54
    megoo  
       2015-04-04 10:53:54 +08:00
    @bearcat001 st快捷键如何整成emacs的?

    @sunshinewang 普通编辑用vim?

    @venmos 你写了5w行lisp,都实现了神恶名功能呢?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2689 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 14:20 PVG 22:20 LAX 07:20 JFK 10:20
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86