emacs 和 spacemacs 如何并存

emacs 和 spacemacs 如何并存呢,怎么改配置。

spacemacs只是emacs的(大型)配置,没有兼容问题。你不如说说你具体的问题是什么。

想用emacs也想用spacemacs,都学习着用。 两种解决办法

  1. 类似与vim 和 spacevim 并存,使用别名的方式
# -------------------- 定义SpaceVim的别名 ---------------
alias svim='vim -u ~/.SpaceVim/vimrc'
  1. spacemacs去掉vim模式,使用emacs原来的快捷键和操作模式

问题解决。

# -------------------- 定义Emacs 启动时不加载配置文件  ---------------
alias oemacs='emacs -q'

参考资料: https://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html You can use the command line switch ‘-q’ to prevent loading your init file

多配置文件并存,可以试一下这个

3 个赞
  • -l file 装载 文件 file 里面 的 lisp 代码
alias e="emacs -q -l ~/tmp/something.elc"

补充个新的思路,以非terminal为例,Mac下(Linux类似):

建一个文件夹作为 伪home,然后放emacs的一套配置;然后用下面方式启动

env HOME='/Users/oracleyue/NewHome' open -a /Applications/Emacs.app -n

看你Vanilla Emacs用的多还是spacemacs多,把多的那个放你Home下咯。

这种好处是:

  • 随你整多少套配置都可以,什么spacemacs, doom, scimax, 我都要;
  • 可以多种同时开启,emacs -q -l这种mac下不能同时启用两种配置的Emacs.app;
  • 多套配置硬隔离,不用担心折腾时搞坏其他配置。

小孩子才做选择题,我都要 01

至于快捷启动,如果你用Alfred,建个workflow,用关键字运行不同的Emacs,非常方便。如果没有Alfred,你把上面命令打包成新的app就好了。Terminal下嘛,类似的用env设HOME启动emacs,alias个别名。

5 个赞

使用-Q貌似更好些。

这emacs开起来本质上还是要交互使用的,什么都不加载想干嘛

我在 NFS 挂载 $HOME 的服务器上用 Emacs 就算只加载个空的 init.el 也会慢上两秒,不知道为甚么 Vim 就算用了 .vimrc 也没有速度影响。然而现在已经忘了 Vim 怎么用了。然而就算不用配置自带的 spell check 至少写个邮件比较方便。

楼主是想用最原始的进行学习,spacemacs跟原生态emacs的操作有些区别。我也有类似的需求

1 个赞

如果只是想无配置快捷地打开Emacs的话,可以用:

emacs -Q -D

道兄所言极是,正是如此。

你们俩都没懂我意思,或者说,你没有看懂手册。对于Emacs来说-q选项启动的Emacs就是默认什么都没有安装的Emacs。而-Q启动的Emacs。则是在-q的基础上,禁用开始的欢迎画面,禁用Xresource文件,禁用site-run-file加载。算是更纯净的测试环境。一般使用没有必要这么搞。

多配置切换也可以用 @twlz0ne 的 here-emacs.sh

https://gist.github.com/twlz0ne/5f5617e15c1a57e1d5c94ae94bb1d266

用pseudo Home就可以了,比如:

env HOME='/Users/oracleyue/HomeTest' open -a /Applications/Emacs.app -n

爱搞几个就搞几个Emacs,还可以同时运行,撒花~ image

这种是物理上的独立,完全不互相影响,可能唯一的一点副作用是,某一个的HOME是你真正home的子文件夹,所以选文件是得多倒退一两个文件夹(不过有ivy或helm也多不了什么操作),选择最常用的那个用~/.emacs.d就成了。

在没用deamon mode之前,我就是用这中方式,同时运行黑白两种主题的Emacs的

1 个赞

楼主是想用spacemacs但想用emacs原生keybinding?

spacemacs文档中有的 https://www.spacemacs.org/doc/DOCUMENTATION#editing-styles

    ___           ___           ___           ___           ___           ___           ___
    /  /\         /__/\         /  /\         /__/\         /  /\         /  /\         /  /\
   /  /:/         \  \:\       /  /:/_       |  |::\       /  /::\       /  /:/        /  /:/_
  /  /:/           \__\:\     /  /:/ /\      |  |:|:\     /  /:/\:\     /  /:/        /  /:/ /\
 /  /:/  ___   ___ /  /::\   /  /:/ /:/_   __|__|:|\:\   /  /:/~/::\   /  /:/  ___   /  /:/ /::\
/__/:/  /  /\ /__/\  /:/\:\ /__/:/ /:/ /\ /__/::::| \:\ /__/:/ /:/\:\ /__/:/  /  /\ /__/:/ /:/\:\
\  \:\ /  /:/ \  \:\/:/__\/ \  \:\/:/ /:/ \  \:\~~\__\/ \  \:\/:/__\/ \  \:\ /  /:/ \  \:\/:/~/:/
 \  \:\  /:/   \  \::/       \  \::/ /:/   \  \:\        \  \::/       \  \:\  /:/   \  \0.1 /:/
  \  \:\/:/     \  \:\        \  \:\/:/     \  \:\        \  \:\        \  \:\/:/     \__\/ /:/
   \  \::/       \  \:\        \  \::/       \  \:\        \  \:\        \  \::/        /__/:/
    \__\/         \__\/         \__\/         \__\/         \__\/         \__\/         \__\/



                                 ... ........,**********,...
                          .%*....       .,/(((#//(//*,*,,,*.,#%&(,,/(##.
                            %/..                          ,,  ,*,*/(%%.
                             %/*.                         .. .,,.,#%&
                              &(,.                       .. ....((%&.
                               ,#,.                     ..  ...*/#%
                                .#,..                   .  ..,/(%#
                                 .#,.                  ..  .,,(#%
                                   #*,.               .. .,,.(%(
                                  ***//((((((((//****,,**//,/  .
                                  ///((#%%%%%%%##(///////*./,,,,
                                   /#(##%%%%%%%%%##(((//*.(**,*
                                    .(/###%%%%%%##(((/// (/,,,
                                     */(##%%%%##(((/((/(/*.
                                     *((###%%%%%%%%%%%&&(*..
                                     .((###%%%%%%%%##((####/,//
                                     **//((###(###%%%#%%#&/%(%#(.
                                    **//(((((((/((##%#%#/%##%*/.
                                   ***///(/(((/////((((%**../..   //
                                  **//(((###(((((//////%/***(,..   /&
                                  ,####%%%%%%%%###((//(%,*/((/**    #*
                                  ./,,                *%..,..*&%    ,#
                                 ,(,.                 *%   .../%&    @
                                *#,.                  *%,  ....,%&   &.
                               (/,                   .&&&%/   ..,%&  %,
                              %/,                        ((.   .,,%&%%/,
                             #*.                                .*(%%%@,
                            #,.                                 ..,,%&.,
                           ,/....                              .... ,%%
                           %,,.....                  ......   ,* ....#&.
                           #,,,,..      .....................  ....,/#%*
                           #*,,*.......  ...................,,,****/(%%,
                           ,(*/**,.......................,,,,,**//###%#
                            /#/(((/**,...  .............,,,,/(##%%%##@
                             /.*/((/,,,,,.,/(###########(/(((((#%%#&&
                               ,(#(/,,.......,,,,,,,,/(///(#%%%%#
                                ./(*,..                  ..,*((#&/
                                    ...,..,..,/###(//(#(/*,.. .
1 个赞

这个-a可以不要,把***.app当作file参数也可以

这个你有配置spacemacs的吗?按照说明一直没有折腾好。