POV-Ray : Newsgroups : povray.off-topic : The other OS Server Time
29 Jul 2024 16:25:32 EDT (-0400)
  The other OS (Message 1 to 10 of 130)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Invisible
Subject: The other OS
Date: 4 Aug 2011 11:02:58
Message: <4e3ab4a2$1@news.povray.org>
Everybody "knows" that Emacs is "the best" text editor.

(Actually, in truth anybody who *knows* about such things would know 
that Emacs isn't a text editor at all. It's an elisp interpreter that 
comes with a text editor application preloaded. :-P )

The more vocal proponents will tell you how Emacs is the most advanced, 
sophisticated, powerful and generally /perfect/ piece of software that 
Mankind has ever produced, and that no other editor could ever come 
close to equalling its supreme perfection. And yet, none of them can 
explain /why/ it's so perfect. (Except that, hey, you can *customise* it!)

Actually, you know what? That sounds rather like Lisp. Everybody "knows" 
that Lisp is the most powerful, most perfect language, but nobody can 
explain why. Except that "everything is data", so you can write PROGRAMS 
that write PROGRAMS!

Obviously, in spite of all the fanboys, practically nobody actually uses 
Lisp, and as best as I can tell, nobody uses Emacs either. (For 
sufficiently large values of "nobody".) So clearly these are sound 
arguments. :-P

Once upon a time, I did sit down and try to learn Lisp. What I found was 
a language with a simple and reasonably elegant idea, then swiftly 
buried under several miles of clutter and junk. No thanks.

Suffice it to say, I /still/ don't get why anyone would want to use 
Lisp. But hey, whatever.



I'm curious to know in which sense Emacs is "the best".

Is it "the best" in the same way the Lisp is "the best"? In other words, 
"everybody knows" it's the best, but nobody can actually explain why, 
and nobody actually uses it.

Or perhaps it's "the best" in the same way as Eiffel. Basically Eiffel 
is the ultimate, most perfect OO language. That's what it was designed 
to be, from the ground up. It's the most perfect embodiment of the OO 
paradigm. (Although they also tacked on Design By Contract, which isn't 
strictly anything to do with OO.) A perfect language... shame the 
implementation sucks arse, eh?

Maybe it's "the best" in the same way as TeX. The output of TeX is quite 
simply the most beautiful thing I've ever seen. Nothing else even comes 
remotely close to looking this damned good. Which is just as well, 
because otherwise TeX would have been nuked from space long ago. The 
/output/ is delightful. The /input/ is the stuff of nightmares. For TeX 
is basically a PDP-era text macro expansion system which also houses a 
sophisticated constraint-solver for typesetting text. It really doesn't 
handle colour, it really doesn't handle images, and it most certainly 
does /not/ handle styling or customisation of any kind! Oh, and don't 
try debugging it.

Maybe it's "the best" in the same way that C is "the best". Everybody 
knows it's dangerous, unreliable and difficult to use. But everybody 
uses it because everybody /else/ uses it.

Or perhaps it's "the best" in the same way that Unix is: It's ancient 
and basically obsolete, but nothing can match it for reliability, 
flexibility and compatibility with a large library of existing stuff.



Having sparked my interest, I decided to go find out about Emacs, to see 
if I could discover what's so damned special about it. I began at the 
GNU Emacs web page. Within about 4 mouse clicks, I came across the 
phrase "VT100".

No, I am not kidding. Just skimming the introductory text, already I'm 
finding references to 40-year old technology. Then again, ASCII is 
pretty ancient, yet still relevant. The VT100 itself may be long 
obsolete, but the protocol it speaks has become something of a de facto 
standard for terminal emulators.

Then again, only Unix nerds use terminal emulators. The rest of us, here 
in the second decade of the twenty first century, have moved on a tad 
from that. :-P

Suffice it to say, Emacs is /ancient/. From what I can gather, it's even 
older than Unix - if that's actually physically possible. As tools go, 
comparing Emacs to my current text editor is like comparing a electric 
microwave oven to a paleolithic flint axe. We're really talking about 
the most distant aeons of computing prehistory, almost from before 
computers were computers. (Unit record equipment, anyone?)

Directly because of this, the introductory material uses strange phrases 
like "if your keyboard has a backspace key"... What do you mean *if*? 
It's only been there for, like, over two decades. :-P Similarly, suffice 
it to say that Emacs does /not/ follow any remotely modern standard for 
normal keyboard commands. They simply didn't exist when Emacs was written.

Even the terminology is all wrong. Cut & past are called kill & yank. 
(Even though those sound like synonyms, they are in fact inverses of 
each other.) Except that... no, not really, no. Kill and yank are 
/similar/ to cut and paste... but not quite. Oh, and there's no copy.

Everything is like this. "Load" is called "find". Except that, again, no 
it isn't quite the same. Because "find" is also for switching between 
buffers. There is no "new"; instead you must "find" a non-existent file, 
type some stuff, and then save it. As best as I can tell, it is 
impossible to save an existing file under a new name. (I.e., there is no 
"save as".)

Similarly, the cursor isn't called a cursor, it's called "point". The 
status bar isn't called a status bar, it's called a "mode line". Loading 
a file is called "visiting" it. The list goes on.

Given that the major "feature" of Emacs is that it's completely 
configurable, I'm interested to see how easy it is to actually configure 
it. My editor of choice is SciTE, which has quite a lot of configuration 
options. Unfortunately, that means that after you download it, you have 
to spend about three weeks configuring all the stupid defaults to more 
sensible settings. It takes so damned long that I actually find it worth 
while transporting the configuration settings from machine to machine.

Also, given that it apparently has billions of commands, I'm curious to 
know how you map all these things to the keyboard. Without getting into 
a long keyboard vs mouse debate, both have their advantages.

I think it was Warp who mentioned a while back how every film and TV 
program you'll ever see always shows the ultra-hacker frantically typing 
away on his computer as stuff appears on the screen. And yet, very 
little software can actually be controlled from the keyboard like that. 
It occurs to me that one program which /can/ is FractInt.

Once you get to know FractInt (i.e., once you've wasted several years of 
your life experimenting with the several hundred fractal types, options, 
bells, whistles and doodads it offers), you can use the keyboard to 
control it astonishingly fast. Each sub-menu and command is basically 
one keystroke, and you end up casually typing three or four keystrokes 
at once without really having to think about it, such that screens zip 
past faster than the eye can see, and the program is reconfigured.

Then again, FractInt is about drawing pictures. You hardly ever need to 
type in text. Emacs is a /text editor/. Typing in text is kind of THE 
ENTIRE REASON IT EXISTS. So I wonder how well you can control it from a 
keyboard?



And then, on Wednesday morning, I did possibly the nerdiest thing I've 
ever done in my entire life: I installed (GNU) Emacs. On Windows XP. Yah.

So how do you install it? Well, you go to the website, download a zip 
file, and unzip it. You then execute runemacs.exe, and a window opens. 
I'm rather fond of programs which are this easy to set up.

OK, so what does it look like? Well, it's fairly ugly. Not the worst 
I've ever seen (e.g., gnuplot is just awful), but it's obviously FOSS. 
You can tell by the big logo utterly lacking antialiasing, the ugly 
fonts in inconsistent styles and sizes, the thoughtless gaudy colour 
scheme, and the grab poorly drawn icons with far too much empty space 
around them.

Aside from that... it looks pretty normal. It's got a menu bar and a 
toolbar at the top, a status bar at the bottom, and a scrollbar on the 
side. Now on a normal status bar, the various status elements are 
separated by actual *graphics*, whereas Emacs is using some lame ASCII 
art to do the same job. That looks kinda tacky. But so far, that's about 
the only difference.

So I click on "Emacs tutorial" and start reading. Heh, apparently Emacs 
predates thinks like cursor control keys. Rather than Page Up and Page 
Down, it directs me to use Ctrl+V and Alt+V. And rather than arrow keys, 
we have Ctrl+N ("next"), Ctrl+P ("prev"), Ctrl+F ("forward") and Ctrl+B 
("backward") for cursor movement. In place of Home and End, we have 
Ctrl+E ("end") and Ctrl+A ("aahhh... wuh??").

Interestingly, while Ctrl+F moves the cursor one character forward, 
Alt+F moves it one /word/ forward. (And similarly for Ctrl+B vs Alt+B.) 
I've never seen a text editor that can do that. (But then again, it's 
not exactly a feature you'd bother looking for.) I'm kinda curious as to 
what Emacs considers to be a "word", but as best as I can tell be 
experiment, it just moves the cursor to the next non-alphabetic character.

In a similar way, Alt+A and Alt+E move by "sentence". Again, not sure 
how Emacs decides what constitutes a sentence. It seems to be going by 
punctuation or by line ends or something.

Fortunately, it turns out that the arrow keys and the scroll bar both 
work just fine, so I don't actually need to remember any of this 
nonsense. Oh, except... the scroll bar has a quirk. Scrolling the view 
actually moves the cursor. It can never be scrolled off the screen. 
(Presumably because on a VT100 there's no way to turn off the cursor. :-P )

This annoying quirk means I can't use one of my favourite editing 
behaviours: If I'm editing line 700, and I want to check something on 
line 300, I can leave the cursor on line 700, scroll up to line 300, 
look at what I want, and then when I start typing, the view instantly 
snaps back to line 700 (so I don't have to hunt around for it). On the 
other hand, the documentation suggests that you can have more than one 
view of the same buffer open at once, and if that's actually true it 
would be even /better/...

What's that? I can move to the top of the file with "M+<"? Oh, perhaps 
you mean "Shift+Alt+,"? :-P Interestingly, by this point, I'm rapidly 
discovering that using the Alt key is surprisingly uncomfortable. :-/ I 
wonder how come I never noticed this fact before?

Apparently by typing Ctrl+U 8 Ctrl+F, I can move the cursor exactly 8 
characters left. I'm left wondering why in the name of God I would 
*ever* want to do this. Still, I guess there might be other commands 
where the numeric prefix is actually useful for something. I 
particularly like the way that typing Ctrl+U gives absolutely no visual 
indication at all that something just happened, as per good HCI design 
guidelines.

LOL @ inaccurate description of how a scrollbar works.

There's a section on "when Emacs is hung". What, you're actually 
expecting that to happen? Maybe I need another editor. o_O In fact, it 
turns out what it /really/ tells you is that Ctrl+G cancels a command. OK.

Finally we come to the part about how to actually /edit text/. (Hey, I 
guess a text /editor/ is also a text /viewer/, right?) After four 
paragraphs explaining what "backspace" is and what to do if you don't 
have one (??!), it tells you how Emacs handles lines too long to fit on 
the display. Oh, that's nice. It wraps it for you and puts little 
markers there to tell you it's wrapped. That's how I usually configure 
my editor. On the other hand, it wraps characters, not words. *sigh*

I quickly discover that, say, Ctrl+K deletes (sorry, cuts) all the text 
from here to the end of the line. But the usual approach of positioning 
the cursor, holding Shift, and then repositioning the cursor doesn't 
select text. It works if you drag with the mouse, but doesn't work at 
all with the keyboard.

As best as I can tell from the documentation I've seen, as well as 
"point" there is also "mark", and you use this to delineate regions (for 
deletion or whatever). You also use it to return to the place where you 
last were. (So, no possibility for confusion there then.) Oh, and 
there's one "point" per window, but only one "mark" per buffer. Nice 
symmetry there! >_<

Also, you can't see the mark. Only the point. Again, I'm guessing this 
is a limitation of the obsolete VT100 technology on which Emacs appears 
to be fundamentally based. Never mind that 40 years later, we have 
raster graphics terminals capable of displaying arbitrary graphics. No 
sir, ANSI escapes for me!

Trying to wrap my head around the exact semantics of killing, yanking, 
the kill ring, the mark and point, and so on is pretty damned hard. I 
suppose if I persevere I'll get it eventually. The undo concept is 
similarly baffling.

What particularly strikes me is that a rare operation such as moving 
forward one word is given a fairly short key sequence (Alt+F), but a 
common operation like undo gets a comparatively long one (Ctrl+X U). The 
documentation helpfully mentions that you can use "Ctrl+_" instead. 
Except that "_" is "Shift+-", so what you're actually saying here is 
"Shift+Ctrl+-". Yeah, that's much easier. :-P

Ooo, now it starts talking about how to load and save files. Because, 
you know, that's kind of crucial too. (In fairness, without cursor 
movement, you can't actually read the tutorial!)

Now, get this: Apparently a very rare operation such as "search" is 
Ctrl+S, but an extremely common operation like "save" (arguably the 
single most important command that any file editor can ever have) is 
Ctrl+X Ctrl+S. Quite apart from the fact that this clashes with modern 
usage (which arguably is no fault of Emacs), why is a highly specialised 
and uncommon operation like searching given a fast direct-access 
command, and the infinitely more common operation of saving your work 
requires two key presses in the correct order?

Also, as I say, you can't just say "new file". You have to actually 
specify the full name and path first. Apparently the only way to get a 
file dialogue to open is to use the mouse. Sure, the minibuffer prompt 
has tab-completion, which is arguably faster. Some visual feedback would 
still be nice though. (You can get that if you press Tab twice. But then 
you have even more buffers open...)

I notice that Ctrl+X Ctrl+S saves the current file, while Ctrl+X S 
/asks/ you whether to save the current file. I've noticed similar 
behaviour with a couple of other commands. (Not that this seems to be 
mentioned anywhere...)

Emacs allows you to have multiple files open at once. The standard way 
to switch the current view to another file is to "find" the file - i.e., 
do what you'd do in order to open it in the first place. Fortunately, 
the GUI provides a menu that shows you what buffers exist and lets you 
switch to them, without the extreme clunkiness of the various switching 
commands. (E.g., list available buffers, change window, select the 
buffer you want, close that other buffer...)

I notice that the window titlebar provides no indication of what file 
you're editing. (It just says "Emacs" and then the DNS name of the PC. 
Yeah, that's very useful information. :-P ) Only by actually looking at 
the Emacs window can you see this. Oh, and if you have several buffers 
visible, the buffer name is at the /bottom/ of the display, not the top 
where you would logically expect to find it. Great!

I also notice that the buffer name "is the same as the file name, 
without the directory part". Great. Let's hope I never have to edit half 
a dozen files all named Desktop.ini or something... Oh, wait.

Earlier I was wondering how Emacs maps all its millions of commands to 
the keyboard. Apparently the answer is that the most common commands get 
a Ctrl or Alt sequence, less common ones are Ctrl+X and then something, 
and the leave common ones of all are Alt+X followed by typing in a 
command name.

...which seems reasonable, although some of their decisions about what 
constitutes "common commands" are /highly/ dubious! It's kinda neat how 
the command name prompt does tab completion without needing tab though.

LOL @ the bit about using Ctrl+Z to temporarily take the terminal back 
to the shell. No deary, see, in this modern age, we don't use 
/terminals/ any more. We have *real* computer displays. :-P

LOLRUS: Pressing Ctrl+Z actually minimises the Emacs window! :-D So I 
guess it does still have a use.

Having tried the incremental search I discovered something quite nice: 
it actually /highlights/ everything on the page that matches your 
search. A trivial feature, but one which I haven't seen in any other 
software. It's also kind neat how jabbing the search keys takes you to 
the next or previous match. OTOH, once you exit search, the search term 
is gone forever, in contrast to modern editors.

Ever since I started this tutorial, I've been looking at the 
70-character text down one side of my enormous widescreen monitor, 
trying to figure out how to add more windows. To my frustration, every 
command that creates a new window splits the display /vertically/, not 
horizontally. (Still, at least you can drag it with the mouse, eh?)

Eventually I discover that the command in question is Ctrl+X 3. 
(Obviously...) I also discover that you can only drag the divider if you 
point at exactly one part of it, in contrast to the horizontal dividers 
which can be grabbed anywhere.

The documentation also claims that if you middle-click on either the 
status bar or the scrollbar while holding Ctrl (um, why?) it splits the 
window. Clicking the status bar /does/ work, but clicking the scrollbar 
does /not/ work. (The minibuffer even pops up a message to tell you that 
this action is not defined.) Score another one for accurate 
documentation. (Remember, I just got this out of the box.)

It's a nice touch that Ctrl+Alt+V scrolls the /other/ window. I guess. I 
mean, if it weren't so trivial to do it by hand anyway.



OK, so pretty much one of the "killer features" of Emacs is supposed to 
be syntax highlighting. So how does it work? I proceed to open a random 
selection of files, and sure enough, their syntax is highlighted in 
various ways.

The whole idea of major modes and minor modes is interesting and all. 
But what happens if, say, I have JavaScript embedded in HTML? If I open 
a JavaScript file, it correctly colours the listing. If I open an HTML 
file, same deal. But if I open an HTML file that contains JavaScript... 
nothing happens. The HTML is recognised, the JavaScript isn't. So here 
is where Emacs fails, and SciTE succeeds.

The HTML highlighting is actually nicer than most. Usually you just get 
the actual markup elements highlighted; Emacs goes that step further, 
simulating certain aspects of the formatting. For example, section 
headings appear bold and underlined, making quickly scanning through the 
markup for that section heading much easier. That's a nice touch. Bits 
marked with <i> or <em> actually come out italic. (Which is admittedly 
kind of ugly with a typewriter font.) Just a few details like that.

It's not very obvious unless you know to look for it, but all the menus 
change when you open various kinds of files. That's nice. (The command 
for "open a browser and display this page" is a bit buried, but it's there.)

There's a whole bunch of annoyances so far. Emacs gives you a vertical 
scrollbar, but no horizontal one. The horizontal commands listed in the 
command reference don't appear to work at all. The vertical scrollbar 
behaves incorrectly (it sometimes scrolls past the end of the file). 
There's a minor mode that wraps text as you type - by word - but only 
after you *finish* typing, which is no good at all. (Thunderbird manages 
to do this completely interactively. It even draws a line to show you 
how much width you have to play with.)



In short, after spending a few days playing with Emacs, I'm still not 
finding anything that makes me to "wow!" Yes, it has a tetris 
implementation. And yes, it's the ugliest, least entertaining tetris 
you've ever seen in your life. Big deal.

Perhaps if I spent a few years reconfiguring Emacs, I could make it more 
to my liking. But I doubt it. In some ways, it's like Unix. Oh, sure, a 
modern Linux distro has lots of shiny eye-candy. But underneath all 
that, it's still the same kludge hodge-podge of ancient software that it 
always has been, and always will be.

Don't believe me? mgetty. "Modem-aware get TTY". That's TTY as in 
teletypewriter. Still think Unix is part of the modern era?

Emacs is obviously /trying/ to be a modern application. Trouble is, 
every step you take to make it more modern is also a step that makes it 
less compatible with all the old cruft written for it - which is half 
the benefit of using it in the first place.

Emacs is trying to pretend that it's a modern GUI application. But take 
more than a casual glance and the truth shows through. Don't get me 
wrong; I'm sure there was a time when being able to see multiple windows 
on the same green screen connected to a modem communicating with a 
lumbering mainframe somewhere has a major technical achievement. Today I 
just find myself irked that I can't freely move windows around like I 
can with the rest of my desktop.

Sure, you can drag the window edges. But there's no way to create new 
windows or close existing ones with the mouse. Nor is there a quick and 
easy way to switch the view of one window. (You have to click on that 
window and then go to the menu to select which buffer you want it to 
display.) You can't swap two windows around just by dragging them. 
Instead you have to find out what buffer each one displays, and then 
switch buffer on each window, one at a time.

You can make the final display look like anything you want. It's just so 
much /hassle/ to get there. In a real GUI program, this stuff is all 
trivial.

Emacs can view info pages. Again, once upon a time, a program that 
allows you to view its own documentation might have been considered 
radical and revolutionary. Today I just find myself shrieking "why can't 
I open this link in a new tab?!" (And answer, apparently, is that you 
have to create a new info buffer, navigate to the same place on that, 
and then click the link in question in /that/ buffer.) Oh, I'm sure if 
you know Lisp you could code up something that does exactly what you 
want... or you could just use an editor which already includes this 
trivial functionality out of the box.

One of the interesting things stated in the documentation is that Emacs 
supposedly lets you use its full text editing capabilities on things 
over than file contents. For example, Emacs can display a directory 
listing, and if you do a find and replace on it, that effectively 
implements a batch rename operation.

Nice idea, but... Well, treating something structured like that as flat 
text seems wrong to me. For example, what if you wanted to rename all 
the files name frame25 (or whatever) to F25, but the frame files happen 
to be owned by a user called frameserver. Would the owner name also get 
changed to fserver? Because that would be /bad/...

In truth, while I didn't try this particular experiment, I found the 
dired mode to be utterly excruciating to use. It's just too clumsy. I'm 
using to being able to effortlessly explore the system. With this thing, 
I'm not even sure where I *am*. (Tree views exist /for a reason/, as do 
full file paths.) Here again, the terminal heritage shows through; 
rather than nice graphics to indicate structure, we get ASCII art.

I suspect you could probably make something /like/ Emacs, but with a 
modern design, and it would work well. But Emacs itself just looks old, 
klunky and irrelevant to me.


Post a reply to this message

From: andrel
Subject: Re: The other OS
Date: 4 Aug 2011 11:45:10
Message: <4E3ABE8D.3000600@gmail.com>
On 4-8-2011 17:02, Invisible wrote:

I'll leave correcting you on several EMACS mistakes to the others. I 
just want to point out that you apparently have been looking at an 
*implementation* (under windows?). You should not confuse that with the 
/idea/ EMACS.

But with regards to TeX or LaTeX

> Maybe it's "the best" in the same way as TeX. The output of TeX is quite
> simply the most beautiful thing I've ever seen. Nothing else even comes
> remotely close to looking this damned good. Which is just as well,
> because otherwise TeX would have been nuked from space long ago. The
> /output/ is delightful. The /input/ is the stuff of nightmares.

It isn't. It is more straightforward than e.g. Word. Everything you need 
to know is in plain sight.

> For TeX
> is basically a PDP-era text macro expansion system which also houses a
> sophisticated constraint-solver for typesetting text. It really doesn't
> handle colour,

It does. No idea how you got that impression.

> it really doesn't handle images,

It does. No idea how you got that impression.

> and it most certainly
> does /not/ handle styling or customisation of any kind!

It most certainly does. Style files are are at the heart of the system. 
As a small comparison: a friend of mine had written her thesis in Word, 
after her text was accepted by the committee she needed 3 weeks of hard 
work to convert it from an A4 draft version into a paperback format text 
that she could submit to the printer. I did it, with the help of a 
student, in one evening. And I had different layouts for chapters 
depending on whether it was published before or not.

> Oh, and don't try debugging it.

If you want to debug TeX, that is relatively easy, all sources are 
available, documented and even published as a book 
(http://www.amazon.com/Computers-Typesetting-B-TeX-Program/dp/0201134373/). 
Moreover Don Knuth has a reward for anybody finding a bug.

If you mean debugging your text or layout, that is more simple than in a 
wysiwyg editor.

If you mean debugging style files or bibstyle files you are correct, 
that is a nightmare if you don't know what you are doing. Simple advise: 
don't touch them.


-- 
Apparently you can afford your own dictator for less than 10 cents per 
citizen per day.


Post a reply to this message

From: Warp
Subject: Re: The other OS
Date: 4 Aug 2011 11:48:32
Message: <4e3abf50@news.povray.org>
Invisible <voi### [at] devnull> wrote:
> The more vocal proponents will tell you how Emacs is the most advanced, 
> sophisticated, powerful and generally /perfect/ piece of software that 
> Mankind has ever produced, and that no other editor could ever come 
> close to equalling its supreme perfection. And yet, none of them can 
> explain /why/ it's so perfect. (Except that, hey, you can *customise* it!)

  It's things like this: http://www.youtube.com/watch?v=EQAd41VAXWo

  (As for the rest of your post, tl;dr, sorry.)

-- 
                                                          - Warp


Post a reply to this message

From: Darren New
Subject: Re: The other OS
Date: 4 Aug 2011 12:03:14
Message: <4e3ac2c2@news.povray.org>
On 8/4/2011 8:02, Invisible wrote:
> Once upon a time, I did sit down and try to learn Lisp. What I found was a
> language with a simple and reasonably elegant idea, then swiftly buried
> under several miles of clutter and junk. No thanks.

Well, that's what happens when you take something that has evolved in 
several different directions for a few years, then mushed it back together.

> Suffice it to say, I /still/ don't get why anyone would want to use Lisp.
> But hey, whatever.

You want to learn Forth?  Here's what you can do with Forth:

http://www.reddit.com/r/programming/comments/iyb2d/freeform_a_meta_language_that_allows_defining_and/c27ojnx

> (Although they also tacked on Design By Contract, which isn't strictly
> anything to do with OO.)

If you didn't understand why DbC is fundamental to "perfect" OOP, you've 
missed a major point of the development of it. DbC *is* the OO. The actual 
bodies of the methods are an implementation detail. :-)

> A perfect language... shame the implementation sucks arse, eh?

True. The first time I tried it, and this is like version 5.2 or so, you 
started a new project and it gave you a Hello World skeleton to start from. 
If you started a new project, then clicked "compile" without touching 
anything else, the compiler bombed out.

> Maybe it's "the best" in the same way as TeX. The output of TeX is quite
> simply the most beautiful thing I've ever seen.

Hopefully they've improved it. TeX is probably OK as long as you don't use 
it with metafont files, but the output with metafont is pretty sucky.

> Or perhaps it's "the best" in the same way that Unix is: It's ancient and
> basically obsolete, but nothing can match it for reliability, flexibility
> and compatibility with a large library of existing stuff.

I'd argue that Windows may have better flexibility (modulo not actually 
having the source to it, and not counting "portability" as "flexibility") 
and a larger library. It's certainly not a slam dunk for Unix. Plus, Unix 
isn't really all that reliable, either.

> Suffice it to say, Emacs is /ancient/. From what I can gather, it's even
> older than Unix

The first versions were. I don't think it was called emacs at the time. It 
was also originally developed on an OS other than Unix, so the "meta" key 
was actually a separate key from "alt".

> Similarly, the cursor isn't called a cursor, it's called "point".

The two are different things. The point is where text is inserted. The 
cursor is an indication on the screen.  The two aren't necessarily the same 
thing.

> Ctrl+A ("aahhh... wuh??").

Because Ctrl-H is help, you see.

That's the thing that always killed *me* about Emacs. The key mappings were 
half mnemonic and half abbreviation and half based on keyboard position. On 
the other hand, Wordstar I still remember every keystroke, in spite of not 
having used it since 1982 or so.

> Interestingly, while Ctrl+F moves the cursor one character forward, Alt+F
> moves it one /word/ forward. (And similarly for Ctrl+B vs Alt+B.) I've never
> seen a text editor that can do that.

Really? Even notepad does that: ctrl-rightarrow. Every editor does this.

 > (But then again, it's not exactly a feature you'd bother looking for.)

Of course it is, especially if you're editing text.

> I'm kinda curious as to what Emacs
> considers to be a "word", but as best as I can tell be experiment, it just
> moves the cursor to the next non-alphabetic character.

It depends on the mode. A "word" is one token.

> In a similar way, Alt+A and Alt+E move by "sentence". Again, not sure how
> Emacs decides what constitutes a sentence. It seems to be going by
> punctuation or by line ends or something.

Again, it depends on the mode. If you're editing a program, it's one 
statement, one s-expr, etc.

> (Presumably because on a
> VT100 there's no way to turn off the cursor. :-P )

No, it's because VT100s don't have scrollbars. Emacs didn't have scrollbars 
until after windowed operating systems with scroll bars were common. Heck, I 
suspect emacs predates the invention of the scroll bar.

> Apparently by typing Ctrl+U 8 Ctrl+F, I can move the cursor exactly 8
> characters left. I'm left wondering why in the name of God I would *ever*
> want to do this.

Because you want to draw a line of 30 hyphens across the screen. Or you want 
to skip to line 287 in your file.

> There's a section on "when Emacs is hung". What, you're actually expecting
> that to happen?

If you're writing your own code, or you hand it a few megabytes and say "go 
indent this".

> Now, get this: Apparently a very rare operation such as "search" is Ctrl+S,
> but an extremely common operation like "save" (arguably the single most
> important command that any file editor can ever have) is Ctrl+X Ctrl+S.

I'm not sure why you think you'd save a file more often than you search. It 
boggles my mind to think you think searching for text in a file is highly 
specialized and uncommon.  Oh, wait, this from the guy who doesn't use 
google. ;-)


> I notice that the window titlebar provides no indication of what file you're
> editing. (It just says "Emacs" and then the DNS name of the PC. Yeah, that's
> very useful information. :-P ) Only by actually looking at the Emacs window
> can you see this. Oh, and if you have several buffers visible, the buffer
> name is at the /bottom/ of the display, not the top where you would
> logically expect to find it. Great!

Again, you're cutting on emacs for being a program written and popular 
before windowing OSes were common? Before the Mac and MSWindows established 
the standards of title bars and scroll bars and where status lines go and 
what they're called?

> ...which seems reasonable, although some of their decisions about what
> constitutes "common commands" are /highly/ dubious!

That's why you can remap the keys as you like. ;-)

> Having tried the incremental search I discovered something quite nice: it
> actually /highlights/ everything on the page that matches your search. A
> trivial feature, but one which I haven't seen in any other software.

Damn, man, you gotta get out more. I haven't seen any decent editor since 
Win95 that doesn't do that. Sure, not notepad, but everything else.

> same deal. But if I open an HTML file that contains JavaScript... nothing
> happens. The HTML is recognised, the JavaScript isn't. So here is where
> Emacs fails, and SciTE succeeds.

Nobody uber enough to use emacs would stoop to editing web pages with 
embedded javascript. ;-)

Really, the code that recognises that stuff just needs to be updated.

> The HTML highlighting is actually nicer than most.

You should check out VIM if you want a somewhat more rational editor that 
does all this stuff emacs does.

> In short, after spending a few days playing with Emacs, I'm still not
> finding anything that makes me to "wow!" Yes, it has a tetris
> implementation. And yes, it's the ugliest, least entertaining tetris you've
> ever seen in your life. Big deal.

Many of the nice features of emacs become redundant in an environment with 
windows, and especially in an environment with IDEs customised for the 
specific languages you're using.

> Don't believe me? mgetty. "Modem-aware get TTY". That's TTY as in
> teletypewriter. Still think Unix is part of the modern era?

Sadly, Unix *is* part of the modern era, because we are still doing things 
like we did in 1970.

> You can make the final display look like anything you want. It's just so
> much /hassle/ to get there. In a real GUI program, this stuff is all trivial.

Me, I usually use VIM, and open each VIM in a separate window. If you 
actually want to do emacs-y like stuff, like run the compiler over the 
buffer that you just typed, and then write code to jump from error number to 
error number in your source code, I expect that would be much more difficult 
with emacs.

> I suspect you could probably make something /like/ Emacs, but with a modern
> design, and it would work well.

Yes. They call it an IDE. ;-)  Or "a windowed desktop."

-- 
Darren New, San Diego CA, USA (PST)
   How come I never get only one kudo?


Post a reply to this message

From: Darren New
Subject: Re: The other OS
Date: 4 Aug 2011 12:08:45
Message: <4e3ac40d$1@news.povray.org>
On 8/4/2011 8:45, andrel wrote:
> It does. No idea how you got that impression.
> It does. No idea how you got that impression.

The original versions didn't. It has probably been added to. It certainly 
didn't when I used it for my thesis.

> small comparison: a friend of mine had written her thesis in Word,

Did she use styles in Word? I suspect not.

> And I had different layouts for chapters depending on whether it
> was published before or not.

You can do that in Word also, ya know. You just have to use styles from the 
start, instead of trying to plug them in after the fact. Just like TeX.

> If you mean debugging style files or bibstyle files you are correct, that is
> a nightmare if you don't know what you are doing. Simple advise: don't touch
> them.

"Why does it insist on putting the images at the top of the next page 
instead of the bottom of the page where I include it?"

"Because Leslie likes it that way."

-- 
Darren New, San Diego CA, USA (PST)
   How come I never get only one kudo?


Post a reply to this message

From: Darren New
Subject: Re: The other OS
Date: 4 Aug 2011 12:13:25
Message: <4e3ac525$1@news.povray.org>
On 8/4/2011 8:48, Warp wrote:
> Invisible<voi### [at] devnull>  wrote:
>> The more vocal proponents will tell you how Emacs is the most advanced,
>> sophisticated, powerful and generally /perfect/ piece of software that
>> Mankind has ever produced, and that no other editor could ever come
>> close to equalling its supreme perfection. And yet, none of them can
>> explain /why/ it's so perfect. (Except that, hey, you can *customise* it!)
>
>    It's things like this: http://www.youtube.com/watch?v=EQAd41VAXWo

Yes, my editor can do that. Indeed, it can even take that bunch of text and 
export the table to an actual SQL server.  It's exactly that sort of stuff 
that keeps corporations buying Word instead of OpenOffice.

-- 
Darren New, San Diego CA, USA (PST)
   How come I never get only one kudo?


Post a reply to this message

From: Warp
Subject: Re: The other OS
Date: 4 Aug 2011 12:22:11
Message: <4e3ac733@news.povray.org>
Darren New <dne### [at] sanrrcom> wrote:
> >    It's things like this: http://www.youtube.com/watch?v=EQAd41VAXWo

> Yes, my editor can do that. Indeed, it can even take that bunch of text and 
> export the table to an actual SQL server.  It's exactly that sort of stuff 
> that keeps corporations buying Word instead of OpenOffice.

  Can you do it in a text terminal through ssh? Can you customize the
functionality, change it, add new features or modify existing ones? Can
you run it on Windows, Linux, MacOS X, BSD, Solaris, and basically any
Unix-style OS in existence? Can you get that software for free?

  I didn't think so.

-- 
                                                          - Warp


Post a reply to this message

From: andrel
Subject: Re: The other OS
Date: 4 Aug 2011 12:28:15
Message: <4E3AC8A6.5050607@gmail.com>
On 4-8-2011 18:08, Darren New wrote:
> On 8/4/2011 8:45, andrel wrote:
>> It does. No idea how you got that impression.
>> It does. No idea how you got that impression.
>
> The original versions didn't. It has probably been added to. It
> certainly didn't when I used it for my thesis.

If this is about color, it might indeed have been added later. What I am 
using now does support it. Note that the source of TeX has been stable 
for a long time, so it probably was possible earlier, but only supported 
when there was a sort of generalized output format (or input format for 
the printing device, depending on your POV).

>> small comparison: a friend of mine had written her thesis in Word,
>
> Did she use styles in Word? I suspect not.

I guess she didn't and it was more than a decade ago (as was mine)

>
>> And I had different layouts for chapters depending on whether it
>> was published before or not.
>
> You can do that in Word also, ya know. You just have to use styles from
> the start, instead of trying to plug them in after the fact. Just like TeX.

I know.

> "Why does it insist on putting the images at the top of the next page
> instead of the bottom of the page where I include it?"

You can put them elsewhere, but it indeed is sometimes a fight.

OTOH so is it in Word. When I write a short 4 paper abstract in Word 
(for some reason the norm for biomedical engineering conferences) 
getting the layout right takes more time than writing. Not the initial 
layout, but every time someone edits a piece of text, and again after it 
was transported between various versions of Word and/or open office etc. 
Often it is more simple to do the complete layout yourself by adding 
linefeeds <shudders> than by using the template provided by the 
organization. For some reason they often also want to have the original 
*.doc file for inclusion in the abstract book. So I can not escape to 
something better.



-- 
Apparently you can afford your own dictator for less than 10 cents per 
citizen per day.


Post a reply to this message

From: Darren New
Subject: Re: The other OS
Date: 4 Aug 2011 12:36:44
Message: <4e3aca9c@news.povray.org>
On 8/4/2011 9:28, andrel wrote:
> If this is about color, it might indeed have been added later. What I am
> using now does support it.

Neither color nor images were supported by TeX in 1991 when I used it for my 
thesis.

> there was a sort of generalized output format (or input format for the
> printing device, depending on your POV).

Well, more like only supported when there was a post-processor to put the 
images into the empty spots TeX left for them, and only supported when color 
printers were common. :-)

> OTOH so is it in Word.

Yep. I was just commenting that TeX and LaTeX aren't really simple enough 
that you can make them do what you want with ease.

-- 
Darren New, San Diego CA, USA (PST)
   How come I never get only one kudo?


Post a reply to this message

From: Darren New
Subject: Re: The other OS
Date: 4 Aug 2011 12:44:53
Message: <4e3acc85$1@news.povray.org>
On 8/4/2011 9:22, Warp wrote:
>    Can you do it in a text terminal through ssh?

Why the hell would I do that? I can run it remotely in a variety of ways, 
but no, not in a text terminal.

Can emacs run on a hardcopy terminal?

> Can you customize the
> functionality, change it, add new features or modify existing ones?

Yep. Heck, at this point, I can program it in C# instead of elisp. I can 
also trivially connect it to and incorporate anything else that has a COM or 
.NET scripting interface under Windows, including remoting it to other 
processors on the network, in order to extend its functionality. It's messes 
like that that make it popular - the fact that the average business user can 
get something custom done without going thru the IT department.

> Can
> you run it on Windows, Linux, MacOS X, BSD, Solaris, and basically any
> Unix-style OS in existence? Can you get that software for free?

That wasn't the question, tho. The question the video asked is "can your 
text editor do this" and then showed embedding a spreadsheet into a text 
document and regenerating HTML from that. And the answer is "yes, my text 
editor can do that." I mean, come on, they're showing off that they can put 
columns in a text file that adjust to the width of the text in the column? 
Yes, indeed, my text editor can do that.

-- 
Darren New, San Diego CA, USA (PST)
   How come I never get only one kudo?


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.