Closed mattfidler closed 9 years ago
@mlf176f2 did you use the install script to set up your cabbage installation? This should place a init.el
file into your ~/.emacs.d
directory, which has the necessary configuration (see https://github.com/senny/cabbage/blob/master/scripts/install.sh#L104)
I don't see how that would help. The modified cabbage.el sets the cabbage repository directory just like the ~/.emacs.d/init.el script, and obviously it loads the cabbage.el
Besides, I like to try out configurations with EmacsPortable.App
I'm not familiar with EmacsPortable.App
could you briefly explain the difference in the loading process and why the current config files, which are copied with the install script don't work?
@mlf176f2 It seems that you didn't clone the git submodules which cabbage requires. This is usually done by the install script.
You could try to use the install script and then move the files from $APPDATA/.emacs.d
(where the init.el etc. is generated to), to where it belongs within the Emacs portable, which is currently loading cabbage.
Alternatively you could try to clone / update the git modules manually. I think this could be done with something like:
cd c:/EmacsPortable.App/Data/start/cabbage
git submodule init
git submodule sync
git submodule update
Sure @senny
EmacsPortable.App puts emacs start-up scripts in separate directory to allow testing of multiple emacs environments without having to change your home drive. It is more mature in windows, with a right-click menu you can select whatever you want to run:
It can also be used to run emacs on Mac OSX and linux. I use it from my usb stick on windows, Mac OSX and Puppy Linux (which is booted from my usb stick).
@jone I believe you were right about the sub-modules... Its kind of time consuming to pull all the sub-modules, and my connection keeps being reset.
I still need this patch to allow EmacsPortable.App to use cabbage.
This package needs installation, thats why there is a script to keep the submodules in sync and update them accordingly. It's not the goal to "git clone" the repo and load cabbage.el
right away.
The installation is separate from the initialization so it needs to happen before you boot Emacs.
This is how EmacsPortable.App currently loads start-up scripts:
(when (and (getenv "EPSTART")
(not (string= "" (getenv "EPSTART")))
(getenv "EPSTARTDIR")
(file-exists-p (getenv "EPSTARTDIR")))
(let ((start-dir (getenv "EPSTARTDIR")))
(when start-dir
(setq start-dir (expand-file-name (getenv "EPSTARTDIR")))
;; Make sure that the ELPA directories are per each startup
;; group.
(if (file-exists-p (expand-file-name
"elpa"
(expand-file-name
".emacs.d" (getenv "EPSTARTDIR"))))
(setq package-user-dir (expand-file-name
"elpa"
(expand-file-name
".emacs.d"
(getenv "EPSTARTDIR"))))
(unless (file-exists-p (expand-file-name "elpa" (getenv "EPSTARTDIR")))
(make-directory (expand-file-name "elpa" (getenv "EPSTARTDIR")) t))
(setq package-user-dir (expand-file-name "elpa" (getenv "EPSTARTDIR"))))
(message "Using startup at %s" start-dir)
(cond
((file-exists-p (expand-file-name ".emacs" start-dir))
(load (expand-file-name ".emacs" start-dir))
(message "Loaded %s/.emacs" start-dir))
((file-exists-p (expand-file-name "init.el" start-dir))
(load (concat (replace-regexp-in-string "/$" "" start-dir t t) "/init"))
(message "Loaded %s/init" (replace-regexp-in-string "/$" "" start-dir t t)))
((file-exists-p (expand-file-name ".emacs.d/init.el" start-dir))
(load (expand-file-name ".emacs.d/init.el" start-dir))
(message "Loaded %s/.emacs.d/init.el" start-dir))
((file-exists-p (expand-file-name "site-start.el" (expand-file-name "site-lisp" start-dir)))
(load (concat (expand-file-name "site-lisp" start-dir) "/site-start"))
(message "Loaded %s/site-start/site-lisp" start-dir))
(t
(let ((dir (file-expand-wildcards (format "%s/*.el" start-dir) t)))
(when (= 1 (length dir))
(setq dir (replace-regexp-in-string ".el$" "" (nth 0 dir)))
(load dir)
(message "Loaded %s" dir))))))))
Without making my own init.el
in the start-up directory, I would have to remove my .emacs.d
and only use only cabbage. I'm not ready to make that sort of commitment, yet. I'm not even sure I like the defaults proposed. I'm less sure that my changes to cabbage will be considered useful.
I understand that you want to make sure that the proper steps are performed, so if you decide not to add this patch that is fine.
@jone thanks for your help. The start-up works just fine now (with my patch)
@jone @senny @mlf176f2 could we close this one?
yup, closing. Thanks guys.
I was trying to make this work with EmacsPortable.App so I can try it out. This should make loading only cabbage.el work just fine. However, when I loaded it I got the error: