README(7) | Miscellaneous Information Manual | README(7) |
NAME
ed
— line-oriented
text editor
DESCRIPTION
THIS IS
CURRENTLY UNFINISHED! There are currently some minor noncompliant
parts (namely default addresses for commands), but there is currently no
regexes and no marks implemented. Basically all of the stuff that makes
ed
actually useful are totally missing. You can
still try it out I guess though.
ed(1) is the standard UNIX text
editor. While that is used a joke, ed
is
legitimately a useful editor in the modern day, particularly when:
- Making a quick edit in a file you're familiar with
- Working over slow connections (low-baud serial, SSH on a shaky hotspot, etc.)
- Programmatically editing files using the same commands you use to edit. Just make one edit manually, put those commands in a script, and run it on the rest of the files without having to convert the actions into a different scripting language like awk
This is a reimplementation that's more compliant with other
ed
implementations and the POSIX standard than
GNU's implementation
of ed, while still having some of GNU ed
's
convenience and extensions that are missing from those other
ed
implementations. It'll also be implemented more
simply than GNU ed
, and should have more clear and
concise code (hopefully).
INSTALLING
REQUIREMENTS
- POSIX or POSIX-compatible sh(1), for the configure script.
- Pure POSIX make(1). Most
make
's should support the POSIX standard. - C compiler supporting C11. C99 is also supported as long as stdnoreturn.h and anonymous structs and enums are supported as extensions.
- VT100-compatible terminal, as linenoise(3) currently only supports VT100 termal sequences (only very basic escape sequences required). If you don't know if your terminal supports VT100 escape sequences, then it does.
COMPILING
./configure make sudo make install
CONTRIBUTING
The upstream URL of this project is ⟨https://git.nytpu.com/ed⟩. Send suggestions, bugs, and other contributions to <alex@nytpu.com>. For help sending a patch through email, see ⟨https://git-send-email.io⟩.
SEE ALSO
STANDARDS
The documentation, build system, source code, and resulting
ed
binary all conform to IEEE Std
1003.1-2008 (“POSIX.1”) and ISO/IEC
9899:2011 (“ISO C11”) in all cases where the
said standards are applicable.
COPYRIGHT
ed
is Copyright (C) 2021
nytpu
<alex@nytpu.com>.
ed
is free software: you can redistribute
it and/or modify it under the terms of the GNU General Public License as
published by the Free Software Foundation, version 3.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You can find a copy of the GNU General Public license in LICENSE or at ⟨https://www.gnu.org/licenses/gpl-3.0-standalone.html⟩.
The build system (Makefile and
configure) for ed
is
licensed under the terms of the MIT license. For more information, see
configure and Makefile, or
see
⟨https://opensource.org/licenses/MIT⟩.
No other portions of ed
are licensed under the MIT
license.
ed
uses
linenoise(3), which is Copyright (c)
2010-2014, Salvatore Sanfilippo ⟨antirez at
gmail dot com⟩ & Copyright (c) 2010-2013, Pieter
Noordhuis ⟨pcnoordhuis at gmail dot com⟩ and is
licensed under the terms of the BSD 2-Clause License. For more information,
see LICENSE_LINENOISE or
⟨https://github.com/antirez/linenoise/⟩.
ed
uses code snippets from FreeBSD's
implementation of ed
. That code is Copyright (c)
1992-2021 The FreeBSD Project and is licensed under
the terms of the FreeBSD License. For more information, see
LICENSE_FREEBSD or
⟨https://cgit.freebsd.org/src/tree/COPYRIGHT⟩.
June 4, 2021 | nytpu.com |