head 1.10; access; symbols netbsd-11-0-RC4:1.10 netbsd-11-0-RC3:1.10 netbsd-11-0-RC2:1.10 netbsd-11-0-RC1:1.10 perseant-exfatfs-base-20250801:1.10 netbsd-11:1.10.0.14 netbsd-11-base:1.10 netbsd-10-1-RELEASE:1.10 perseant-exfatfs-base-20240630:1.10 perseant-exfatfs:1.10.0.12 perseant-exfatfs-base:1.10 netbsd-8-3-RELEASE:1.9 netbsd-9-4-RELEASE:1.10 netbsd-10-0-RELEASE:1.10 netbsd-10-0-RC6:1.10 netbsd-10-0-RC5:1.10 netbsd-10-0-RC4:1.10 netbsd-10-0-RC3:1.10 netbsd-10-0-RC2:1.10 netbsd-10-0-RC1:1.10 netbsd-10:1.10.0.10 netbsd-10-base:1.10 netbsd-9-3-RELEASE:1.10 cjep_sun2x-base1:1.10 cjep_sun2x:1.10.0.8 cjep_sun2x-base:1.10 cjep_staticlib_x-base1:1.10 netbsd-9-2-RELEASE:1.10 cjep_staticlib_x:1.10.0.6 cjep_staticlib_x-base:1.10 netbsd-9-1-RELEASE:1.10 phil-wifi-20200421:1.10 phil-wifi-20200411:1.10 is-mlppp:1.10.0.4 is-mlppp-base:1.10 phil-wifi-20200406:1.10 netbsd-8-2-RELEASE:1.9 netbsd-9-0-RELEASE:1.10 netbsd-9-0-RC2:1.10 netbsd-9-0-RC1:1.10 phil-wifi-20191119:1.10 netbsd-9:1.10.0.2 netbsd-9-base:1.10 phil-wifi-20190609:1.10 netbsd-8-1-RELEASE:1.9 netbsd-8-1-RC1:1.9 pgoyette-compat-merge-20190127:1.9.114.1 pgoyette-compat-20190127:1.10 pgoyette-compat-20190118:1.10 pgoyette-compat-1226:1.9 pgoyette-compat-1126:1.9 pgoyette-compat-1020:1.9 pgoyette-compat-0930:1.9 pgoyette-compat-0906:1.9 netbsd-7-2-RELEASE:1.9 pgoyette-compat-0728:1.9 netbsd-8-0-RELEASE:1.9 phil-wifi:1.9.0.116 phil-wifi-base:1.9 pgoyette-compat-0625:1.9 netbsd-8-0-RC2:1.9 pgoyette-compat-0521:1.9 pgoyette-compat-0502:1.9 pgoyette-compat-0422:1.9 netbsd-8-0-RC1:1.9 pgoyette-compat-0415:1.9 pgoyette-compat-0407:1.9 pgoyette-compat-0330:1.9 pgoyette-compat-0322:1.9 pgoyette-compat-0315:1.9 netbsd-7-1-2-RELEASE:1.9 pgoyette-compat:1.9.0.114 pgoyette-compat-base:1.9 netbsd-7-1-1-RELEASE:1.9 matt-nb8-mediatek:1.9.0.20 matt-nb8-mediatek-base:1.9 perseant-stdc-iso10646:1.9.0.112 perseant-stdc-iso10646-base:1.9 netbsd-8:1.9.0.110 netbsd-8-base:1.9 prg-localcount2-base3:1.9 prg-localcount2-base2:1.9 prg-localcount2-base1:1.9 prg-localcount2:1.9.0.108 prg-localcount2-base:1.9 pgoyette-localcount-20170426:1.9 bouyer-socketcan-base1:1.9 pgoyette-localcount-20170320:1.9 netbsd-7-1:1.9.0.106 netbsd-7-1-RELEASE:1.9 netbsd-7-1-RC2:1.9 netbsd-7-nhusb-base-20170116:1.9 bouyer-socketcan:1.9.0.104 bouyer-socketcan-base:1.9 pgoyette-localcount-20170107:1.9 netbsd-7-1-RC1:1.9 pgoyette-localcount-20161104:1.9 netbsd-7-0-2-RELEASE:1.9 localcount-20160914:1.9 netbsd-7-nhusb:1.9.0.102 netbsd-7-nhusb-base:1.9 pgoyette-localcount-20160806:1.9 pgoyette-localcount-20160726:1.9 pgoyette-localcount:1.9.0.100 pgoyette-localcount-base:1.9 netbsd-7-0-1-RELEASE:1.9 netbsd-7-0:1.9.0.98 netbsd-7-0-RELEASE:1.9 netbsd-7-0-RC3:1.9 netbsd-7-0-RC2:1.9 netbsd-7-0-RC1:1.9 netbsd-5-2-3-RELEASE:1.9 netbsd-5-1-5-RELEASE:1.9 netbsd-6-0-6-RELEASE:1.9 netbsd-6-1-5-RELEASE:1.9 netbsd-7:1.9.0.96 netbsd-7-base:1.9 yamt-pagecache-base9:1.9 yamt-pagecache-tag8:1.9 netbsd-6-1-4-RELEASE:1.9 netbsd-6-0-5-RELEASE:1.9 tls-earlyentropy:1.9.0.94 tls-earlyentropy-base:1.9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.9 riastradh-drm2-base3:1.9 netbsd-6-1-3-RELEASE:1.9 netbsd-6-0-4-RELEASE:1.9 netbsd-5-2-2-RELEASE:1.9 netbsd-5-1-4-RELEASE:1.9 netbsd-6-1-2-RELEASE:1.9 netbsd-6-0-3-RELEASE:1.9 netbsd-5-2-1-RELEASE:1.9 netbsd-5-1-3-RELEASE:1.9 netbsd-6-1-1-RELEASE:1.9 riastradh-drm2-base2:1.9 riastradh-drm2-base1:1.9 riastradh-drm2:1.9.0.86 riastradh-drm2-base:1.9 netbsd-6-1:1.9.0.92 netbsd-6-0-2-RELEASE:1.9 netbsd-6-1-RELEASE:1.9 khorben-n900:1.9.0.90 netbsd-6-1-RC4:1.9 netbsd-6-1-RC3:1.9 agc-symver:1.9.0.88 agc-symver-base:1.9 netbsd-6-1-RC2:1.9 netbsd-6-1-RC1:1.9 yamt-pagecache-base8:1.9 netbsd-5-2:1.9.0.84 netbsd-6-0-1-RELEASE:1.9 yamt-pagecache-base7:1.9 netbsd-5-2-RELEASE:1.9 netbsd-5-2-RC1:1.9 matt-nb6-plus-nbase:1.9 yamt-pagecache-base6:1.9 netbsd-6-0:1.9.0.82 netbsd-6-0-RELEASE:1.9 netbsd-6-0-RC2:1.9 tls-maxphys:1.9.0.80 tls-maxphys-base:1.9 matt-nb6-plus:1.9.0.78 matt-nb6-plus-base:1.9 netbsd-6-0-RC1:1.9 yamt-pagecache-base5:1.9 yamt-pagecache-base4:1.9 netbsd-6:1.9.0.76 netbsd-6-base:1.9 netbsd-5-1-2-RELEASE:1.9 netbsd-5-1-1-RELEASE:1.9 yamt-pagecache-base3:1.9 yamt-pagecache-base2:1.9 yamt-pagecache:1.9.0.74 yamt-pagecache-base:1.9 cherry-xenmp:1.9.0.72 cherry-xenmp-base:1.9 bouyer-quota2-nbase:1.9 bouyer-quota2:1.9.0.70 bouyer-quota2-base:1.9 matt-mips64-premerge-20101231:1.9 matt-nb5-mips64-premerge-20101231:1.9 matt-nb5-pq3:1.9.0.68 matt-nb5-pq3-base:1.9 netbsd-5-1:1.9.0.66 netbsd-5-1-RELEASE:1.9 netbsd-5-1-RC4:1.9 matt-nb5-mips64-k15:1.9 netbsd-5-1-RC3:1.9 netbsd-5-1-RC2:1.9 netbsd-5-1-RC1:1.9 netbsd-5-0-2-RELEASE:1.9 matt-nb5-mips64-premerge-20091211:1.9 matt-premerge-20091211:1.9 matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.9 matt-nb4-mips64-k7-u2a-k9b:1.9 matt-nb5-mips64-u1-k1-k5:1.9 matt-nb5-mips64:1.9.0.64 netbsd-5-0-1-RELEASE:1.9 jym-xensuspend-nbase:1.9 netbsd-5-0:1.9.0.62 netbsd-5-0-RELEASE:1.9 netbsd-5-0-RC4:1.9 netbsd-5-0-RC3:1.9 netbsd-5-0-RC2:1.9 jym-xensuspend:1.9.0.60 jym-xensuspend-base:1.9 netbsd-5-0-RC1:1.9 netbsd-5:1.9.0.58 netbsd-5-base:1.9 matt-mips64-base2:1.9 matt-mips64:1.9.0.56 mjf-devfs2:1.9.0.54 mjf-devfs2-base:1.9 netbsd-4-0-1-RELEASE:1.9 wrstuden-revivesa-base-3:1.9 wrstuden-revivesa-base-2:1.9 wrstuden-fixsa-newbase:1.9 wrstuden-revivesa-base-1:1.9 yamt-pf42-base4:1.9 yamt-pf42-base3:1.9 hpcarm-cleanup-nbase:1.9 yamt-pf42-baseX:1.9 yamt-pf42-base2:1.9 wrstuden-revivesa:1.9.0.52 wrstuden-revivesa-base:1.9 yamt-pf42:1.9.0.50 yamt-pf42-base:1.9 keiichi-mipv6:1.9.0.48 keiichi-mipv6-base:1.9 matt-armv6-nbase:1.9 matt-armv6-prevmlocking:1.9 wrstuden-fixsa-base-1:1.9 netbsd-4-0:1.9.0.46 netbsd-4-0-RELEASE:1.9 cube-autoconf:1.9.0.44 cube-autoconf-base:1.9 netbsd-4-0-RC5:1.9 netbsd-4-0-RC4:1.9 netbsd-4-0-RC3:1.9 netbsd-4-0-RC2:1.9 netbsd-4-0-RC1:1.9 matt-armv6:1.9.0.42 matt-armv6-base:1.9 matt-mips64-base:1.9 hpcarm-cleanup:1.9.0.40 hpcarm-cleanup-base:1.9 netbsd-3-1-1-RELEASE:1.9 netbsd-3-0-3-RELEASE:1.9 wrstuden-fixsa:1.9.0.38 wrstuden-fixsa-base:1.9 abandoned-netbsd-4-base:1.9 abandoned-netbsd-4:1.9.0.32 netbsd-3-1:1.9.0.34 netbsd-3-1-RELEASE:1.9 netbsd-3-0-2-RELEASE:1.9 netbsd-3-1-RC4:1.9 netbsd-3-1-RC3:1.9 netbsd-3-1-RC2:1.9 netbsd-3-1-RC1:1.9 netbsd-4:1.9.0.36 netbsd-4-base:1.9 netbsd-3-0-1-RELEASE:1.9 netbsd-3-0:1.9.0.30 netbsd-3-0-RELEASE:1.9 netbsd-3-0-RC6:1.9 netbsd-3-0-RC5:1.9 netbsd-3-0-RC4:1.9 netbsd-3-0-RC3:1.9 netbsd-3-0-RC2:1.9 netbsd-3-0-RC1:1.9 netbsd-2-0-3-RELEASE:1.9 netbsd-2-1:1.9.0.28 netbsd-2-1-RELEASE:1.9 netbsd-2-1-RC6:1.9 netbsd-2-1-RC5:1.9 netbsd-2-1-RC4:1.9 netbsd-2-1-RC3:1.9 netbsd-2-1-RC2:1.9 netbsd-2-1-RC1:1.9 netbsd-2-0-2-RELEASE:1.9 netbsd-3:1.9.0.26 netbsd-3-base:1.9 netbsd-2-0-1-RELEASE:1.9 netbsd-2:1.9.0.24 netbsd-2-base:1.9 netbsd-2-0-RELEASE:1.9 netbsd-2-0-RC5:1.9 netbsd-2-0-RC4:1.9 netbsd-2-0-RC3:1.9 netbsd-2-0-RC2:1.9 netbsd-2-0-RC1:1.9 netbsd-2-0:1.9.0.22 netbsd-2-0-base:1.9 netbsd-1-6-PATCH002-RELEASE:1.9 netbsd-1-6-PATCH002:1.9 netbsd-1-6-PATCH002-RC4:1.9 netbsd-1-6-PATCH002-RC3:1.9 netbsd-1-6-PATCH002-RC2:1.9 netbsd-1-6-PATCH002-RC1:1.9 netbsd-1-6-PATCH001:1.9 netbsd-1-6-PATCH001-RELEASE:1.9 netbsd-1-6-PATCH001-RC3:1.9 netbsd-1-6-PATCH001-RC2:1.9 netbsd-1-6-PATCH001-RC1:1.9 fvdl_fs64_base:1.9 netbsd-1-6-RELEASE:1.9 netbsd-1-6-RC3:1.9 netbsd-1-6-RC2:1.9 netbsd-1-6-RC1:1.9 netbsd-1-6:1.9.0.18 netbsd-1-6-base:1.9 netbsd-1-5-PATCH003:1.9 netbsd-1-5-PATCH002:1.9 netbsd-1-5-PATCH001:1.9 netbsd-1-5-RELEASE:1.9 netbsd-1-5-BETA2:1.9 netbsd-1-5-BETA:1.9 netbsd-1-4-PATCH003:1.9 netbsd-1-5-ALPHA2:1.9 netbsd-1-5:1.9.0.16 netbsd-1-5-base:1.9 minoura-xpg4dl:1.9.0.14 minoura-xpg4dl-base:1.9 netbsd-1-4-PATCH002:1.9 wrstuden-devbsize-19991221:1.9 wrstuden-devbsize:1.9.0.12 wrstuden-devbsize-base:1.9 comdex-fall-1999:1.9.0.10 comdex-fall-1999-base:1.9 netbsd-1-4-PATCH001:1.9 netbsd-1-4-RELEASE:1.9 netbsd-1-4:1.9.0.8 netbsd-1-4-base:1.9 netbsd-1-3-PATCH003:1.9 netbsd-1-3-PATCH003-CANDIDATE2:1.9 netbsd-1-3-PATCH003-CANDIDATE1:1.9 netbsd-1-3-PATCH003-CANDIDATE0:1.9 netbsd-1-3-PATCH002:1.9 netbsd-1-3-PATCH001:1.9 netbsd-1-3-RELEASE:1.9 netbsd-1-3-BETA:1.9 netbsd-1-3:1.9.0.4 netbsd-1-3-base:1.9 netbsd-1-2-PATCH001:1.9 netbsd-1-2-RELEASE:1.9 netbsd-1-2-BETA:1.9 netbsd-1-2-base:1.9 netbsd-1-2:1.9.0.6 netbsd-1-1-PATCH001:1.9 netbsd-1-1-RELEASE:1.9 netbsd-1-1:1.9.0.2 netbsd-1-1-base:1.9 netbsd-1-0-PATCH06:1.8 netbsd-1-0-PATCH05:1.8 netbsd-1-0-PATCH04:1.8 netbsd-1-0-PATCH03:1.8 netbsd-1-0-PATCH02:1.8 netbsd-1-0-PATCH1:1.8 netbsd-1-0-PATCH0:1.8 netbsd-1-0-RELEASE:1.8 netbsd-1-0:1.8.0.2 netbsd-1-0-base:1.8 netbsd-0-9-RELEASE:1.5 netbsd-0-9-BETA:1.5 netbsd-0-9-ALPHA2:1.5 netbsd-0-9-ALPHA:1.5 netbsd-0-9:1.5.0.2 netbsd-0-9-base:1.5 netbsd-0-8:1.1 netbsd-alpha-1:1.1 alm-ed-0-2:1.1; locks; strict; comment @# @; 1.10 date 2019.01.04.19.13.58; author maya; state Exp; branches; next 1.9; commitid pIPTEweP9o6R0v6B; 1.9 date 95.03.21.09.04.33; author cgd; state Exp; branches 1.9.114.1 1.9.116.1; next 1.8; 1.8 date 94.02.20.06.56.20; author alm; state Exp; branches; next 1.7; 1.7 date 93.11.23.04.41.47; author alm; state Exp; branches; next 1.6; 1.6 date 93.11.12.10.48.47; author alm; state Exp; branches; next 1.5; 1.5 date 93.06.16.07.36.53; author alm; state Exp; branches; next 1.4; 1.4 date 93.05.08.10.49.54; author alm; state Exp; branches; next 1.3; 1.3 date 93.04.28.03.37.36; author alm; state Exp; branches; next 1.2; 1.2 date 93.04.23.02.08.50; author alm; state Exp; branches; next 1.1; 1.1 date 93.04.08.01.07.17; author cgd; state Exp; branches; next ; 1.9.114.1 date 2019.01.18.08.48.24; author pgoyette; state Exp; branches; next ; commitid Lmlzg3OVT2cd6f8B; 1.9.116.1 date 2019.06.10.21.41.02; author christos; state Exp; branches; next 1.9.116.2; commitid jtc8rnCzWiEEHGqB; 1.9.116.2 date 2020.04.21.18.41.03; author martin; state dead; branches; next 1.9.116.3; commitid 86tA4aEmdr3VCh5C; 1.9.116.3 date 2020.04.21.19.37.31; author martin; state Exp; branches; next ; commitid x6IB64bYH9UmWh5C; desc @@ 1.10 log @Unifdef compatibility for broken realloc. No binary change @ text @$NetBSD: README,v 1.9 1995/03/21 09:04:33 cgd Exp $ ed is an 8-bit-clean, POSIX-compliant line editor. It should work with any regular expression package that conforms to the POSIX interface standard, such as GNU regex(3). If reliable signals are supported (e.g., POSIX sigaction(2)), it should compile with little trouble. Otherwise, the macros SPL1() and SPL0() should be redefined to disable interrupts. The following compiler directives are recognized: DES - to add encryption support (requires crypt(3)) BACKWARDS - for backwards compatibility NEED_INSQUE - if insque(3) is missing The file `POSIX' describes extensions to and deviations from the POSIX standard. The ./test directory contains regression tests for ed. The README file in that directory explains how to run these. For a description of the ed algorithm, see Kernighan and Plauger's book "Software Tools in Pascal," Addison-Wesley, 1981. @ 1.9 log @convert to new RCS id conventions. @ text @d1 1 a1 1 $NetBSD$ a12 1 NO_REALLOC_NULL - if realloc(3) does not accept a NULL pointer @ 1.9.116.1 log @Sync with HEAD @ text @d1 1 a1 1 $NetBSD: README,v 1.10 2019/01/04 19:13:58 maya Exp $ d13 1 @ 1.9.116.2 log @Sync with HEAD @ text @d1 1 a1 1 $NetBSD: README,v 1.9.116.1 2019/06/10 21:41:02 christos Exp $ @ 1.9.116.3 log @Ooops, restore accidently removed files from merge mishap @ text @d1 1 a1 1 $NetBSD: README,v 1.10 2019/01/04 19:13:58 maya Exp $ @ 1.9.114.1 log @Synch with HEAD @ text @d1 1 a1 1 $NetBSD: README,v 1.9 1995/03/21 09:04:33 cgd Exp $ d13 1 @ 1.8 log @`s3' applies the last substitution to the 3rd (or nth) match. Split up the code to several files. @ text @d1 2 @ 1.7 log @Added a line-addressing test so this isn't overlooked again. Added BACKWARDS directive to Makefile for compatibility. Completely changed the name space as per FSF's request. Fixed a line-addressing bug introduced by previous `fix', i.e., space preceding a digit acts a plus (+) operator, as in `1 1' == `2', and a plus operator by itself acts as +1, but a space by itself should not equal a plus operator, i.e., `1 ' != `1+' == `2'. @ text @d10 4 a13 4 DES - use to add encryption support (requires crypt(3)) NO_REALLOC_NULL - use if realloc(3) does not accept a NULL pointer BACKWARDS - use for backwards compatibility EX_BANG - use to support ex-style ! (bang) command. @ 1.6 log @fix line addressing so that 1,2, == 2,2 (as per SunOS ed) not 1,2 add global-active routines to replace some bad hacks remove obsolescent Addison-Wesley copyrights @ text @d6 1 a6 1 compile with little trouble. Otherwise, the macros spl1() and spl0() d13 1 @ 1.5 log @fixed regex initialization added more support for BACKWARDS option @ text @a9 1 GNU_REGEX - use with GNU regex(3) @ 1.4 log @added support for lines of arbitrary length added support for 8-bit data, including NULs @ text @d5 4 @ 1.3 log @rearranged headers to compile cleanly minor corrections in man page @ text @d1 3 a3 3 ed is a POSIX-compliant line editor. It should work with any regular expression package that conforms to the POSIX interface standard, such as GNU regex(3). d9 1 a9 1 HAVE_SIGSETJMP - use if sigsetjmp/siglongjmp are supported @ 1.2 log @added man page (draft) fixed `!' command final code cleanup @ text @d9 1 @ 1.1 log @added ed, from Andrew Moore, alm@@netcom.com @ text @d10 2 a11 2 The file `ed-1003.2' in the ./doc directory describes POSIX ed. Extensions to the POSIX standard are described in the file `extensions.' d16 1 a16 1 For a description of the ed algorithm, see Kernighan and Pike's book @