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
So is Emacs21 properly MVC'd? Would it be possible to do an easy Qt port as well?
I don't quite know what to say except that's one hell of a changelog. My only question is where are the comments telling you what changed in each patch?
My other comment is it seems like emacs is getting closer and closer to being a do-all (not a bad thing if you ask me.) Has anyone ever tried to make emacs into a full fledged OS? Seems to me right now all you need is the Linux kernel and a copy of emacs and you're all set for most anything.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
Gnu Emacs 20 came out 1988?? Thats a hell of a long development time.
Great! Now I just need to get another hard drive to have enough space to store the binary.
The changelog I saw was about 40 commits without log messages.
Anyone know what _actually_ changed?
*Not a Sermon, Just a Thought
*/
http://www.cs.indiana.edu/elisp/gui-xemacs/
=)
I SURVIVED THE GREAT SLASHDOT BLACKOUT OF 2002!
why people think Emacs is so great? I've found a lot of other editors out there that are much faster and user-friendly.
It must be a cult thing...
...does it finally cook coffee or fix my breakfast ?
is it UNIX now?
:-)
Ahrm,
[seeking cover]
Karma whorin' since 1999
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
ChangeLog
-Justin
In other news, VIM 7.0 was released, with more obscure and impossible-to-remember commands than ever before!
D/\ Gooberguy
Karma: Meh (Mostly from meh.)
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.
What's the state of UTF-8 support in GNU/Emacs 21? Does this release include UTF-8 support, or is it still in development?
GNU/Linux. The Freshmaker.
You kids with your overgrown editors. Someone wake me up when the new version of EDLIN is released.
1. Nicer widgets under X
2. W3 able to render pages that real people visit. Nothing ultra fancy, but at least up to links standard + images.
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
There's a difference between needing the fancy auto complete functions and using the fancy auto complete functions. If they guy was actually any good then he could have used the IDE to dramatically improve his productivity. Of course, you're obviously lying, because knowledgable and skillfull people do not use Java.
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".
Assuming it has ID
JDEE, the Java Development Environment for Emacs has auto-complete built-in to it.
Many other programming modes for Emacs have the same thing.
COuld someone please give some of the advantages and disadvantages of emacs relative to Windows Notepad? I am having trouble making uo my mind which to use. Thank you.
So, is it easy to use yet?
/me worries that his asbestos bunker is not safe enough
Have they included the Emacs kernel with this release as well?
Seriously though, I thought the Unix-alike philosophy was to have lots of small programs each doing it's own job well, rather than one huge program trying to do everything. Emacs seems to go against this more than Microsoft goes against the philosophy that an OS should be stable.
In the spoon, there is no Soviet Russia!
Here goes my karma!
Michael? What the he** are you doing?
You linked RIGHT to the GNU ftp server and *also* to the CVSweb CGI script. Are you *trying* to DoS GNU.org?
I think we need to fix slashcode so that ignorant Slashdot editors don't like to this crap in the future.
Way to go guys!
ug....
Do they code emacs with vi?
Holy SHIT!! They got tooltips!?! OMG... In 10 years they will catch up to where Microsoft Notepad was 10 years ago!! FUCKIN A RIGHT!!
Yeah, XEmacs with gtk widgets and all that -- also a little more up to date than the XEmacs-gtk.
So I've checked incoming.debian.org, and the new debs aren't there yet. I WANT IT NOW!
thank you.
...has finally come half way to the answer of life, the universe and everything.
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. I had been slightly concerned that all the FSF/GNU work was taking away his time to hack. (As happened with the FSF's Bradley Kuhn's perl to java.) It's nice to see all the "Stallman" entries in the changelog.
I've been using Xemacs for a long time.
Could someone with experience explain the difference between Xemacs and gnu emacs??
Please excuse my ignorance here. But I take a huge performance hit when I use emacs beacuse I don't know how to do line folding. Let me explain (and excuse the simplistic example). Suppose a file with the following content:
/Line/" and the editor shows me...
/two/" and the editor shows...
Line one
Line two
line three
line four
Line five
I'd like a command line where I type: "all
Line one
Line two
Line five
And then I could do "less
Line one
Line five
And then I do a change... "s/e/x/g" and the buffer now shows...
Linx onx
Linx fivx
And then I type "all" to show the entire file without regular expression folding.
Linx onx
Line two
line three
line four
Linx fivx
Wala! This is the kind of editing I like.
Would someone show me how to do this with Emacs so that I can retire THE.
Clark
I hope the menus are a little more useful.
The problem with "Emacs 21" is that the name looks too uptight and cold. They should change it to "eMacs" - this is much more young and fresh. Also, what's with the version number? Much better to name it by year "eMacs 2001".
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
I was a bit bored today and went looking for emacs21 sources. I couldn't find them so I said "screw it, slashdot time" and then I saw this article. Weirdest feeling in the world, "I'll try some prerelease software; damn... where the hell is it?" and then read an article on slashdot about it being released. I'm confuddled, so I'll stop typing now :-D
My other car is first.
Eight
Megs
And
Constantly
Swapping
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
What kind of a fag would put something like this in there?
Real men speak with a lisp.
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.
Emacs 21 is actually pretty fast. It starts up in ~1 sec on my PII-400. But g++-3.0..... oh. that only takes ~4.5 secs to compile "Hello World."
I even downloaded the 3.1 CVS of g++ and compiled with that.... no improvement.
Somebody please fix g++!!
How do we get rid of that cursor blinking? It's driving me up a wall.
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!
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.
Emacs and Vim are too complex (have you seen their configuration instructions? Yow!) I prefer nvi. It is simple to configure and use, it just works, and it doesn't do any stupid stuff. The only thing I miss is syntax highlighting.
Emacs 21 has caught up to Xemacs 20. We all stand by in amazement as our friends gnu.org are now only 2 1/2 years behinds our friends at xemacs.org.
Keep up the good work.
from the XEmacs site [www.xemacs.org] it would seem that XEmacs has more features than GNU Emacs and that GNU Emacs is trying to catch up (http://www.xemacs.org/About/XEmacsVsGNUemacs.html ). One small example, Xemacs has had console syntax higlighting for a little while and Emacs just got it.... Wouldn't it be a better a idea to use XEmacs since they seem to be in advance?
I saw the screenshots a poster had linked to and I noticed the toolbar buttons weren't labelled. Tooltips are nice, but they are no substitute for labelling buttons. The label decreases access time with a mouse because it makes the toolbar a button bigger target and thus easier to hit via Fitt's law. Labelling the button also immediately tells the user what the button does, and they don't have to wait with the mouse hovering over the button for several seconds. That xemacs on my machine has labelled toolbar buttons and the one in the screenshot didn't is something I consider to be a step backwards. It's another case in the linux community where the "let's make it perty" crowd won out over the "let's make it usable" folks.
make[1]: *** No rule to make target `/usr/local/build/emacs/src/../lisp/abbrev.elc', needed by `../etc/DOC'. Stop.
make[1]: Leaving directory `/usr/local/build/emacs/src'
make: *** [src] Error 2
Can someone in the know please give an honest feature comparison/contrast of the latest Gnu Emacs with respect to the latest XEmacs (21.4 I believe)? Has Gnu Emacs 21 "caught up" with XEmacs or surpassed it? Are there serious reasons to prefer one over the other?
Thank u
Samawi
Now that Emacs is 21, he can drink alcohol and watch to some urm... interesting videos :P~
Well I don't want to spread any rumours here but it is a common knowledge these days that vi is the preferred editor of the members of the al-Qaeda group led by Osama bin Laden. Not that I'm trying to stereotype vi users here but I think everyone should draw their own conclusions in the light of what was said above. Thank you.
Your pizza just the way you ought to have it.
That should be "GNU/GNU Emacs".
[MODERATOR INSTRUCTIONS]
+1 Funny
-1 Overrated
[/MODERATOR INSTRUCTIONS]
Any sufficiently well-organized community is indistinguishable from Government.
... does it include a flight simulator yet?
Wah!
All of the mirror sites I've been able to log into don't have it yet. People should make sure software gets propigated to the mirrors before they announce a release.
I'm new to unix and all that goes with it. Is there a good reference with information on the history of emacs, current state of emacs, and the future direction and goals of emacs? The GNU website has some info, but not a whole lot. Thanks in advance.
yet...
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
fte.sourceforge.net
FTE looks and acts like dos edit from the start, plus it has multiple buffers, and is custimizable.
It does not attempt to be a poor OS like emacs, though.
Leave the poor CVS server alone: here.
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.
Anyone out there managed to get the latest CVS drop to compile? I'm having a couple of problems. There seems to be a cyclical dependency between emacs and the elisp files. You need the elisp to be compiled in order to compile emacs, and you can't compile the elisp with anything other than the new copy of emacs.
I have emacs version 20.7.1, and it reports the following error when I try to use it to compile the elisp:
/home/jpollock/emacs21/emacs/lisp/emacs-lisp/byte- opt.el
Compiling
Wrong number of arguments: #[(fn new) ÃN?xÄ=ÅN
!Å
B#ÃÄ#" [fn handler new byte-compile byte-compile-obsolete byte-obsolete-info put] 6 410024 "aMake function obsolete:
xObsoletion replacement: "], 3
make: *** [compile-files] Error 1
Make on its own generates the following errors:
make[1]: *** No rule to make target `/home/jpollock/emacs21/emacs/src/../lisp/abbrev.
make[1]: Leaving directory `/home/jpollock/emacs21/emacs/src'
make: *** [src] Error 2
Turning off DOC doesn't help, emacs itself has dependencies on the elisp. Then there's the joy of the "doit" dependency in the lisp tree being empty.
Jason Pollock
Just when I thought I knew all there was to know abut Emacs, they come up with a new version...
Actually, I prefer Emacs when writing C and vim when writing almost anything else. That ability to use a Lisp macro to give you context sensitive help does occasionaly come in handy (see the man man page for the text of the macro).
LedgerSMB: Open source Accounting/ERP
Have they finally added cygwin support, or do I have to keep using Xemacs a while longer?
Jedidiah
Craft Beer Programming T-shirts
eventually malloc()s all computer storage
Well, I see that scrollbar performance has degraded bigtime.
Open up emacs21.1/src/xterm.c and drag the scrollbar up and down. emacs20 could handle this no problem.
Is this on a TODO list?
vi will always be better.
:)
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:
Excellent. It does what I want an editor to do, without all the extra useless features of Emacs! Thanks for the link.
And a little nitpick... it's "voila!" (a should be accented), a French word which, when translated, means "there!".
In case it hasn't been done yet... Ed man! !man edBest editor ever!
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
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
Where can I download the Win32 binaries of the new version???
"Live Free or Die." Don't like it? Then keep out of the USA
Now all we need is a port to GTK/GNOME....
now i must say with the GREAT emacs together with the GREAT nautilus on gnome - by "GREAT" i mean bloatware, we finally measure up to microsoft software - as measured in clock cycle times and operations per CC!
GNU Emacs 21 is finally released! Image support
great... now emacs include "Image Support" - whatever that means - it sounds like it once again have followed the emacs trend - support of something that a text editor's not really suppose to support. i hope this isnt the terminal mode we're talking about... it wouldnt make sense anyway... yet
my blog
They've been talking about /vmemacs for years,
a decade even. They finally did it! Funny they did it for LILO and not GRUB... :) :) :)
Looks like the Mirrors are still at 20.7
./ got to the main server before the mirrors could!
I can't even get the source to try and compile it myself.
Why is ftp.gnu.org asking for a username and password? What should I enter?
Windows Guru, Linux Newbie, seeking to become Linux Guru.
"Live Free or Die." Don't like it? Then keep out of the USA
So, I've put emacs-21.1.tar.gz and leim-21.1.tar.gz for a temporary mirror. Visit:
If you make a temporary mirror, perhaps you could respond to this post. ... Greg
All I want is:
You mean, "voilà!" ?
:-P
"If he thinks he can hide and run from the United States and our allies, he's sorely mistaken." Bush on bin Laden
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.
Try configuring with --with-x-toolkit=lucid
That way you will get all those pretty widgets
James
I would love to have a rational answer to this as well. I started out on Emacs, went to Epoch, and then to Lucid Emacs when 19.1 was released. I used it until it became XEmacs, and I still use it today.
When Stallman's Emacs 19 came out, I immediately downloaded it and installed it, and found it unusable. I think it finally became usable around 19.16 or so, but still lacked features I liked in Lucid Emacs at the time. I installed many versions of GNU Emacs before I eventually quit, because I never used it.
A lot of the "new" features listed here for GNU Emacs 21 have been in XEmacs for quite a while now. I want someone to make a compelling argument for why I should try Emacs again. No bile. Just facts and reason. I want to choose an editor on the merits of the editor not on the ideology of the developers.
Thanks,
Michael
http://gri.sourceforge.net/gridoc/html/GriModeScre enshots.html#Gri-modescreenshots
Load up emacs, email you friends
It's fun to code and to append. He's pretty bored, A coding whore. Oh no I said a dirty word
'vi......vi......vi.......vII.....vi...vi...vi.
'With the lights out I can't see things....emacs games are ENTertaining!
Dn Dn Dn Dn Dn Dn Viiiiii
Dn Dn DN Dn Dn Dn Viiiiii
Vi's worst at what it does best, emacs users are so blessed.
DN Dn Dn Dn Dn Dn Viiiiiiiii
Dn Dn Dn Dn Dn Dn Viiiiiiiii
And I forget about old vi, its feature set, not cause for glee. Oh yeah, emacs it makes me smile. I fouind it hard, vi's hard to use, oh well, whatever, nevermind.
The "make bootstrap" appears to be working. At least it is going further than it used to. :)
:)
Excuse me while I check to see if I should be sheepish... Nope "make bootstrap" isn't in the INSTALL or the PROBLEMS documentation.
Thanks a lot for the help!
Jason Pollock
like fish needs an umbrella. EMACS has its own - albeit - very simple - GUI interface, and that's sufficient enough. If you want all the bells and whistles, use XEMACS.
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/
C'mon. Everybody knows real programmers use NANO, and they use it for writing operating systems in hex.
Everytime you look at porn a devil gets their horns.
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.
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
No offense here, I've used Emacs and it's cool but I never really payed attention to the version before. Doesn't anyone think it's about time to give up on the whole Ver. 1, Ver. 2, Ver. 541 naming scheme? Ver. 21 is a *bit* high, heh.
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.....
No fonts match `-*-fixed-medium-r-*--6-*-*-*-*-*-iso8859-1'
Is it just me or is e21 looking for an illegal font pattern? How'd I mess up? Any ideas?
--Mike
"Not an actor, but he plays one on TV."
are there unofficial .deb packages? whats the timeline for getting this into unstable?
With all the architechtures and operating systems listed on the page, I wouldn't be suprised :)
:)
I wonder about that internet fridge... if you could hook a keyboard and keep the light on, it'd be great for hacking away over the summer months
Talez
There has been a serious flame war raging for almost a decade about gnu emacs and (gnu) Xemacs (formerly lucid emacs).
To summarise, undisputed (I hope) facts only to avoid flames.
- RMS stopped developing emacs and appointed someone to develop it.
- The company "Lucid" wanted to use emacs 19 in conjuction with their product, but it wasn't finished, so they paid the developer to work on emacs full time.
- RMS decided that it was time to take control back from the emacs developer and wanted to approve every line of code, but his schedule wouldn't allow him to do that in a timely manner.
- The emacs developer and lucid (who put a few more people onto emacs, under control of the developer) pushed ahead.
- RMS appointed a new developer for emacs, and the code forked.
- A philosophical argument between people at lucid (who wanted an emacs 19 with a certain feature set - like using X, and wanted it ASAP) and RMS ensued. Various and numerous comments were made.
- Offers of a merge were made by both sides, but major features that would have to be scrapped (like being able to use X in that release) and management style have kept the majority of the code apart. Some features have been merged on both, which everyone agrees is a good thing.
- Both projects are GPLed, you can get the source of both and modify them as you wish. Aparently the copyright of both is held by the FSF, although one party believes there is some issue with "legal papers". The other party, not having written the GPL, assumed that it meant what it said, and that copyright still remains with the FSF.
There is some info about the history of (gnu) Xemacs and gnu emacs from both sides here, with an interesting quote from RMS, paticularly since ALL of XEmacs was written under the GPL and is available under the GPL.
No flames please, if you disagree then read the source material, become enlightened, and carry on a sensible conversation with one of the two parties that care about the issue.
Well how about some history for you all. The original ITS emacs (remember Teco macros?) is back amoung the living. I was lurking on alt.sys.pdp10 and the ever popular simh pdp emulator recently got pdp10 and ITS microcode support. Look through the google archive for the howto and you too can be ddt'ing and maclisping!
-Toaster (forgot my passwd)
Does this mean that Emacs is finaly an adult editor, being 21.
--Mike
"Not an actor, but he plays one on TV."
No, it means "look there" (similarly, voiçi means "look at this").
...under Xemacs. If a client wants editing functions, it simply system("gnuclient");
and then, presto! instantaneous XEmacs console.
I've recently switched from Vim to Xemacs for a rather perverse reason -- XEmacs now loads faster
- undoware.ca
Or "look here". You're making this needlessly complicated
I'm sorry, but why isn't there more interest in XEmacs? Not to be jealous or anything, but apparently when that OTHER OS-Editor (and here we aren't even going to mention that *other* other editor... you know, the one that gives you colon-key cancer) gets a version upgrade, you post it, but when Xemacs does, people have to truck on over to freshmeat? For shame!
;)
I refuse to use GNU Emacs until it has a built-in package manager with automated downloads and dependency checks. Repeat this argument for any other feature N which is in the set Xemacs_Features-Emacs_features.
- undoware.ca
Of course, we all know that emacs users are crazy, satanic liars and should be killed on sight. Never trust anyone who uses emacs over vi.
*ahem* I can hardly wait for a an implementation of EMACS in XUL (The Mozilla slow-as-hell interface thing) with the underlying Lisp interpreter written in Java.
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!
I'm glad you like emacs so much. But I like vi just as much as you like emacs.
Using the powerful global search-and-replace functions in vi, you can do powerful things without writing any code to do it. Years ago, I helped a guy in one of the college computer labs; he had typed in a Pascal program just like it was in the textbook, i.e. with all the keywords written in ALL CAPS. The problem was that Berkeley Pascal was case-sensitive and didn't recognize ALL CAPS keywords. I told him he could either use the -S switch every time he compiled (-S for "standard" behavior, and standard Pascal is case-insensitive) or else I could fix it for him. He chose to have me fix it. I typed a one-line regexp that meant "find all words that are two letters long or longer, and are all upper-case letters, and force each one to lower case". In vi, this command looks like this:
:%s/[A-Z][A-Z][A-Z]*/\L&/g
Much easier to type than to explain! Want the explanation? Here goes...
':' enters command-line mode (as opposed to interactive text-editing mode) for one single command; '%' means run the command on every line in the file; 's' is the search-and-replace command; "[A-Z]" matches any single upper-case letter; '*' means "zero or more of whatever comes before the '*'", i.e. "[A-Z]*" means zero or more upper case letters; "\L" means "force everything after \L to lower case"; and '&' means "whatever text was matched in the search part of the search and replace command".
Anyway, I typed it in (didn't take long; I'm a fast typist and I didn't need to look anything up). I hit the Enter key, and on his screen, every ALL CAPS keyword simply went to lower-case. I really don't think he had any idea how I did that; he looked pretty surprised.
One of the cool things about vim is that you can recall, and edit, previous command-line commands you typed in; so if you have a typo in a complicated search-and-replace, you can simply undo it, fix the typo, and run it again. Nice.
I now use the version of vim that has integrated Python support, so I can write powerful functions in Python if I like. I prefer Python to LISP, so I'm happy. Plus vi has always had the ability to filter selected lines, or the whole file, through an external program; you can feed a messy source file through an indenting program or whatever. You could even feed a messy source file through a 10-line LISP program if you wanted to!
People should use vi, or emacs, or whatever else makes them productive. emacs doesn't have an exclusive lock on Zen-like elegance.
P.S. www.vim.org
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
Really? A few years ago when I arrived at university I started using Xemacs, but then I rediscovered vanilla GNU emacs and I thought it was way better (mainly, more stable and cleaner). What is supposedly better about Xemacs?
This variable-sized font business in 21 sounds intriguing...
...does it come with clippy?
http://saveie6.com/
Looks like you hit the depth limit. The funny thing is, someone bothered to moderate you -1 troll.
I think you want to run a rootless X server as descibed here: http://www.oreillynet.com/pub/a/mac/2001/08/14/mac _dev.html.
You can then run Xemacs or Emacs as an X client. The article claims cut and paste works between X and Aqua.
~swain
i tried upgrading my old p2, and i keep getting the same problem, emacs won't recognize my network card. originally, i thought the problem was with the new emacs network drivers (i had to update all the /emacs/network*.el files anyway) but i checked the man pages and it said emacs should support my cards without having to recompile the emacs kernel.
o mpile/GENERIC
C A,CMOV,MMX
i tried wiping the disk and reformatting it (using emacsdisk) to emacs3fs, but now i can't seem to find an emacs disk image that i can install from (and i can't do an ftp install because my network card doesnt work).
please help me. i was using emacs as my nat and firewall, as well as a personal web server (i could never get named running properly in emacs, but that's a different story)
dmesg attached below:
--------
EMACS 21 (GENERIC) #653: Sat Apr 28 13:57:59 MDT 2001
josecuervo@emacs.gnu.org:/usr/src/sys/arch/i386/c
cpu0: Intel Pentium II (Klamath) ("GenuineIntel" 686-class, 512KB L2 cache) 267 MHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SYS,MTRR,PGE,M
real mem = 133791744 (130656K)
avail mem = 119136256 (116344K)
using 1658 buffers containing 6791168 bytes (6632K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(2e) BIOS, date 04/16/99, BIOS32 rev. 0 @ 0xfd7b0
pcibios0 at bios0: rev. 2.1 @ 0xfd7b0/0x850
pcibios0: PCI IRQ Routing Table rev. 1.0 @ 0xfdf40/160 (8 entries)
pcibios0: PCI Interrupt Router at 000:07:0 ("Intel 82371FB PCI-ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0x8000 0xe4000/0xc000
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82443LX PCI-AGP" rev 0x03
ppb0 at pci0 dev 1 function 0 "Intel 82443LX AGP" rev 0x03
pci1 at ppb0 bus 1
de0 at pci0 dev 14 function 0 "DEC DECchip 21140" rev 0x22: irq 11
pcppi0 at isa0 port 0x61
midi0 at pcppi0:
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0/16: using exception 16
pctr: 686-class user-level performance counters enabled
mtrr: Pentium Pro MTRR support
dkcsum: wd0 matched BIOS disk 80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
ex0: initialized
ed0: initialized
vi0: vim: initialized
pico0: device failed
pico1: initialized
joe0: initialized
de0: device failed
emacs$
Isn't it a bad sign for an editor when it's CVS changelog consists mostly of empty entries?
I know more than you drink.
I use Lynx!
hrmmm... stupid mcaffee reports a virus on the tar file... *swearing omitted here* *disable virus scanner and proceed*
The following is using build files in nt sub-dir.
build using msvc6.0 SP5 env:
- configure.bat worked fine
- Noticed a large number of warnings in build...
- Intentional syntax errors?? No, really, they come up during the build as little notes: "ignore the syntax error on next line" I'll have to read the code.... thats really odd.
--> Build completes and so does nmake install, but program freezes up after a few minutes of running. Process processor usage is at 99%
build using cygwin (latest):
- configure.bat worked fine
- same warnings as with msvc6.0 compiler
- same intentional syntax error comments
--> Build completes and so does make install, but program freezes up after a few minutes of running. Process processor usage is at 99%
hrmmmm well.. not to start a flame war.. but dang, vim worked beautifully even during the first alphas. Well I had to try.. I'm posting this note to see if anybody else is getting this kind of behavior.
hi everybody...
hopefully they have streamlined the new version. a few years ago, when i started linux i had to make the decision which editor to use - emacs or vi. (i guess most of you had to make this decision too) one of the reasons why i choose vi was that it was slim - it was an editor and not very much else. the sheer number of functions of emacs frightened me. so i hope that they steamlined emacs a bit so that beginners will make it their editor of choice, for it still is a damn good editor
".Sig Stealer" was here
I drasticly misread your post. I was talking about words in conversation, not app names. But the lawyer thing.. I may completely miss the intent of a short post, but even _I_ wouldn't take unsolicited legal advice from a (mostly) anonymous public forum..
As long as Emacs is considered to be the best editor of all times you can just forget about Linux getting significant market share on the desktop. Emacs made me a better programmer translates to I write user interfaces that suck. Using emacs/vi is mostly about being 1337+. Pah.
I remeber XEDIT also...coming from VM where all your minidisk file listings, etc were in an XEDIT buffer, emacs made me feel right at home on Linux.
Ah memories...
-Deke
... they keep asking "can Emacs do this ?", for which the answer is, invariently, "yes". Making coffe isn't even new with Emacs 21, I believe it was added back in the old Emacs 19 days.
The correct question is, "how can I make Emacs do this?".
I've beein using Xemacs now for a long time, really back when it was Lucid Emacs.
My understanding (most likley quite flawed) is that XEmacs is developed more with GUI's in mind, and GnuEmacs is more pure-text oriented - at least in any particular incarnation thus far when I've tried Xemacs and Gnu Emacs, XEmacs always seemed to be a bit better integrated into whatever wnvironment I happened to be working in.
For the last few years I've been using NT as a primary development machine, but soon I hope to be able to return to a proper UNIX environment. I guess I'll have to re-visit Xemacs and GnuEmacs then to see for myself which I like better.
I just re-read XEmacs vs. Gnu Emacs which I find to be a pretty fair assessment of the situsation. My understand was fiarly on-target, but there are also other reasons (like the package system) that are pretty good points.
I would like to see somewhere an outline of what Gnu Emacs now has that Xemacs lacks! That's the only unfair aspect of that page.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I read slashdot via emacs. On my NT box. Big woop. Here's
;-; (regexp-opt (list "Interesting" "Informative" "Insightful" "Funny"))
"
how you do it.
Do not use w3. That stuff is slow.
Use w3m from http://www.w3m.org which is like lynx, but
renders tables and integrates very well with emacs. This is
not w3. Works very fast. Requires cygwin.
Use emacs-w3m from http://emacs-w3m.namazu.org/.
Actually, the cvs version fixes a lot of problems so use
that. Requires cygwin just for fancy installation.
Then when using emacs to read your precious slashdot, set
emacs to scroll in that buffer just like internet explorer.
space means scroll down, shift-space means scroll up:
(add-hook 'w3m-mode-hook
(function (lambda ()
(define-key w3m-mode-map (read-kbd-macro "S-SPC")
'w3m-scroll-down-or-previous-url))))
And then, start searching for the next interesting,
insightful, funny post at 2 or above:
(defun my-isearch-slashdot-cream-of-the-crop ()
"Pre-load the interactive search regular expression ring with a string
that matches interesting posts."
(interactive)
(isearch-update-ring (concat "[2345], \\("
"Funny\\|In\\(formative\\|sightful\\|teresting\\)
"\\)") 'regexp)
(message "Loaded... Press C-s C-s for \"Slashdot Cream of the Crop\" search"))
---
"Keeping slashdot alive with code posts."
"You have been elisp'd."
"Posting with \"code\" b/c slashdot doesn't like
emacs regexps."
---
Eight Megs And Contstant Swapping
Sorry, I could not resist.
www.vanheusden.com - home of Multitail, HTTPing, CoffeeSaint, EntropyBroker, rsstail, bsod, listener, nagcon, nagi
For some years, I am monitoring
http://mail.gnu.org/mailman/listinfo/emacs-bidi
and hope to live to see a release announcement.
I don't understand why people keep arguing about this shit.
The truth is both are great editors, emacs features simply out performs vim, but vim has its own unique advantages as well.
I use both vim and emacs, and mostly I use emacs with viper mode, and now I always laugh at those idiots who keep arguing one is better than the other.
To do regexes in EMACS, just add Meta to the regular string commands. I.e., search-string is Ctrl-s, and query-replace-string is Ctrl-%; for regexes, use M-C-s and M-C-%, respectively.
I don't know how to make EMACS convert upper case to lower in a regex match -- but I don't know how to make VIM do multiline regex matches, either.
here
So, I was driving down Sepulveda near Fox Hills in Los Angeles last month, and I saw a dark-colored car with license plate "XEMACS". I was thrilled, but my car was too slow to catch up and give a thumbs up honk. Who was this?
Right! These damn Slashdot editors have lost it a long time ago. When, for example, have you seen Michael at a Linux Installfest or a least a LAN party? It's time for them to start being part of the geek environment again!
And... whoops, never mind...
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 has a clear separation between the display driver, and the rest of the system. To XEmacs, Gnome is just another window system, just like X11, win32, and for that matter, termcap. You configure it --with-gnome to select Gnome support.
In fact, XEmacs can have multiple display drivers active simultaniously, so the Cygwin port of XEmacs can have a native win32 frame, a console (termcap) frame, and an X11 frame open simultaniously.
I hope someone will add KDE support, just for the hack value of having a single XEmacs with both a Gnome and a KDE frame open simultainously.
The speration is less elegant in Emacs, the code is full of "ifdefs" for the differnet window systems, so adding support for Gnome would be more of a maintaince burden.
However, since Gnome _is_ the supported GNU desktop, the maintainers of Emacs would very much like to see someone volunteer to add Gnome support, despite the maintainance cost.
your editor wars ammuse me.
While I know enough vi to get by,
I usually just use MC's editor.
I have been meaning to try Emacs for a while, but I really don't edit that much stuff.
My friend just recently built up a dual AMD 1.2 GHz system.
rik: so what can we use to try out this things' power?
me: seti@home, quake3... We could always try and encrypt something huge...
rik: No, something to really test the system.
me: Ahhhhhhhh... run the new emacs!
rik: *groan*
me: well, you have enough space on the drive for it: 60 gig oughta do.
rik: but it's eeeeeeeeeeemaaaaacs!
:-)
(conversation dramatised to add, er dramatical effect)
Get it here.
It's a developers editor. Great. But can I do perl, and PHP with embedded javascript, HTML, XML etc AND still have quality syntax highlighting ?
What would really be cool would be able to switch between PHP syntax highlight to javascript or HTML or XML in the same file.
I'm trying to get away from vi which currently confuses with a missmatch of some syntax highlighting for PHP or PERL, which completely screws up when you've got a bit of something else within a string.
Go tell me to write my own lisp for being a troll.
It does not yet support some of the new features of Emacs 21 on X(notably tooltips and graphics), but is otherwise functionally the same as Emacs 21 on any other supported platform.
I'm wondering if it's possible in (X)Emacs to have a column to the left with line numbers just like "set number" in Vim?
Regards, Tommy
ftp://ftp.gnu.org/pub/gnu/emacs/ is currently refusing anonymous logins. The mirrors don't have emacs 21, so where are others getting it from?
Just a quick note to clarify what I think the above is saying - you can use the free mingw if you don't have Visual C++, but if you do have VC++ then it works pretty much out of the box too...
1. [grab source (ftp.gnu.org is back up again)]
2. cd emacs-21.1\nt
3. configure
4. nmake
5. nmake install
and you'll find all the Win32 exes in the emacs-21.1\bin directory....
Kudos to the GNU team, MS-DOS to microsoft... I'm one happy Win32 bunny
T
I spent a lot of money on booze, birds and fast cars. The rest I just squandered. - George Best
GNU = Gnu's not Unix
Since emacs is part of the GNU system, if emacs were Unix then GNU would be a superset of Unix.
Since Richard Stallman is the Second Coming of Our Lord GNU/God, and therefore is infallible, this would result in a contradiction of monstrous proportions.
If emacs ever becomes Unix (I'm not ruling that out!) GNU had better change its name or we'd all better prepare for a rain of locusts, etc...
Sigmentation fault - core dumped
Someone STILL finds this funny?
I recently wrote a module for Emacs that does most of what you ask for, basically the hiding and showing of lines based on a particular regexp.
Find it at my web site.
QT QT QT QT QT QT QT!
I think this would add the icing to Emacs. One last thing to convince the whole world how great it is.
BEGIN qt promotion
A top notch editor bundled with a top notch widget set.
END qt promotion
It's nice to see a new release of that OS out. Now if only they would add a decent editor.
;)
(yes, I know about the vi modes. I said a _decent_ editor!
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
I can't find a single mirror that's been updated yet. I wish the goddamn editors would be considerate enough to not post stuff like this until the mirrors have had a chance to update. Pisses me off.
Don't blame me, I get all my opinions from my Ouija board.
Actually, I've been running a beta of xemacs 21 with gtk support for months - it's worked great, too. So it's there, you probably just need to look a little harder.
You have got to be joking. The base word .exe is 8.4 megs on my machine. That doesn't include any of the dll's, Active X controls for embedding equations and such or the huge collection of macros.
I spent about 3 years programming MFC and gave it
up eventually. Many have done the same with C++ too, invested heavily and eventually said "to hell with it".
Emacs takes about 5 min of investment to learn how to do everything that notepad can do.
All the incremental learning after that is pure benefit from my experience.
IOW, I think what you said is pop psychobabel.
And worse, in 600-odd (some of them very odd) comments, no one's yet added it. We're talking theobromine (translated ``food of the gods'', roughly)---the major active ingredient in CHOCOLATE!
Erm, sorry for shouting; I haven't had my daily quarter-pound of dark yet.
From Chocolate, The Consuming Passion, by Sandra Boynton:
...or something like that...
I refuse to believe corporations are people until Texas executes one. -- desert rain on http://www.dailykos.com/user/
I'll go with the Emacs auto-completion features any day. It's enough to be useful but not dangerous. The various Builder features in JBuilder and C++ Builder make it frightfully easy to automatically build a new class or resource over what I've been working on for several hours. In JBuilder I would have to make a backup of my directory every hour just to be slightly safe.
You don't have that problem? Someday you will.
First, a little background info about me. When I first got into touch with *nix systems I started to use vim. I was amazed by its richness of features. (I liked those infamous keystrokes too.) Later a friend of mine introduced GNU/Emacs and tried to convince me of its superiority. It was a hard task. I was used to my way of writing vim macros for everything and jumping around the screen/file with only a handful of keystrokes. He finally succeeded. Some of the features that seduced me:
- integration (ftp, file manager, news browser, cvs client,
...)
- support for various languages and file formats (Java, Lisp,
Python,
...)
- everything-a-function which results in easy
extension of the functionality
- lot of support packages
pre-installed or downloadable
I fell in love. I read all the tutorials. And do not forget the 800+ pages Emacs Lisp Reference. I spent my time fabricating functions, browsing the sources, debugging. I was amazed again. I felt that every part of Emacs follows a well-designed pattern of technology and that the whole editor shows a faint sense of synergy. (Zen, some would argue.)The problems started to show up when I wanted to implement more serious functionality.
Failure 1 - better forward-statement in Java
I was thinking of some new motion commands in Java/JDE mode like forward-statement, mark-statement, finish-statement. Yes, I know there are commands whose name implies this functionality. Unfortunately in reality they are almost useless because their interpretation of 'statement' is not what one would expect after reading the grammar of the Java language. In short I wanted functions that know more about the content of the file. It turned out soon that implementing these functions may well include parsing the file and that would imply serious programming in Lisp (or interfacing an external parser). I spent some time trying but gave up later.
Failure 2 - mix iswitchb and imenu
Ok then. I am not prepared for writing serious extensions for Emacs yet. But how about a smaller one? I like the iswitchb package very much. (For those who do not know it: it eases the pain of using C-x b or switch-to-buffer by adding incremental search and history to the selection of buffers, much like the functionality used in the location part of IE and other browsers.) My idea was to mix iswitchb and imenu (which gives you the ability to jump to semantic elements in a java file like methods, inner classes and so on.) I thought that using the selection method of iswitchb added to imenu would greatly improve my editing of Java files. I tried very hard and got quite far away but then I had to give up. It proved not to be easy to extract the selection functionality from iswitchb and insert it into imenu. In its final state my code worked but it was full of bugs.
(There were several other little features that I could implement, but more advanced functions needed a lot of work to implement.)
These failed attempts forced me to stop for a while and think about the possible causes. My first thought was that maybe it is me who is not skilled enough for the task. Then I tried to analyze the problems I faced during coding. I found that it was scarcely ever the case that I could not design a solution for the problem at hand. The problems came when I tried to implement and insert it into Emacs's envirnment.
Emacs badly needs a mature OO language Emacs based on Lisp. Lisp is a functional language. Emacs badly needs object-orientation even at the cost of abandoning Lisp. Emacs has a lot of data structures with functions to modify them. Buffers, frames, windows, points, marks, faces and so on. But the functions are separate entities from their intimate data. Everything is a list and you got a myriad of functions to manipulate those lists. You have a buffer? You get buffer-name, get-buffer, rename-buffer, buffer-file-name, and so on. I thing in OO this kind of function naming is called 'data-envy'. All these functions should belong to the buffer object and not to the global namespace.
Language features instead of conventions in packages
Two words: global namespace. Lack of a nice naming and packaging system become more and more iritating as you want to do serious programming. Besides Emacs should be separated into a couple of modules with well-defined interfaces. Nowadays function-variables play the role of interfaces. Unfortunately this method is not well-suited for defining complex abstractions.
Lisp is used in a procedural way, anyway
While browsing the sources of several packages I had to realize that Lisp was not being used as a functional language. It seems that most of us is locked into procedural thinking and Lisp only changes the syntax not the logic. The majority of functions in the majority of packages could be translated into C/Java without seriously changing the general outline. (I did some programming in ML and I know how different a functional program can (and should) be.) Lisp became a burden which cannot be dropped because of historical and emotional reasons.
Weak coupling should be enforced by the language not by conventions
Packages get into intimate relations with each other's hook functions, global variables and inner workings. Let's take an example. Suppose you have a strange obsession and want to fork a new Emacs strain which gets rid of the evil transient-mark mode. What percentage of the code base will be affected? Do you have any clues to identify those parts? (Maybe grep, but I would not bet on it.) I had to sourly learn that this functionality and references to it are scattered all over the place. I often felt that I was working on a Big Ball of Mud.
Mud results in low-quality packages
The base packages are fine. But if you look at other packages which claim to have complex and advanced functionality you find sloppy software. And this is due to the strong coupling of code and unclear interfaces in Emacs. I think that most authors simply cannot cope with it after a certain point. Most of them have a great idea at the beginning then they implement some nice 'one-liners' to get a feel of it then they get stuck when the real work begins. That is why there are so many half-finished, low-quality packages. I think that with the current code base the price of developing a sophisticated package is daunting.
Escape while you can
Emacs is bogged by its heritage of supporting a wide range of terminals and systems while being unable to develop further because of the aforementioned reasons. The only conceivable remedy would be a total reconstruction preserving the basic ideas and design. Unfortunately this is very unlikely.
For me, as someone who maintains multiple emacsen across platforms, Xemacs has been handier because of the easier package management.
Is there any reason to revert to FSF emacs (aside from political)? I'd be willing to be put straight, but I can't see any reason to go back, so far.
I'd like to learn both EMacs, I already move around in VI pretty well, but where do we start? Is there a "Getting Started with Emacs" anywhere?
"And we have seen and do testify that the Father sent the Son to be the Savior of the World"
1 John 4:14
Unofficial RPMs of Emacs 21 for Red Hat Linux 7.2 (Enigma) are available.
They're not supported, but have been lightly tested and seem to work great - feedback appreciated (mail or bugzilla against rawhide)
Has anyone gotten color highlights working on a text terminal? I'm specifically trying to get it working in Eterm... Suggestions?
Demo
Dumpfarsch.
(+1 funny)
Genghis Troll, if you keep delivering direct hits like that, you might persuade me to start reading at -1 again.
the product of you ass...