aboutsummaryrefslogblamecommitdiffstats
path: root/README.7
blob: 0c50956713dd8b14718bbfb5faca83d4c3d6181f (plain) (tree)
1
2
3
4
5
6
7
8
9
                                            
                                                                           



                                                                                         
                
            
             





                             









                                                           



































                                                                              



                         
          
            
    
        
                                        

                          
                                
                 
   
                               







                                                                           
















                                                  



            







                                                           







                       









                                                                           
           
     





                                                             
   





                                               



              
                                            
                    
   
                                   







                            
                          

                                
                                                            
                         
                     

                                              
   
   








                                                       
.\" To view this file, use `man -l README.7`
.\" To view in other formats, look into mandoc(1) (recommended) or troff(1)
.
.\" Copyright (c) 2021 nytpu <alex@nytpu.com>
.\" SPDX-License-Identifier: GPL-3.0-only
.\" For more license details, see LICENSE or <https://www.gnu.org/licenses/gpl-3.0.html>.
.Dd June 4, 2021
.Dt README 7
.Os nytpu.com
.
.Sh NAME
.Nm ed
.Nd line-oriented text editor
.
.Sh DESCRIPTION
.Em THIS IS CURRENTLY UNFINISHED!
There are currently some minor noncompliant parts
.Pq namely default addresses for commands ,
but there is currently no regexes and no marks implemented.
Basically all of the stuff that makes
.Nm
actually useful are totally missing.
You can still try it out I guess though.
.
.Pp
.Xr ed 1
is the standard UNIX text editor.
While that is used a joke,
.Nm
is legitimately a useful editor in the modern day, particularly when:
.
.Bl -enum
.It
Making a quick edit in a file you're familiar with
.It
Working over slow connections (low-baud serial, SSH on a shaky hotspot, etc.)
.It
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
.El
.
.Pp
This is a reimplementation that's more compliant with other
.Nm
implementations and the POSIX standard than
.Lk https://www.gnu.org/software/ed/ GNU's implementation of ed ,
while still having some of GNU
.Nm
.Ap s convenience and extensions that are missing from those other
.Nm
implementations.
It'll also be implemented more simply than GNU
.Nm ,
and should have more clear and concise code (hopefully).
.
.Sh INSTALLING
.Ss REQUIREMENTS
.Bl -bullet
.It
POSIX or POSIX-compatible
.Xr sh 1 ,
for the configure script.
.It
Pure POSIX
.Xr make 1 .
Most
.Nm make
.Ap s should support the POSIX standard.
.It
C compiler supporting C11.
C99 is also supported as long as
.Em stdnoreturn.h
and
.Em anonymous structs and enums
are supported as extensions.
.It
VT100-compatible terminal, as
.Xr linenoise 3
currently only supports VT100 termal sequences
.Pq only very basic escape sequences required .
If you don't know if your terminal supports VT100 escape sequences, then it
does.
.El
.
.Ss COMPILING
.Bd -literal -offset indent
\&./configure
make
sudo make install
.Ed
.
.Sh CONTRIBUTING
The upstream URL of this project is
.Aq Lk https://git.nytpu.com/ed .
Send suggestions, bugs, and other contributions to
.Aq Mt alex@nytpu.com .
For help sending a patch through email, see
.Aq Lk https://git-send-email.io .
.
.Sh SEE ALSO
.Xr ed 1 ,
.Xr ed 1p
.
.Sh STANDARDS
The documentation, build system, source code, and resulting
.Nm
binary all conform to
.St -p1003.1-2008 
and
.St -isoC-2011 
in all cases where the said standards are applicable.
.Sh COPYRIGHT
.Nm
is Copyright (C) 2021
.An nytpu
.Aq Mt alex@nytpu.com .
.
.Pp
.Nm
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
.Pa LICENSE
or at
.Aq Lk https://www.gnu.org/licenses/gpl-3.0-standalone.html .
.
.Pp
The build system
.Po
.Pa Makefile
and
.Pa configure
.Pc
for
.Nm
is licensed under the terms of the MIT license.
For more information, see
.Pa configure
and
.Pa Makefile ,
or see
.Aq Lk https://opensource.org/licenses/MIT .
No other portions of
.Nm
are licensed under the MIT license.
.Pp
.Nm
uses
.Xr linenoise 3 ,
which is 
Copyright (c) 2010-2014,
.An Salvatore Sanfilippo
.Aq antirez at gmail dot com
& Copyright (c) 2010-2013,
.An Pieter Noordhuis
.Aq pcnoordhuis at gmail dot com
and is licensed under the terms of the BSD 2-Clause License.
For more information, see
.Pa LICENSE_LINENOISE
or
.Aq Lk https://github.com/antirez/linenoise/ .
.Pp
.Nm
uses code snippets from FreeBSD's implementation of
.Nm .
That code is Copyright (c) 1992-2021
.An The FreeBSD Project
and is licensed under the terms of the FreeBSD License.
For more information, see
.Pa LICENSE_FREEBSD
or
.Aq Lk https://cgit.freebsd.org/src/tree/COPYRIGHT .