On 01/11/13 22:51, Miod Vallat wrote:
The only editing available tool in bsd.rd, the infamous ed, made me sweat
cold with fear not to correctly spell its syntax or do some logic mistake.
I would have been way more lighthearted if I had vi available.
Actually, vi used to be in the installation media, 15 years ago. Lack of
space caused it to be removed, although for unconstrained installation
media (i.e. bsd.rd or anything which does not need to fit on a floppy)
it might be worth bring it back.
Btw, how many are really using ed everyday, now in 2013?
I am using ed, maybe not every day, but several times a week. And I use
it a lot when in the OpenBSD installer, to do some post-install setup
everytime I have completed an installation (this is because I am too
lazy to setup a siteXX.tgz tarball).
I believe I'm not
the only one who thinks this. My guess is that vi could be more appreciated
by most of the user base more than ed.
But ed is the standard text editor. This is the only editor noone will
complain about. If we start putting vi back on the installation media,
it won't be long until people complain about the lack of an
emacs-compatible editor.
This is the raw situation:
/usr/bin/vi = 343320 bytes
/bin/ed = 238864 bytes
delta = 104456 bytes
100K of executable, when compressed, wouldn't be "that" much in terms of
difference,
Except your figures are wrong. What you need to check is the output of
size(1) on both binaries, and after relinking vi as a static binary,
since ed is statically linked while vi is not.
Now on a random system here (admittedly not an x86 one), I get:
text data bss dec hex
177074 7436 96252 280762 448ba /bin/ed
740510 7556 30772 778838 be256 /usr/bin/vi.static
which is closer to 500KB of delta. A third of floppy52.fs.
I guess this isn't entirely true either, as linked in stuff is "reused"
in the single instbin embracing all (or most) programs in bsd.rd.
However, the smaller the media, the fewer the programs, the bigger the
punishment.
Then comes the unpredictability of how things are compressed, etc. Thus
the only certain way to know the impact is to add it and see if it fits.
/Alexander