I know a lots been said about WP's "reveal codes", but I just realized it was the last time using a word processor where I felt like I was actually in charge and not just cajoling the thing to make things look how I wanted.
I've gotten very proficient with Word over the years, but there are still times where GUI reveals itself to be a leaky abstraction. Things where table formatting can vary wildly depending on seemingly inconsequential change in the order of making changes.
What makes it worse is that there's always some hidden setting or configuration somewhere to blame, so you never really can blame Word.
That pretty weird. You’d assume that CERN have LaTeX templates, meaning that you could just sit down and start typing.
At university we created a template first semester, tweaked it a bit the second. After that it wasn’t something that you needed to think off. You could just start typing, run make to build a pdf if needed, and everything could just be pushed to subversion (it was 20 years ago).
So few people truly know how to use Word. Most just mess around with fonts and spacing until thinks look about right. I sure that even few is actually able to use Google Doc as anything beyond a web based Wordpad.
Absolutely, you can. Microsoft has long stopped improving the basic word processing features. When there is no competition Microsoft stops improving their products.
When there is no competition Microsoft stops improving their products.
Coincidentally, at this very moment I am re-creating an old paper form for another department in the company. They need it as a PDF.
The people from the department sent me their best effort as a Word document. It's a disaster of mismatched styles, misaligned boxes, things that get cut off for no discernible reason, and stuff that won't print right because it's past Word's margins.
I'm almost done re-creating it in Pages, from which I'll output a PDF. It's gone swimmingly.
Pages isn't yet a replacement for every single little thing that Word does, but for the things it does do, it works well, quickly, predictably, and fast. But that may be Word's downfall: It took the kitchen sink route and became a mess.
Pages is a good basic word processor for those who are interested in processing words. It's less "powerful" at doing all the thousand other things that people use Word for that they should probably do in Acrobat.
The most important word in your comment: predictable.
Even when Pages completely changed when they redid the engine for web, iOS and Mac, Pages stayed predictable. If you turn invisibles on, you basically know everything of what’s happening at all times.
I spend most of my professional life designing and dealing with spreadsheets and Numbers’ table-based paradigm is simply orders of magnitude more elegant that Excel’s everything-is-a-sheet approach. Why? I can modify tables (inserting row and columns, changing attributes, & cetera) without affecting other tables.
The one thing I miss and that infuriates me is Numbers’ lack of iterative solutions to circular references. Circular references are bad, you say, and I agree, but unfortunately in corporate finance they’re unavoidable when creating business plans because short-term debt depends on interest to be paid and interest to be paid depends on short-term debt. That means that Numbers can only take me so far until I have to export to .xlsx and then slog it out with Excel from then on. It’s a real pity they keep adding useless (to me) features such as collaborative editing and so forth when adding this functionality would take the whole application from being a toy to being a professional instrument.
In excel select the location of your table, select format as table and now you have a table that you can setup auto sum on, setup computed columns and automatically have everything extended when you add a new line.
You can also use it as basis for a pivot table so excel can make you a much better overview of your data.
Problem: once you have multiple such tables on a sheet, adding and removing rows or columns to such tables becomes hit and miss.
Numbers will happily shift down tables to make room, but Excel won’t.
Array formulas are another sort-of alternative for Numbers’ tables, but there, too, the implementation could be better. You can’t insert a row ‘inside’ a range of rows covered by an array formula, for example.
Pages is really frustrating to me: until around 2012, pages was an extremely good tool for desktop-publishing and general writing. Sometime around then, Apple did a whole UI update and cut it down to a much more basic word processor that has slowly been improved.
A processor that is at the level of Word 2.0 is hardly the competition, unless being a better typewritter is everything one expects from a word processor.
LibreOffice has its fair share of problems (Impress performance on Windows is especially bad), but honestly they're great projects regardless. The UI is simple and customizable (want ribbons? sure! dropdown menus? yep!), most of the options are where you'd expect them to be and it just works.
The open and free nature helps the project greatly, even though the corpse of OpenOffice still lingering around is a bit cumbersome, since all of the efforts/attention aren't necessarily redirected to LibreOffice.
Do you think it's due to some kind of network call? I think the licensing in general is extremely painful. I've definitely paid like $450 over the last 8 years for various microsoft stuff and I just don't like that. I wish you could easily get device-portable single use licenses that don't just evaporate after the licensing period ends. Word/Excel is decent but has become an immeasurably huge piece of shit over the last two or three years compared to previous eras
> Do you think it's due to some kind of network call?
Good call! (No pun intended.)
I often wondered why my fancy Xfinity DVR is so sluggish when I press a button on the remote. It finally connected when my Internet kept going down after some improvement they made and when the Internet could not be reached, the system stops responding to the remote. Can't even pause or exit. It's clear that every button press must make a round trip to Comcast' servers before it is acted on. It's Craptastic!
If you're up for a read about how WordPerfect got started and rose to fame, Almost Perfect isn't a bad read. They battle Microsoft, OS/2 is mentioned a lot, lots of fun stuff.
I actually thought it was a great read and, in my opinion, shows exactly why non-technologists should never be in charge of tech companies or products. Peterson was technically inept - by his own admission - and in the long run, this is what killed WP. Releasing a flagship DOS product in 1993?? It was mind boggling even back then when I first entered the tech industry.
Second this recommendation. Fun read! I know a lot of HN folks won’t be as impressed as I was, but I had no idea they wrote the first several versions of WordPerfect for DOS in assembly. To me, at least, THAT is impressive. I wouldn’t even know where to begin to start a project like that in assembly.
I'd say most software on personal computers prior to the late 1980s was written in assembly. Compilers at the time were terrible at optimization and you could really tell the difference as a user between a compiled program and one written in hand-crafted assembly.
It did, although XyWrite is still around and actively developed! Sort of.
Back in the day, there was a custom version of XyWrite called Nota Bene, which I think actually started out as a set of XyWrite macros but then ended up becoming a licensed fork. XyWrite went through a series of owners, ending up at “The Technology Group”, which ported it to Windows, then tried to develop a new vertical product based on its Windows engine and cratered. But Nota Bene kept their license with TTG, and that license covered the Windows engine…and they’ve kept developing it ever since.
It isn’t exactly XyWrite, and it’s dreadfully expensive in the way vertical market applications are. But it is still around, which is in a weird way pretty cool. I used Nota Bene 4 for DOS for a few years. (Which turned out to be a good choice as far as proprietary word processors go; it uses what’s basically XyWrite’s file format, e.g., ASCII with embedded commands.) There was talk a few years ago of forking the current version of NB back to be more like XyWrite, but that doesn’t seem to have gone anywhere.
I worked in law offices and data entry in the early 90's through high school, and some college. When HTML came along, it was pretty much the same style of syntaxing as WP, so it was extremely easy to pick up. I was one of the early HTMLers, helping my school departments. This led me down the road to software engineering.
There are several fortuitous milestones in my career. Working with WP was probably the first major one.
One of my first jobs was for a local MSP who had a lot of law offices as clients. Beyond the massive CD towers that contained Lexis Nexis and other legal libraries, everyone used WordPerfect. For DOS.
Why would you do this, when Windows and Office 97 existed?
You could view open documents and scroll through them with the keyboard.
Click, click, click, click - "That's the one I need!", a lawyer would bark out. It took far too much time to use the mouse and open documents one-by-one. Even if you hit Alt, F, O, you still had to scroll through hundreds or thousands of files, try to remember where you were...back then you had friendly filenames like DM928032.WDP
Lawyers and architects used WordPerfect long after Word rose to power because WordPerfect gave fine-grained control over line numbering that Word did not.
I worked for law firm in the mid-90s who developed a robust set of Word styles that were pretty much required internally and made for nice, consistent documents (and could even be applied pretty well to documents from the outside). Now I work for people who work heavily with Word and wouldn't know a style if it bit them in the ass.
The best are when people are working in the blown-out remains of something that was once a wonderfully-styled and designed document (if you know what ALT-F9 does, you know the type).
I've spent hours moving over the info into a clean template; it's not worth fighting the blown-out version.
Agreed. At that point, LaTeX not only all but requires you to use styles, .tex files are text-based for easy version control.
I wouldn't necessarily say I'd endorse LaTeX for collaboration per se among people who don't normally use it, but I think it points the way toward what a good collaborative writing tool would look like.
For all of its faults "GitHub markdown" works decently well for collaborative writing; the number of people who are willing to learn LaTeX just to work on a document is way too small compared to the number who would greatly have their life made easier by doing so.
Again, agreed on all counts. Unfortunately, however, while Markdown (any flavor you choose) is pretty great for writing text, it's really limited in the types of formatting you can do, hence also the types of documents you can create.
That leads you down one of two routes:
1. Massively extend Markdown so it can do a large-ish subset of what LaTeX can do, or
2. Slightly extend Markdown so it can do enough to be useful, but nowhere near what LaTeX can.
I don't see a great way to do option 1 without making something that's nearly as complex as LaTeX. Option 2 doesn't seem all that great to me, except maybe as a gateway drug to LaTeX.
Maybe I'm thinking about it all wrong here, but it seems like Markdown itself sits at or near some local optimum of complexity vs utility that's pretty strongly attracting in the sense that going too far away from that point makes you lose the thing that makes Markdown attractive in the first place.
Even WP didn't really get Reveal Codes on their own program right when they went to Windows. That tool is just way more appropriate for monospaced terminals instead of WYSIWYG.
I was in college from 1993-97 and ran Linux on my PC. I started to learn LaTeX but I realized that it was easier to just write reports in text and do a tiny amount of formatting in HTML. I could use img src to include a few diagrams and then print it out in the computer lab.
Sixel should be more universal: in particular I'm wishing that PuTTY and especially TeraTERM on Windows supported it. It would allow non-sw engineers (hence Windows) to see graphics from embedded systems that use serial ports.
I run Windows 11 as my main OS. sixel-tmux was written to help the users of non-sixel-aware terminals: every time a sixel sequence is intercepted, it's either:
- rewritten to ASCII art through derasterize if your terminal doesn't support sixels
- passed as-is if your terminal supports sixels
> to see graphics from embedded systems that use serial ports
If you use a serial port software such as minicom inside a terminal running sixel-tmux (ex: Windows terminal) it should work
There's been talk about adding sixel support to windows term for a couple years. I went back to BSD as a daily driver as work on this issue started picking up, but it looks like progress is being made:
Um. I am not sure if you appreciate the difference.
AIUI, those are terminal emulators. Programs that let you attach to a text session on the same or another computer.
Terminal emulators are programs that emulate terminals. "Terminals" are a type of hardware. A screen and a keyboard that attach over RS232 serial links, running at maybe 9600 bits per second -- a really fast one might do, ooh, 19200bps -- to a computer. They can only display text.
(Graphical terminals existed but cost as much as a quite nice car at the time, and so remained rare.)
The clever thing in this WordPerfect version can display a "graphical" print preview on a text-only terminal.
This is trivially easy in software, but a pretty amazing feat of coding on dedicated hardware.
It's okay for low-color/solid-run images, terrible for everything else. Nachman's image mime blobs (iTerm2 style) is the superior approach. mintty/mlterm/rlogin/wezterm already support it. Kitty has an (incompatible) variant--same idea, but delivered in chunks.
> when when run chat programs inside electron apps, does it really matters?
From a dev perspective, it's a lot easier to base64 an image you already have, with a base64 that's already in your stdlibs, than to scour github for a passable sixel library to pre-rasterize that jpeg & reformat it as sixel. I say this as someone who's written a sixel conversion library.
> competing formats
It's not a very old format, yet already supported on 4-5 terminals last I checked.
Or you could just use the libsixel package. Downloading libraries isn't unknown to developers (thinking about `apt-get install libncurses5-dev libsixel-dev` or the like.) Or sysadmins: `apt-get install libncurses5` or `apt-get install libsixel`.
I do everything I can to help popularize sixels - it could be a default fallback format: sixel-tmux could "rewrite" on the fly sixel sequences into kitty iterm2 or whatever
Sixels are compatible with cursor positioning escape sequences, so I can position the image on the screen. I wasn't able to do this with term2. Very possible I just didn't see how to do it though. If you have a pointer to docs for making that work, I'd love to play around with it.
Last time I evaluated this, sixel & base64 image placement relative to re-positioned cursor had slightly different behaviors across different implementations. I think the only one with well-defined placement/dimensions behavior was the Kitty format--which is unfortunately Kitty-only.
If the goal is to hot-patch graphics into existing TUIs, Kovid is probably on the right track with this. It needs to be something richer than what sixel or iTerm2 provide--with pixel placement, play/pause, scaling, etc. Though for a do-over of piping a UI over a (relatively) low-bandwidth wire, I think something like Sun NeWS would have been a simpler & more feature-complete approach.
Been using Wezterm for about a year now and I'm a very satisfied user. Beats any others I've ever used - iTerm2 comes close but it's Mac only. Every other terminal emulator in my experience has been problematic. Wezterm has not been. Just works.
Yeah, I don't see the point in trying to resurrect a dead standard that isn't very efficient or widely supported. Backwards compatibility is important, but sixels aren't even that well supported nowadays†, so there's not much to be compatible with. Better to just push for new de facto standards for images in the terminal; trying to resurrect sixels is an exercise in retrocomputing.
† xterm and iTerm2 are the only widely-used terminal emulators nowadays that support sixels. Few Linux users use plain old xterm nowadays due to lack of desktop integration, and iTerm2 is not the OS default terminal (and it supports a better image format anyway). Also note that no popular Windows terminal emulators (conhost.exe, conemu, Microsoft Terminal) support sixels at all.
sixel works fine, and is better supported than a "new de facto standard" the doesn't even exist yet. It's not at all true that no popular windows s/w supports it - mintty/wsltty supports it just fine and is widely used.
Novell purchased WordPerfect in 1994, and then sold it to Corel in 1996. So congratulations goes to Wordperfect Corporation itself, since this was 1992.
Never played with WP Unix that much, but the notion that their printer driver system could be adapted to terminal output doesn't seem surprising: it could print that image on dot matrix printers speaking several different "printer control language" variants, some of which required some ingenious hacks. Terminal graphics fit quite well within that family.
WP also had pretty good support for the early laser printers, which had a wide range of ways to tell them to do stuff. Some wanted bitmaps, some built their own and you had to sent them fonts; etc. It was UGLY.
IIRC they even had some drivers for optical type setter things, the old stuff that used thermal paper. Not sure of those made it to version 5 era.
If you read the sixel Wikipedia page, it sounds like sixel actually originated as a format to drive DEC's dot matrix printers. So if WP had an LA210 driver, maybe they were most of the way there already.
It's not surprising that it's possible, sixels are basically just a canvas. It's that they've always been a novelty, very rarely used or supported. Yet somehow they made it into a commercial product in 1992 -- that's surprising!
I think sixels are seeing some resurgence today, terminals are fast enough now to use it to render video. I wonder if GNU ls will add ls --thumbnails :)
Oh yeah, because it was a MSDOS (or unix) program, it had a lot of printer drivers built it, the OS not providing those.
I remember working for the Government and having to use carbon paper in the 1990s, which meant using the "daisy wheel" printer[1]. Somehow I selected the wrong printer, and every line printed backwards. Strange times. I don't think this sixel graphics would have printed..
Almost any printer supported PostScript and a parallel port.
On Unix you could cat a PS file (supported since groff) to the parallel port
at /dev and you were done.
Today you can do similar hacks with netcat, the printing port and PDF files.
Very few non-Apple printers spoke Postscript, certainly at the beginning of the laser printer era. It was an extra cost option available for some printers, which was only bought by people using Apple or the few Unix freaks. And presumably Don Lancaster.
I wonder if there could be some kind of revival of some of this stuff if we saw more support in modern tools.
Is there something like xterm for linux that is more up-to-date but includes Tektronix and sixel?
I think it could be really useful to have a new interactive streaming protocol focused on being lightweight and fast loading with high compression, but for VR devices and 3d interfaces.
It could also be streaming in data from multiple peers, content-oriented. Focus on efficient, small modules describing scenes and programs.
But the biggest concept is that we aren't waiting for millions or billions of bytes to load.
Back in high school in the late 90s, I bought a pallet of Tektronix 4211 terminals [1] for about $40 from a local place that resold old computer junk. All in total there were about 10 of the terminal base units and three, for the time, extremely large 21" monitors. I figured this came from an engineering firm, since these terminals also came with some digitizer pads.
I thought they were X-Terminals and was very disappointed that I couldn't get them do anything beyond being text terminals. It was only recently that I discovered that they were actually intended to be used with this proprietary graphics protocol.
The achilles heel of these old inline display protocols is that there's little to no reporting from the client side as to dimension/resolution/resize/interaction... And to fix this in a performant way, it would need the ability to handle as many of those events as possible on the client side, hence some kind of VM & endless mitigations for it--chrome all over again.
> something like xterm for linux that is more up-to-date
Dickey put a lot of effort into xterm--especially on the correct emulation of old protocols like tektronics. The GPU-accelerateds may be the new hotness, but I don't think many of those devs are interested in software archaeology like tektronics & sixel.
I sort of hope we get html in the terminal. Like imagine you send an escape sequence to the terminal and it becomes a browser window with communication over stdin/out, after which you're basically writing a CGI backend, except with full local access. You could have java script frontend processing GUI events and sending the data to your application, and conversely reading your application's output and manipulating the DOM. Basically NeWS.
Absolutely, especially if you watch (and lament) the absolute mess that is GUI programming in Linux. I feel like something like https://github.com/BashGui/easybashgui (in terms of user/creator experience) shouldn't be that hard.
1) having a GUI top-bar of the commands. This was like P-Code and UCSD Pascal, it was the permanent hint feature, that followed your context. It was a big HCI design issue, and I think helped inform how people expect menus and bars to work
2) reveal markup. Huge. Being able to "see" the embedded control char elements of the textual display. Something I think other tools should have picked up on more. There's a mode in VIM which does something similar.
3) it was fast enough. for a small memory model. We're talking pre MMU chips here. Dos.
Sixels are effing awesome. A friend built some tools for us to do basic graphics for environments we're already ssh'ing into. So we can get basic graphs from the command line without having to move over to the browser and click around to log in and figure out which dashboard to look at.
https://youtu.be/0LTfGgqboE8
I have a co-worker who was in charge of the build system at WordPerfect back in the early 90's. He worked on the the UNIX edition and he managed the whole workflow using a series of Makefiles linked across various shared drives.
I'm pretty good at shell scripts but this guy is a master at his craft. Give him any problem and within a few minute he's got a series of piped statements through awk and a few other well-known tools.
I worked in an office at the advent of the Windows era, in those last years of DOS WP 5.1 dominance. Friends of mine were making steady money, writing printer drivers for the crazy range of laser printers coming to market.
I was the Macintosh Guy, and never developed a muscle memory for the WordPerfect key bindings.
Thank you, WordPerfect, for giving me bizarre keyboard commands for my BIOS settings.
Anyone ever see WP source code, or maybe an open source clone project? Many aspects of WP (mostly the reveal codes) is still useful (much like markdown), that I'm surprised that an up to date open source app isn't available.
* WordPerfect Editor for DOS -- that was freeware back in the day. Runs in DOSemu.
* WordPerfect 3.5 for classic MacOS. Can be emulated on a modern Mac.
* WordPerfect 8.x for Linux. This is a graphical X11 app, the last version of an abandoned product line. I've blogged on how to install it, and someone posted my blog post and direct links to the install scripts above.
Because it's a living product, I suspect it's not legally feasible to clone it. Its owners might well sue.
n.b. since this is marked as "dedicated to the public domain" on the release website, I wonder whether it would be legally permissible to disassemble these versions, produce listings, and use them to produce a FOSS cross platform descendant (keeping in mind the usual issues around trademark law)
... a good point was made in the comments: Borland's Sprint had a very good emulation of the WordPerfect UI, as it also did of WordStar, MS Word, and others.
Sadly for Borland, its amazing emulate-any-other-UI feature came out just around the same time that CUA came along and forced all the DOS apps to harmonize their UIs onto a common standard.
The other killer feature of Sprint was the continuous background saving -- also foxed by DOS getting disk-caching as standard right around the same time.
Saying that, it remains an important app.
AIUI underneath, Sprint was based on an EMACS clone.
Mark of the Unicorn -- still trading, remarkably -- wrote MINCE (MINCE Is Not Complete Emacs) and the separate SCRIBBLE text formatter.
MINCE + Scribble evolved into PerfectWriter. That did quite well in its day; I tried it on a BBC Micro with a Torch Z80 2nd processor.
PerfectWriter evolved into FinalWord, again quite a success in its day. I've read several books written entirely in FinalWord.
Borland bought FinalWord 2 and renamed it Sprint.
ISTM that if the text-formatting part were outsourced to Pandoc or something, or some monstrous Electron thing, the UI and continuous-save parts of Sprint could be re-implemented in GNU Emacs if someone had the will to do it.
ErgoEmacs is a good start on the UI front: forget emulating WordPerfect etc. today. (Maybe provide WordStar keystrokes for the grumpy old gits.) Just put a _good_ CUA UI on Emacs, and give it the ability to handle basic, Markdown-style formatting, and a continuous save and live wordcount feature, and I suspect a lot of people would be interested.
WordPerfect for Linux, from SDCorp, was the best word processor I ever used. Future versions were a lot worse; they re-ported it with some Windows compatibility layer.
As a kid I used to have, what I thought, was WordPerfect 6 on MS-DOS 6.22
It did not have a blue background, but looked graphical like MS Word today. It even had some clipart such as an alpinist.
Does anyone recognize the software I'm describing?
I've been searching for this out of nostalgia.
WordPerfect 6 did have a graphical mode with a white background that looked a lot like MS Word, even when running on DOS. I can't remember, but it might even have been the default if you had a VGA card. CTRL-F3 would flip you back to the old blue background character mode interface.
1. Use the vDos emulator to run WordPerfect for DOS.
2. Use the DOSBox-X emulator to run WordPerfect for DOS.
3. Run the freeware WordPerfect for classic macOS under SheepShaver or QEMU
4. Run the Windows version of WordPerfect via WINE.
To which, from another comment in this thread, I would add:
5. Run an Apple ][ or ][GS emulator and run the freeware WP for Apple ][.
I've gotten very proficient with Word over the years, but there are still times where GUI reveals itself to be a leaky abstraction. Things where table formatting can vary wildly depending on seemingly inconsequential change in the order of making changes.
What makes it worse is that there's always some hidden setting or configuration somewhere to blame, so you never really can blame Word.