From: jhallen@world.std.com (Joseph H Allen) Subject: JOE 1.0.5 New features and fixes Date: Sat, 21 Nov 1992 14:30:22 GMT
A new version of Joe's Own Editor is complete. Get is by anonymous ftp to
world.std.com, file: src/editors/joe1.0.5.tar.Z. Also look for it on
'alt.sources' This has a number of fixes and new features:
- Rectangle/Column mode. I think I've made a very good implementation of
this stuff. It's really neat, I could have used this earlier. When this
mode is selected, the normal block commands (including filter block through
unix command) and insert file work on rectangles. Also if overtype mode is
set, these commands overtype instead. Also when rectangle mode is set,
indent and unindent will work with the insertion/deletion point as the
left side of the rectangle instead of the beginning of the lines.
- Can set tab width
- Can set indent/unindent step column-width and fill character
- ^K ; now does a tags file search
- if there's only one help screen defined, then ^KH immediatly turns on help
instead of giving a menu
- same deal with TAB completion- if only one item matches, it does a simple
completion
- unnamed files get the name first given to save file ^K D
- joe is now in a subdirectory in the tar archive. Also as you can see,
I'm including the version number along with the name
- the problems with the optimizer on Xenix and with back-tab on SCO UNIX are
fixed. You still have to use 'ttysv' with SCO UNIX- I need to get access to
a SCO UNIX machine to make a tty interface for it. I think the posix tty
interface is probably pretty close.
- string searches were crashing when they got to the end of the file. this
is fixed now.
Hex dump edit mode, fixed record length edit more and a new 'man' page are
on the way.
The only major features which I feel are still missing are shell windows and
background loading/demand loading. These are going to be mess as far as
portability so they'll probably take a while.
--
/* jhallen@world.std.com */ /* Amazing */ /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}