# John Wiegley

> programmer

**Wikidata**: [Q104643415](https://www.wikidata.org/wiki/Q104643415)  
**Source**: https://4ort.xyz/entity/john-wiegley

## Summary
John Wiegley is a programmer and Emacs developer known for creating and maintaining Emacs extensions that integrate shells and accounting tools with Emacs. His notable work includes emacs-ledger-mode (an Emacs interface to the command-line accounting program Ledger), Eshell, and the bind-key package.

## Biography
- Born: [not available]
- Nationality: [not available]
- Education: [not available]
- Known for: Emacs integrations and tools, notably emacs-ledger-mode and Eshell
- Employer(s): Emacs planner (software maintainer)
- Field(s): Emacs Lisp development; open-source software; command-line accounting tooling

## Contributions
John Wiegley has authored and maintained several concrete Emacs projects that connect Emacs to other tools and simplify Emacs configuration. He developed Eshell, an Emacs Lisp–based shell integrated into Emacs (inception 1999). He created emacs-ledger-mode, the Emacs interface for the command-line accounting program Ledger (inception 2003), which provides an editor-native workflow for Ledger users. He also authored the bind-key package (bind-key.el), a facility for managing personal keybindings in Emacs; that package’s recorded inception date is 2012-06-16. In addition to those packages, Wiegley holds the position of software maintainer for the Emacs planner project, as listed in the planner-el project authors. His public developer identities include the GitHub username "jwiegley" and the Twitter handle @jwiegley, which anchor his contributions and activity in open-source development and Emacs community work.

## FAQs
### Q: Who is John Wiegley?
A: John Wiegley is a programmer and Emacs developer known for Emacs packages such as Eshell, emacs-ledger-mode, and bind-key. He is also listed as a software maintainer for the Emacs planner project.

### Q: What is emacs-ledger-mode and when was it created?
A: emacs-ledger-mode is an Emacs interface for the command-line accounting program Ledger. Its inception is recorded as 2003.

### Q: Where can I find John Wiegley’s code or social profiles?
A: His GitHub username is "jwiegley" and his Twitter handle is "jwiegley". Those accounts are the public identifiers listed for his developer activity.

## Why They Matter
John Wiegley’s work matters within the Emacs and open-source communities because it connects Emacs to complementary tools and addresses common developer and user workflows. Eshell (1999) embedded a shell written in Emacs Lisp directly inside Emacs, offering a unified editing-and-shell environment. emacs-ledger-mode (2003) provided a dedicated Emacs interface for Ledger, enabling users who manage their finances with Ledger to work within the editor rather than switching contexts. bind-key (inception 2012-06-16) simplifies personal keybinding management, addressing a recurring configuration need for Emacs users. As a named maintainer for the Emacs planner project, Wiegley has also contributed to sustained stewardship of Emacs packages. Collectively, these projects exemplify incremental, practical tooling: they are not just isolated utilities but integration points that let users keep complex tasks (shelling, accounting, keybinding configuration) within the Emacs environment. Without these contributions, some Emacs-centered workflows would lack the specific integrations and conveniences Wiegley implemented.

## Notable For
- Author of Eshell, an Emacs Lisp–based shell integrated into Emacs (inception 1999).
- Author of emacs-ledger-mode, an Emacs interface to Ledger (inception 2003).
- Author of the bind-key package for Emacs keybinding management (inception recorded 2012-06-16).
- Listed as software maintainer for the Emacs planner project.
- Public developer profiles: GitHub username "jwiegley" and Twitter handle "jwiegley".

## Body

### Major projects and dates
- Eshell
  - Role: Creator/author.
  - Nature: Shell implemented in Emacs Lisp and integrated into Emacs.
  - Inception: 1999.
- emacs-ledger-mode
  - Role: Creator/author.
  - Nature: Emacs mode providing an interface to the command-line accounting program Ledger.
  - Inception: 2003.
- bind-key (bind-key.el)
  - Role: Author.
  - Nature: Package to manage personal keybindings in Emacs.
  - Recorded inception date: 2012-06-16.

### Maintenance and roles
- Position held: Software maintainer.
  - Area: Emacs planner (listed in planner-el AUTHORS).
  - Source: planner-el project authorship listing.

### Public developer identities
- GitHub: username "jwiegley".
- Twitter: handle "jwiegley" (Twitter account associated with ID 19252539; start_time qualifier 2009-01-20; point in time 2022-12-19).

### Technical focus
- Languages and platform: Emacs Lisp and Emacs extension development (implied by authorship of Emacs packages).
- Domains: editor integration, command-line accounting interfaces, keybinding management.

### Personal / descriptive metadata
- Given name: John.
- Sex/gender: male.
- Religion/worldview: Baháʼí Faith.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "John Wiegley",
  "jobTitle": "Programmer",
  "worksFor": {
    "@type": "Organization",
    "name": "Emacs planner"
  },
  "knowsAbout": [
    "Emacs",
    "Ledger",
    "Eshell",
    "Software development"
  ],
  "sameAs": [
    "https://twitter.com/jwiegley",
    "https://github.com/jwiegley"
  ],
  "description": "Programmer and Emacs developer known for Eshell, emacs-ledger-mode, and bind-key."
}

## References

1. [Source](https://repo.or.cz/planner-el.git/blob/HEAD:/AUTHORS)