Skip to content

📯 Minor mode for Emacs that deals with parens pairs and doesn't try to be smart about it.

License

Notifications You must be signed in to change notification settings

radian-software/dumbparens

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Dumbparens

Dumbparens is a parenthesis-matching solution for Emacs that actually Just Worksâ„¢ (finally). It replaces and improves on previous packages such as Electric Pair mode, Paredit, and Smartparens. The package is called Dumbparens as a response to Smartparens, which I feel tries to be much too smart for its own good, resulting in a host of bugs, performance issues, and behavior that can only be described as just plain zany (see below). Dumbparens has the design philosophy of: try to do as little as possible, and always do something reasonable.

Documentation will come when the basic features have been implemented. Usage is as follows. First install with straight.el:

(straight-use-package
  '(dumbparens :host github :repo "raxod502/dumbparens"))

Then type M-x dumbparens-mode or M-x dumbparens-global-mode.

To run the tests, evaluate the contents of dumbparens-tests.el and then type M-x dumbparens-run-all-tests. Since Dumbparens has a goal of always doing something reasonable, any unreasonable behavior will result in a slap on the wrist and a new regression test.

What does "zany" mean?

Suppose we enable smartparens-mode and delete-selection-mode, and we have this buffer of text:

Suppose we enable `smartparens-mode` and `delete-selection-mode`, and
we have this buffer of text

Now suppose we select the entire buffer and type the backslash key \. What should happen is the region is deleted and replaced with a backslash:

\

However with smartparens-mode enabled, the following is what we get instead:

\Suppose we enable `smartparens-mode` and `delete-selection-mode`, and
we have this buffer of text\"\" \(\) \{\} \\(\\)

Okay, to be fair, after you perform a subsequent command in the buffer, everything but the backslash gets deleted, but ... what???

About

📯 Minor mode for Emacs that deals with parens pairs and doesn't try to be smart about it.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published