Skip to content

Latest commit

 

History

History
70 lines (52 loc) · 3.99 KB

re-builder.org

File metadata and controls

70 lines (52 loc) · 3.99 KB

❮ Back to Casual

Casual RE-Builder

An opinionated Transient-based user interface for RE-Builder, a tool for building Emacs regular expressions (regexps).

images/casual-re-builder-screenshot.png

Install

If installed via MELPA then add these lines to your Emacs initialization file with your binding of preference.

(require 'casual-re-builder) ; optional
(keymap-set reb-mode-map "C-o" #'casual-re-builder-tmenu)
(keymap-set reb-lisp-mode-map "C-o" #'casual-re-builder-tmenu)

Usage

Basic Usage

When the command re-builder is invoked, a buffer named “✳︎RE-Builder✳︎” is created. Activate Casual RE-Builder with the binding C-o (or one of your preference).

At the top of the menu shows the title “RE-Builder” with the target buffer enclosed in parenthesis. The regexp pattern will be applied to the target buffer. The target buffer can be changed with the (b) Target buffer menu item.

Emacs supports three different regexp syntax: 1) read, 2) string, 3) Rx. Use the (x) Syntax menu item to alter it. The current syntax is shown in parenthesis.

If multiple sub-expressions are in the regexp pattern, then they can be observed via the (s) Subexp mode menu item.

If the regexp pattern entered in the “✳︎RE-Builder✳︎” finds multiple matches, a match can be navigated to via the (p) Previous and (n) Next menu items.

Exporting the Regexp Pattern

Once a desired regexp pattern is defined, there are two menu items that can be used to export (copy) it to the kill-ring for further use.

  • (w) Interactive will copy the regexp to the kill-ring so that it can be yanked in an interactive command that requires a regexp (e.g. query-replace-regexp).
    • This can only be used when the regexp syntax is set to string.
    • ❗️When yanking (typically C-y) a regexp into an interactive prompt, you must have the point/focus in the minibuffer prompt (typically via mouse). Otherwise the desired content can be altered with extra escaping.
  • (c) Code will copy the regexp to the kill-ring so that it can be yanked into a Elisp code that requires a regexp argument.
  • (g) Interactive grep will copy the regexp so that it can be used with command that take a GNU grep regex argument.
    • Example commands that do this are dired-do-find-regexp and dired-do-find-regexp-and-replace.
    • This command presumes that you have GNU grep installed and configured for use by Emacs.
    • ❗️At current this is an experimental feature. The regexp exported from RE-Builder may not work. If so please report an issue describing the desired regexp and the target text.
    • This can only be used when the regexp syntax is set to string.

Regexp Syntax Help

The menu item (i) will invoke the Info page for regexp syntax with respect to the current syntax type.

Quitting RE-Builder

Select (q) Quit to exit the RE-Builder tool.

Unicode Symbol Support

By enabling “Use Unicode Symbols” from the Settings menu, Casual RE-Builder will use Unicode symbols as appropriate in its menus. The following mapping is shown in the table below:

NamePlainUnicode
:previousPrevious
:nextNext

Sponsorship

If you enjoy using Casual RE-Builder, consider making a modest financial contribution to help support its development and maintenance.

images/default-yellow.png

See Also