GNU Emacs 21
Alex writes: "After a wait worthy of the Mozilla project, GNU Emacs 21 is finally released! Image support, colour syntax highlighting on terminals, nice scrollbars and tooltips, it's all there folks. Also, for the first time in it's long illustrious history (and a step forward for GNU Project development in general) it's now available via anonymous CVS on savannah. No more waiting a year for the latest features... Now all we need is a port to GTK/GNOME...." Other submitters point out that the changelog is available through CVS (this is a serious changelog!), and you might try the mirrors, or maybe some light reading while you download.
Why are we hiding from the police, daddy?
Because we use emacs son, they use vi.
The dog got loose on my computer, and now there's XP all over the screen. -Paul www.ploeb.net
Great! Now I just need to get another hard drive to have enough space to store the binary.
...does it finally cook coffee or fix my breakfast ?
I have been waiting for this to hit slashdot for a while. I have been playing with Emacs 21 for a while now. Hacking on lisp, etc. It is *very* stable. Almost all existing packages work perfectly.
The maintainers have done an amazing job.
This release includes a number of really cool features including:
the ability to have dynamic fonts (IE new face implementation)
a header line at the top of the file for additional inforation
support for tooltips (I am working on an intellisense package)
Resize of minibuffer windows
A fringe to the left and right of a buffer for metainfo.
Font colors can be used anywhere including the modeline, within completion, etc.
Cursors are updated if Emacs is busy
Tons more stuff. See the NEWS file in the dist for more information.
Also. I have written a ton of Emacs extensions that you guys might like.
You can also check out my Emacs bookmark which contain a lot of information.
Gtk/XEmacs is available here if you really want gtk. Unfortunately this is based on an earlier version of XEmacs (21.1.12, current is like 22 something I believe), but it does look nifty and fit with your other gtk apps if you have any. There are a few minor caveats:
It does look nifty, though (depending on your taste), as screenshots indicate.
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
Imagine the glee that would ensue if emacs became a KPart or Bonobo component. Want an editor for your new IDE? Drop in emacs. I know integrating beyond pipe support is anathema to most unix folks, but in my opinion its worth it.
You kids with your overgrown editors. Someone wake me up when the new version of EDLIN is released.
OK.
A lot of people are asking the typical questions.
IE: "Why should I use Emacs when I have a much nicer looking application that is more user friendly?"
You should *really* spend some time on Emacs. There is an *amazing* Zen type of relationship that you start to appreciate after about 2 weeks of using it.
You also should drop your prejudice of lisp (keep an open mind for about 2 weeks). Lisp and schema are *great* languages. I just wish Emacs Lisp were clooser to common lisp or scheme.
The ability to quickly write a function within Emacs, evaluate it and then *use it right away* without having to restart your editor is very addictive.
Ever need to parse or rework a file with 1000 lines? No problem. Just write a 10 line elisp script that does it for you with regexp. This took you maybe 5 minutes and saved you hours of work! yay emacs!
Also. If learning the new key bindings is intimidating then you can just remap everything.
So for example instead of learning some the "correct way" you can just remap..
(global-set-key "\C-cb" 'browse-url)
This means that everytime I hit 'C-c b' this prompts me for a URL (or tries to guess it from the current buffer) and launches mozilla for me.
Pretty cool huh?
Also... stick to GNU Emacs... AKA the *true* Emacs.
Kevin
And in other news, Bram Moolenaar announced that the upcoming version of Vim will be released as version 23. During a recent interview, Bram stated that "those Emacs morons think they can gain market share by inflating the version number. This jump in Vim versioning merely helps consumers accurately choose the best text editor. With Vim v6.0, some uninformed consumers may believe that Vim does not have as many features as Emacs v21. Besides, kudos to Michael Jordan for making another comeback...just like vi!".
Richard Stallman could not be reached for comment. Sources believe that he is in Afghanistan promoting the name "GNU/Emacs" instead of just "Emacs".
Check out hideshow.el (which comes in Emacs 21).
I have also written some extensions to this package
AKA the ability to hide all function or method bodies in lisp and in java.
Kevin
Then a consultant visited my employer and installed Emacs on our Suns. He gave me a little introductory lecture about Free Software and showed me a couple demos, but I didn't use it much right away.
Then my friend Jeff Keller, who was an ardent user of GNU Emacs and personally acquainted with RMS from his time at MIT, spent an evening driving around in my car with me singing the praises of Emacs. I decided to give it a try.
It wasn't too long before I discovered that it was extensible, but it wasn't too clear how one did it. For some reason I got hooked on the idea of writing my own native C functions callable from elisp - there are a lot of such functions built in - as well as calling lisp from C.
I started reading the source code.
I kind of dropped out of site as far as my employer was concerned for quite some time, diving headlong into both learning to use emacs proficiently and to program in it, but in the end I had a profound realization:
I decided it would be worth the effort to program for real, in hopes that someday I could make a program as great as Richard Stallman's Emacs. Previously I had had the idea that software was more of a curiousity and not something to be taken seriously.My education was in Physics and Astronomy and back then I hadn't even completed my degree so I had a lot of work ahead of me.
For most of my career I have usually selected the jobs I took based on what there was to learn in them. So I got my education in programming on the job, and in a very practical way. But I also spent a lot of time with basic texts, learning the fundamentals.
It's been about 14 years since then - I learned about Free Software before Linus even started at the University, let alone wrote Linux - and I've learned a lot and written quite a lot of software.
I still haven't written my Great Program but I have various thoughts as to what it might be.
With mixed feelings I say now that my favorite development environment is the Metrowerks CodeWarrior IDE. I don't have the Linux version yet so often when programming on Linux I mount my source code directory via samba or netatalk on a Mac or Windoze box and edit my files using codewarrior, doing my compiles and testing via X over the net.
If I'm just programming within Linux I use whatever calls itself "vi" on my box, whether that is Vim or Elvis or whatnot.
Every now and then I do pull out emacs though. When I need the power. Usually these days I just want something quick and simple.
-- Could you use my software consulting serv
No one has mentioned yet the coolest part. You can now point lilo at your emacs executable and boot directly into emacs. Yes, that's right no more pesky and redundant operating system in the way, emacs does everything you need anyway.
The difference between Canada and the USA is that in Canada healthcare is a right and gun ownership is a privilege.
Why are we hiding from the police daddy?
Because we use vi son, they use emacs.
~Thinkgeek.com T-Shirt
Let the war continue...
WikiAfterDark.com It's a sex wiki, go now!
Emacs
Makes
A
Computer
Slow
-- Could you use my software consulting serv
coffee.el allows Emacs users to submit a BREW request to an RFC2324-compliant coffee device (Hyper Text Coffee Pot Control Protocol, or HTCPCP). It prompts the user for the different additives, then issues a HTCPCP BREW request to the coffee device.
That should be "GNU/GNU Emacs".
[MODERATOR INSTRUCTIONS]
+1 Funny
-1 Overrated
[/MODERATOR INSTRUCTIONS]
Any sufficiently well-organized community is indistinguishable from Government.
Some of the new features of Emacs 21 will annoy those of us who are just too used to the old Emacs 20 interface. The following code will turn off the more "newbie-friendly" changes:
(setq emacs21 (eq emacs-major-version 21))
(when emacs21
(blink-cursor-mode -1)
(tool-bar-mode -1)
(tooltip-mode -1)
(global-set-key [home] 'beginning-of-buffer)
(global-set-key [end] 'end-of-buffer)
(setq rmail-confirm-expunge nil))
That said, a ton of the new features are very cool. The News file is gigantic... the new features I particularly like are mouse-avoidance mode, the scalable mini-windows, mouse-popup-menubar-stuff, flyspell-mode, cursor-type, and auto-image-file-mode. Have fun!
is the standard text editor, dagnabit! You kids these days, with your fancy-schmancy buffers and fonts. Why, in my day we had to uphill, both ways, in the snow!
Best Slashdot Co
The *last* thing I want is my EMACS mixed up with GNOME/Gtk. One thing I love about EMACS is its portability. It's running right now on my Windows box at home and on my Linux box at work. Making standard EMACS depend on the GNOME/Gtk libraries would just make this lovable behemoth an ungodly piece of work that would only run on GNOME.
Thank goodness that someone did it to XEmacs, which is a better place for adding silly GNOME widgets. EMACS doesn't need widgets. All it needs is text. That's part of its beauty.
I have no particular aversion to using GNOME except that it's nowhere near as mature as EMACS, and I would hate updating all of my graphics libraries so I could use my favorite *text* editor.
end of line
Well, I could point out that image support and colors on TTYs were in XEmacs a long time ago (I still have a machine with XEmacs 20.4 on it, which has both...) but that might start up another "frank exchange of views" so I guess I'd better be pusillanimous instead.
To be more succinct: they're different, based on the fact that the different development teams have different priorities. There are features that come in both directions, but IMHO they tend to show up on XEmacs first.
I have not read the changelog yet, but I am wondering if they FINALLY added a talking paperclip to emacs?
It is the one feature I really think this product needs in order to be a usable product.
As always, the best source of information on the features of a new release is the Anti-News in the (excellently written) Emacs Manual, which should come bundled with each installation. It's provided to prepare "those users who live backwards in time" for Emacs version 20, and is great fun. A sample:
After reading a bit about RMS' pre-FSF years, about his graduation with honors from Harvard (Physics, I believe) while pulling all-nighters at MIT AI, about EMACS, about the LISP contests with Greenblatt... I am convinced that RMS was born for hacking.
Yes, but has anone been able to port EMACS (or vi even) over to RMS_OS? How are we going to get script kiddies to hack it, if we can't even get a script written for the OS?
--You will rephrase your request for me to go to hell. Goto statements are not acceptable programming constructs
I was suprised to see it wasn't available with Cygwin yet, but it is available separately (Cygwin.dll is a POSIX api that runs under Windows, and the whole Cygwin system is a shell environment consisting of lots of programs that have been compiled to use Cygwin.dll - check it out if you use Windows at all; it's very easy to install).
Anyway, you can get what is called "NT Emacs" from one of these mirrors. Note you will need a Microsoft compiler to build it; it has not yet been configured to build under gcc for Windows - if you don't have MSVC, then get one of the binary packages.
This is the NT Emacs FAQ.
Despite that it is called "NT Emacs" it is reported to work on non-NT versions of Windows.
Here is a helpful installation guide.
Here is a Google search for "NT Emacs" that turns up a lot of helpful pages.
NT Emacs by default runs the Windows command interpreter when you run shells within it. If you use Cygwin, here is how you run bash as a shell under NT Emacs.
After getting all nostalgic about emacs in my post below, I thought I'd give my old friend another try. But right now I'm doing Windows work, and I was suprised to find Cygwin doesn't provide emacs; a little search turned up the above. I haven't actually even downloaded it yet, but I'm about to. I run Linux too (Debian PPC & Slackware) but this way I can use it for my current work.
-- Could you use my software consulting serv
Fortunately, Emacs comes bundled with an excellent text editing capabilities, even though they're not enabled by default. M-x viper-mode is your friend. (Set it on the "wizard" user level when it asks.) No need to lose the massive power of emacs to get efficient vi-style text editing.
Most of my Emacsing is done in terminal mode on xterms or remote shell sessions.... I go into graphics mode when I'm doing serious programming, but I'm a sysadm by trade, and most of the time character mode is more than good enough. Adding GTK widgets is something I'm likely never to use. Waste of time, if you ask me.
You sure you don't have that bass-ackwards? Or are you a gamer type?-- :)
I used to run Windows for werk because I had to.
I run Linux at home because I want to.
(Lady willing come next week I'll run Linux at work too!
This is an honest question, not a rhetorical attempt to lure someone into a flamewar.
I've heard several accounts of advantages of XEmacs over GNU Emacs. I haven't heard anyone say "I'm familiar with both versions and I prefer GNU Emacs for technical reasons and here's why", but there must be such people. Anyone willing to step up and do a little advocacy? It might be enlightening.
Unfortunately, I'm not sufficiently familiar with Emacs and Emacs-Lisp to evaluate the differences for myself.
meta-control-shift-hyper-q is not a good choice for 'move cursor right'
The choice of keys may hve made sense on the keyboards emacs was originally designed using. However the left hand scrunch required for many emacs opertions is particularly bad on the carpel tunnel.
And don't get me started on vi. If you like using obsolete teletype editors the EDT teletype mode was better. Using vi is like trying to edit a file by casting spells. People don't use that type of program because its good, they use it because its bad giving the loser the opportunity to flame on /. about how people who say it sucks 'don't understand' 'are not worthy' and like patronizing bullcrap.
First programming job I had in a big company I was sat down in front of a Vt100 and shown how to run the EDT tutorial mode. Having spent the morning mastering line mode and thinking 'what a piece of crap' the next section of the tutorial covered screen mode...
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
You should *really* spend some time on Emacs. There is an *amazing* Zen type of relationship that you start to appreciate after about 2 weeks of using it.
In my experience, choice of text editor (within reason; Notepad is pushing it and edlin is right out) has no effect whatsoever on programmer efficiency, as long as the editor is familiar to the programmer. Programming languages are specifically designed to make fancy text manipulation unnecessary. Sure, occasionally they fail in this, and it's handy to be able to program complex text manipulation scripts, but there's no advantage to doing so within the text editor, especially if it forces you to learn a new private language.
However, when you delve into something with a complex, idiosyncratic keystroke interface like Vi or Emacs, you not only spend weeks checking the manual every 5 minutes, and years programming your editor as much as you edit your programs, you develop "editing reflexes" that lock you into that editor. Emacs got bigger and bigger because people want to spend less and less time outside it, not because they're so productive, but because typing anywhere else becomes immensely frustrating, because they have to slow themselves down and catch all the little Emacs tricks they would use.
"Try something new, it can't hurt!" "You can't judge it until you've given it a fair try over a couple of weeks!" If you really believe these claims, why not spend your whole life switching text editors, just to "be fair?" Learning Emacs is a big investment, and whether it makes you more productive or not, you won't feel like abandoning it after all that.
At least 99% of time spent editing programs is entering new text, reading text, and deleting/substituting text manually. Your choice of text editor will only significantly affect the other 1%, maybe enough to reduce it to 0.1%, but how much effort do you want to invest in that 1%?
I'm not saying that it's necessarily a bad idea, but it's something you want to consider carefully before you leap into it. You really can't try out an editor like this casually.
The rounds were stored as an unsigned 32 bit integer. It rolled over last night.
Seriously, XEmacs has been leading the FSF's GNU Emacs for a whole lotta years now, in terms of the object model, the GUI, and the packaging. What's new in GNU Emacs 21 to make it the new leader? And how long will it be before the XEmacs folks adopt the worthwhile new features?
The XEmacs/FSF Emacs split was the big project fork, for those of you who don't track Emacsen.
- jon
Ganymede, a GPL'ed metadirectory for UNIX
I asked my email-pal: "UNIX or Windoze?".
He replied "UNIX".
I said "Ah...me too!".
I asked my email-pal: "Linux or AIX?".
He said "Linux, of course".
I said "Me too".
I asked him: "Emacs or vi".
He replied "Emacs".
I said "Me too. Small world."
I asked him: "GNU Emacs or XEmacs?",
and he said "GNU Emacs".
I said "oh, me too."
I asked him "GNU Emacs 19 or GNU Emacs 20"?
and he said "GNU Emacs 19".
I said "oh, me too."
I asked him, "GNU Emacs 19.29 or GNU Emacs 19.34",
and he replied "GNU Emacs 19.29".
I said "DIE YOU OBSOLETE NOGOOD SOCIALLY MALADJUSTED CELIBATE COMMIE FASCIST DORK!" , and never emailed him again.
If you're not on somebody's shit list, you're not doing anything worthwhile.....
Takuo Kitame has put up test packages here.
Kitame's page was one of the major sources of "leaked" Emacs 21 during the pretest. (Someone wryly referred to it as "GPL warez", as I recall.) He eventually removed the pretest debs, but I used them happily for many months. Thanks, Kitame!
XEmacs has always been close to a superset of Emacs featurewise, so it is not likely many people will be able to point to a specific feature and say "that's why". However, both Emacs and XEmacs both has so many features, that only people with patological featuritis will chose XEmacs simply because it has more features. Most sane people will only let that be the deciding feature, if they really need some specific feature (like color in text terminals before Emacs 21).
Here are some real reasons most people use Emacs:
- Conservatism. Why switch when the existing solution work fine?
- Emacs is what most people hear about first, even XEmacs is often refered to as just "Emacs".
Here are some of mine:
- Emacs "feel" more coherent (both on a Lisp and UI level), probably because RMS has always been directing, even when someone else has been official maintainer. XEmacs has had different maintainers, and different parts have a different feel.
- I have submitted lots of small "scratch an itch" patches to Emacs, which makes it work better for me than XEmacs out of the box. (The big patches I also send to the XEmacs people).
- I trust Emacs to stay around because of RMS' dedication, and I like its role as flagship for the GNU project. I also like the historic significance, with RMS as the original author.
If you really want technical reasons, Emacs 21 will provide some. It's font model is stronger than XEmacs. It has limited Unicode support out of the box (XEmacs needs an add-on). I believe most of the GUI features are more elegant designed (if sometimes more limited featurewise) at the API level than for XEmacs.
xemacs was derived from emacs when JWZ (http://www.jwz.org/) found working with RMS impossible. You can read the story on his web site.
:-(.
It was originally called Lucid Emacs and was going to be a free portion of a commercial product. When the commercial product failed, it was renamed xemacs.
The biggest advantage is support of variable width fonts. If you want the text you're editing to look pretty while you're editing it, xemacs is the best.
I just wish it had MacOS X Cocoa support so the fonts would look beautiful instead of simply "better than boring old Courier". Sadly, I have not the time or talent to delve into something as complex as actually doing this, so about all I can do is wait until someone else does it for me
I agree with the people who mentioned that emacs has a stiff learning curve - I learned it back in the late 70s when there was nothing easier to use - but once you give it some time, it's by far the fastest and most efficient way to edit text; you and the text become one with the speed in which you can move around and do stuff. No GUI compares to emacs incremental search - type Control-S, type in characters, watch the cursor move as you type until you find what you're looking for.
D