GNU Emacs is an extensible and highly customizable text editor. It is based on an Emacs Lisp interpreter with extensions for text editing. Emacs has been extended in essentially all areas of computing, giving rise to a vast array of packages supporting, e.g., email, IRC and XMPP messaging, spreadsheets, remote server editing, and much more. Emacs includes extensive documentation on all aspects of the system, from basic editing to writing large Lisp programs. It has full Unicode support for nearly all human languages.
GNU Emacs is an extensible and highly customizable text editor. It is based on an Emacs Lisp interpreter with extensions for text editing. Emacs has been extended in essentially all areas of computing, giving rise to a vast array of packages supporting, e.g., email, IRC and XMPP messaging, spreadsheets, remote server editing, and much more. Emacs includes extensive documentation on all aspects of the system, from basic editing to writing large Lisp programs. It has full Unicode support for nearly all human languages.
Emacsy is an embeddable Emacs-like library that uses GNU Guile as extension language. Emacsy can give a C program an Emacsy feel with keymaps, minibuffer, recordable macros, history, tab completion, major and minor modes, etc., and can also be used as a pure Guile library. It comes with a simple counter example using FreeGLUT and browser examples in C using Gtk+-3 and WebKitGtk.
This package provides an Emacs library for manipulating strings.
This package provides an Emacs library for working with files and directories.
emacs-a
provides Emacs Lisp functions for dealing with associative structures in a uniform and functional way. These functions can take association lists, hash tables, and in some cases vectors (where the index is considered the key).
Emacs packages for working with Zettelkasten-style linked notes.
This package provides a dired-mode interface for fd's result.
The Fantastic File Finder for Emacs. Find files fast, using helm.
ov.el
provides a simple way to manipulate overlays in Emacs.
This package exposes a number of utility hooks and functions ported from Doom Emacs.
This package facilitates manipulating dates, times, and timestamps by providing a ts
struct.
Emacs StackExchange client. Ask and answer questions on Stack Overflow, Super User, and other StackExchange sites.
This package provides visible, buffer local bookmarks and the ability to jump forward and backward to the next bookmark.
This package simplifies the use of hash tables in elisp. It also provides functions to convert hash tables from and to alists and plists.
emacs-kv
is a collection of tools for dealing with key/value data structures such as plists, alists and hash-tables in Emacs Lisp.
This package provides functions, classes and methods to make it easier to create transient menus that send complex POST, PUT, or PATCH requests to JSON APIs.
rg
is an Emacs search package based on the ripgrep
command line tool. It allows one to interactively search based on the editing context then refine or modify the search results.
rg
is an Emacs search package based on the ripgrep
command line tool. It allows one to interactively search based on the editing context then refine or modify the search results.
This package provides the ability to use the silver searcher, a code searching tool, sometimes abbreviated to ag
. Features include version control system awareness, use of Perl compatible regular expressions, editing the search results directly and searching file names rather than the contents of files.
This module lets you access the PostgreSQL object-relational DBMS from Emacs, using its socket-level frontend/backend protocol. The module is capable of automatic type coercions from a range of SQL types to the equivalent Emacs Lisp type. This is a low level API, and won't be useful to end users.
This is an inverse companion to the rx
package for translating regexps in string form to the rx
notation. Its chief uses are:
Migrating existing code to
rx
form, for better readability and maintainabilityUnderstanding complex regexp strings and finding errors in them
In addition to Emacs regexps, this package can also parse and troubleshoot skip set strings, which are arguments to skip-chars-forward
and skip-chars-backward
.
This library provides common desirable “L”anguage “F”eatures: 0. A unifed interface for defining both variables and functions. LF-DEFINE. 1. A way to define typed, constrained, variables. LF-DEFINE. 2. A way to define type specifed functions. LF-DEFINE. 3. A macro to ease variable updates: (lf-define very-long-name (f it)) ≋ (setq very-long-name (f very-long-name)) 4. A more verbose, yet friendlier, alternative to SETF: LF-DEFINE. Minimal Working Example: (lf-define age 0 [(integerp it) (<= 0 it 100)]) (lf-define age 123) ;; ⇒ Error: Existing constraints for “age” violated! ;; “age” is not updated; it retains old value. (lf-define age 29) ;; OK, “age” is now 29. This file has been tangled from a literate, org-mode, file. There are numerous examples in tests.el.