git clone 'git://'


MELPA MELPA Stable Build Status Gratipay Paypal logo

Smartparens is minor mode for Emacs that deals with parens pairs and tries to be smart about it. It started as a unification effort to combine functionality of several existing packages in a single, compatible and extensible way to deal with parentheses, delimiters, tags and the like. Some of these packages include autopair, textmate, wrap-region, electric-pair-mode, paredit and others. With the basic features found in other packages it also brings many improvements as well as completely new features. Here's a highlight of some features, for a complete list and detailed documentation look in the manual.

For the complete documentation visit the documentation wiki.

Default configuration

Smartparens provides many options to customize most aspects of its working. After loading smartparens.el, you can customize many of these options using the customization interface: M-x customize-group RET smartparens RET. Smartparens also ships with additional recommended (default) configuration, which is separated in file smartparens-config.el to make the maintainance easier. If you wish to load the default configuration, add:

(require 'smartparens-config)

in your configuration files (e.g. init.el) to load it. There are also files with additional configuration for specific modes, such as smartparens-latex.el or smartparens-ruby.el. You can load them the same way as the default config file. Note however that the smartparens-config.el file will auto-load all the mode-speceific customizations. It is a good idea to require this file if you are a new user, and later add or remove the options you don't like.

Note: smartparens-config automatically loads the core smartparens files, so you don't have to require those separately.

Support the project

If you want to support this project, you can do it in the following ways: