[ Packages ] [ Installing ] [ Known Issues ] [ Updating Packages ] [ Development ]
MELPA or Milkypostman’s ELPA or Milkypostman’s Experimental Lisp Package Repository if you’re not into the whole brevity thing.
a repository for development versions of Emacs packages (hot from the repo).
Last Update: 2012.02.22 05:52
| Package | Version | Description |
|---|---|---|
| ac-dabbrev | 20091116 | auto-complete el source for dabbrev |
| browse-kill-ring | 20110304 | interactively insert items from kill-ring - - coding utf-8 - - |
| clojure-mode | 20120212 | Major mode for Clojure code |
| clojure-test-mode | 20120212 | Minor mode for Clojure tests |
| clojurescript-mode | 20120212 | Major mode for ClojureScript code |
| csv-mode | 20091203 | major mode for editing comma-separated value files |
| darcsum | 20120115 | a pcl-cvs like interface for managing darcs patches |
| deft | 20111211 | quickly browse filter and edit plain text notes |
| dired+ | 20120218 | Extensions to Dired |
| elisp-slime-nav | 20111111 | Make M- and M- work in elisp like they do in slime |
| evil | 20120221 | Extensible Vi layer for Emacs |
| expand-region | 20120220 | Increase selected region by semantic units |
| find-file-in-project | 20110904 | Find files in a project quickly |
| findr | 20120130 | Breadth-first file-finding facility for X Emacs |
| flymake-cursor | 20110905 | displays flymake error msg in minibuffer after delay |
| full-ack | 20111216 | a front-end for ack |
| gist | 20101104 | No description available |
| git-blame | 20120129 | Minor mode for incremental blame for Git - - coding utf-8 - - |
| haskell-mode | 20100702 | A Haskell editing mode - -coding iso-8859-1 - - |
| hl-sentence | 20111203 | highlight a sentence based on customizable face |
| idle-highlight-mode | 20110817 | highlight the word the point is on |
| ido-ubiquitous | 20111016 | Use ido nearly everywhere |
| inf-ruby | 20111212 | Run a ruby process in a buffer |
| inflections | 20120130 | convert english words between singular and plural |
| js3 | 20120120 | JavaScript scanner |
| jump | 20120130 | build functions which contextually jump between files |
| magit | 20120213 | Control Git from Emacs |
| magithub | 20120209 | Magit extensions for using GitHub |
| markdown-mode | 20120220 | Emacs Major mode for Markdown-formatted text files |
| markdown-mode+ | 20120219 | extra functions for markdown-mode |
| melpa | 20120213 | special handling for the MELPA repository |
| mmm-mode | 20120114 | Allow Multiple Major Modes in a buffer |
| org-fstree | 20090904 | include a filesystem subtree into an org file |
| paredit | 20110508 | minor mode for editing parentheses - - Mode Emacs-Lisp - - |
| pretty-mode | 20100804 | redisplay parts of the buffer as pretty symbols |
| rainbow-delimiters | 20111125 | Highlight nested parens brackets braces a different color at each depth |
| rinari | 20120210 | Rinari Is Not A Rails IDE |
| ruby-compilation | 20120210 | run a ruby process in a compilation buffer |
| ruby-mode | 20120122 | Major mode for editing Ruby files |
| rvm | 20120201 | Emacs integration for rvm |
| slime | 20120214 | Superior Lisp Interaction Mode for Emacs |
| smex | 20120127 | M-x interface with Ido-style fuzzy matching |
| starter-kit | 20120202 | Saner defaults and goodies |
| starter-kit-bindings | 20120202 | Saner defaults and goodies bindings |
| starter-kit-eshell | 20120202 | Saner defaults and goodies eshell tweaks |
| starter-kit-js | 20120202 | Saner defaults and goodies for Javascript |
| starter-kit-lisp | 20120202 | Saner defaults and goodies for lisp languages |
| starter-kit-perl | 20120202 | Some helpful Perl code |
| starter-kit-ruby | 20120202 | Saner defaults and goodies for Ruby |
| textile-mode | 20100416 | Textile markup editing major mode |
| todochiku | 20120202 | A mode for interfacing with Growl Snarl and the like |
| undo-tree | 20120105 | Treat undo history as a tree |
| yasnippet | 20120216 | Yet another snippet extension for Emacs |
To add the repository put this before the call to package-initialize in your init.el file.
(add-to-list 'package-archives
'("melpa" . "http://melpa.milkbox.net/packages/") t)
Please read about known issues below before attempting to install multiple packages at once.
There is currently no way in package.el to exclude or include versions. So to remedy this I ahve created a package that will allow you to enable only certain packages or exclude certain packages. You can install the package by pasting this into yoru *scratch* buffer and evaluating it.
(progn
(switch-to-buffer
(url-retrieve-synchronously
"https://raw.github.com/milkypostman/melpa/master/melpa.el"))
(package-install-from-buffer (package-buffer-info) 'single))
You can then customize two variables:
melpa-package-enableList of MELPA packages to enable. Empty list enables all packages.
melpa-package-excludeList of MELPA package to exclude. This list trumps those specified in melpa-package-enable.
Due to the way the HTTP routing works on my provider, the HTTP/1.1 connection will time out for long package installs – where the package is large and takes a while to compile – like magit or evil.
(setq url-http-attempt-keepalives nil)
This makes things a tad more slow but means that the install completes correctly. Otherwise the connection times out and the install goes haywire.
package.elNote: These fixes are included in the melpa.el package.
There are a number of small bugs in Emacs24’s package.el. First, when installing dependencies, the packages were not getting initialized. Second, the order for dependencies was coming out backwards for what I needed. Both problems are easily patched by some advice.
(defadvice package-compute-transaction
(before
package-compute-transaction-reverse (package-list requirements)
activate compile)
"reverse the requirements"
(setq requirements (reverse requirements))
(print requirements))
(defadvice package-download-tar
(after package-download-tar-initialize activate compile)
"initialize the package after compilation"
(package-initialize))
(defadvice package-download-single
(after package-download-single-initialize activate compile)
"initialize the package after compilation"
(package-initialize))
package.el now includes a mechanism to upgrade packages. After running package-list-pacages, type u (mark Upgradable packages) and then x (eXecute the installs and deletions). When it’s done installing all the packages it will ask if you want to delete the obsolete packages and so you can hit y (Yes).
If you run into a problem installing or upgrading, you may need to go into your ~/.emacs.d/elpa/ directory and delete packages that are installed multiple times. This can happen when the install times out (see Known Issues).
https://github.com/milkypostman/melpa
Contributions are welcome. Currently, the builder only supports packages using git, subversion, mercurial, and darcs. This covers most of the packages that I am interested in.