Updating bundled packages
Generally it's a good idea to do a package update before running updating Prelude, since the latest Prelude code might depend on newer versions of the bundled packages than you would currently have installed.
If you're doing manual Prelude updates you should always do a package update first.
M-x package-list-packages RET U x
That's not necessary if you're using
M-x prelude-update, since it
will automatically update the installed packages.
Problems with flyspell-mode
Prelude makes heavy use of the flyspell-mode package for spell
checking of various things. The proper operation of flyspell depends
on the presence of the
aspell program and an
en dictionary on your
system. You can install
aspell and the dictionary on macOS with
homebrew like this:
$ brew install aspell --with-lang=en
On Linux distros - just use your distro's package manager.
Ugly colors in the terminal Emacs version
If your Emacs looks considerably uglier in a terminal (compared to the
GUI version) try adding this to your
.bashrc file and start Emacs again.
MELPA error on initial startup
If you get some http connection error related to the MELPA repo
just do a manual
M-x package-refresh-contents and restart Emacs
Warnings on arrow navigation in editor buffers
This is not a bug - it's a feature! I firmly believe that the one true way to use Emacs is by using it the way it was intended to be used (as far as navigation is concerned at least).
If you'd like to be take this a step further and disable the arrow key navigation completely put this in your personal config:
(setq guru-warn-only nil)
guru-mode completely add the following snippet to your
personal Emacs config:
(setq prelude-guru nil)
Customized C-a behavior
C-a to behave as described
you don't like that simply add this to your personal config:
(global-set-key [remap move-beginning-of-line] 'move-beginning-of-line)
If you're using term-mode or ansi-term-mode, the above will not restore the default behaviour of sending the C-a key sequence directly to the terminal. As a workaround, you can remove the C-a binding from prelude-mode specifically for these as described here by adding something like the following to your personal config:
(defun my-term-mode-hook () (let ((oldmap (cdr (assoc 'prelude-mode minor-mode-map-alist))) (newmap (make-sparse-keymap))) (set-keymap-parent newmap oldmap) (define-key newmap (kbd "C-a") nil) (make-local-variable 'minor-mode-overriding-map-alist) (push `(prelude-mode . ,newmap) minor-mode-overriding-map-alist))) (add-hook 'term-mode-hook 'my-term-mode-hook)
Poor ido matching performance on large datasets
ido module swaps the default
ido flex matching with the
more powerful ido-flx.
The sorting algorithm
flx uses is more complex, but yields better results.
On slower machines, it may be necessary to lower
ensure a smooth experience.
(setq flx-ido-threshold 1000)
You can always disable the improved sorting algorithm all together like this:
While everything in Prelude should work fine in Windows, I test it only with GNU/Linux & macOS, so there might be Windows-specific problems from time to time. This situation will probably improve over time.