# emacs-wgrep

> edit a grep buffer and apply those changes to the files

**Wikidata**: [Q116602707](https://www.wikidata.org/wiki/Q116602707)  
**Source**: https://4ort.xyz/entity/emacs-wgrep

## Summary
emacs-wgrep is a GNU Emacs package that allows users to edit the results of grep searches directly within Emacs and apply those edits back to the original files. It streamlines text editing across multiple files by integrating search results into editable buffers.

## Key Facts
- Creator: Masahiro Hayashi
- Inception: 2010
- License: GPL-3.0-or-later (as per Q27016754)
- Programming Language: Emacs Lisp
- Platform: GNU Emacs
- Current Stable Version: 2.3.4 (released 2023-02-01)
- Distributed via: NonGNU ELPA since 2021-08-07
- Maintained by: Masahiro Hayashi since 2010
- Debian Source Package: emacs-wgrep (active since 2020)
- Operating System: Cross-platform (GNU/Linux-based systems primarily)

## FAQs
### Q: What does emacs-wgrep do?
A: emacs-wgrep enables editing grep output buffers in Emacs and applying those edits back to the actual files. This makes it easy to perform bulk edits based on search results without manually opening each file.

### Q: Who created emacs-wgrep?
A: Masahiro Hayashi developed emacs-wgrep starting in 2010. He continues to maintain the project today.

### Q: How can I install emacs-wgrep?
A: The package is available through NonGNU ELPA for Emacs users. It's also packaged for distributions like Debian (elpa-wgrep) and Ubuntu (elpa-wgrep), as well as Gentoo (app-emacs/wgrep).

## Why It Matters
emacs-wgrep plays a vital role in enhancing productivity for developers and system administrators who use GNU Emacs. By allowing direct modification of grep results, it eliminates tedious manual editing workflows when working with large codebases or configuration files. Its integration into standard package repositories such as Debian and NonGNU ELPA ensures wide accessibility and ease of installation. As part of the broader ecosystem of Emacs tooling, wgrep exemplifies how extensibility remains one of Emacs' core strengths.

## Notable For
- First major implementation enabling writable grep buffers in Emacs
- Long-term maintenance by a single author since its inception in 2010
- Integration into official GNU Emacs packaging infrastructure (NonGNU ELPA)
- Support for various grep-like tools including ack, ag, and helm-grep
- Availability across major Linux distributions including Debian, Ubuntu, and Gentoo

## Body
### Overview
emacs-wgrep is an extension for GNU Emacs that transforms read-only grep result buffers into editable ones. Users can modify matches directly and save changes back to their respective source files.

### Development History
Masahiro Hayashi began developing emacs-wgrep in 2010. Since then, he has been the sole maintainer, ensuring consistent updates and compatibility with evolving Emacs versions.

### Technical Details
The tool is written entirely in Emacs Lisp, making it native to the Emacs environment. It supports interaction with several grep-style utilities including `grep`, `ack`, `ag`, and `helm-grep`.

#### Supported Platforms
Primarily designed for GNU Emacs on Unix-like systems, it functions wherever Emacs itself operates.

#### Licensing
Distributed under the GNU General Public License version 3 or later, qualifying it as free software.

### Distribution & Packaging
Since August 2021, emacs-wgrep has been officially hosted on NonGNU ELPA, the non-GNU packages archive for Emacs. Prior to this, it was widely available through third-party repositories and distribution-specific packaging systems.

#### Linux Distributions
Packaged for:
- **Debian**: Available as `elpa-wgrep` and variants (`elpa-wgrep-ack`, `elpa-wgrep-ag`, `elpa-wgrep-helm`) since at least 2020.
- **Ubuntu**: Packaged similarly to Debian under names like `elpa-wgrep`.
- **Gentoo**: Accessible as `app-emacs/wgrep`.
- **Guix**: Referenced as variable `emacs-wgrep`.

### Releases
Notable stable releases include:
- v2.3.4 – Released February 1, 2023
- v2.3.3 – Released August 7, 2021
- v2.3.2/v2.3.1 – Both released February 3, 2020
- v2.3.0 – Released December 29, 2018

Older versions date back to 2010 but remain accessible via GitHub and historical archives.

### Repositories
Source code is publicly available:
- Primary repository: https://github.com/mhayashi1120/Emacs-wgrep.git
- Mirrored on GNU Savannah: https://git.savannah.gnu.org/cgit/emacs/nongnu.git/tree/?h=elpa/wgrep

### Community & Documentation
Documentation and support are primarily community-driven, with resources found on GitHub and mailing lists associated with GNU Emacs development.

```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "emacs-wgrep",
  "description": "Edit a grep buffer and apply those changes to the files.",
  "url": "https://github.com/mhayashi1120/Emacs-wgrep",
  "sameAs": [
    "https://www.wikidata.org/wiki/Q117228665"
  ],
  "additionalType": "SoftwareApplication"
}

## References

1. [Source](https://elpa.nongnu.org/nongnu/wgrep.html)
2. GNU Guix
3. [Wgrep version 2.3.4. 2023](https://lists.gnu.org/archive/html/gnu-emacs-sources/2023-02/msg00003.html)
4. [Wgrep version 2.3.3. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-08/msg00037.html)
5. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.3.2)
6. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.3.1)
7. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.3.0)
8. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.10)
9. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.6)
10. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.4)
11. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.5)
12. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.3)
13. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.1.1)
14. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/2.0.1)
15. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/1.0.5)
16. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/1.0.4)
17. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/1.0.3)
18. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/1.0.2)
19. [Source](https://github.com/mhayashi1120/Emacs-wgrep/releases/tag/1.0.0)
20. [Wgrep version 3.0.0. 2023](https://lists.gnu.org/archive/html/gnu-emacs-sources/2023-02/msg00009.html)
21. [Source](https://tracker.debian.org/pkg/emacs-wgrep)
22. [Source](https://packages.debian.org/source/bullseye/emacs-wgrep)