Slashdot Mirror


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.

16 of 544 comments (clear)

  1. Emacs 21 is really a step ahead. by burtonator · · Score: 5, Interesting
    OK.

    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.

    1. Re:Emacs 21 is really a step ahead. by steveha · · Score: 4, Informative

      support for tooltips (I am working on an intellisense package)

      Great. Just don't call it "intellisense" because IntelliSense is a trademark that someone owns. MS had to pay money to Ademco (a burglar alarm company with "IntelliSense" brand sensors) to get permission to use the "IntelliSense" brand.

      Not to mention that if you go to intellisense.com you will find a MEMS company there.

      Don't pull a Killustrator! Call it something else.

      steveha

      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
    2. Re:Emacs 21 is really a step ahead. by steveha · · Score: 4, Informative

      Hey, if you want to code up a feature and call it IntelliSense, I'm not going to stop you. I am not a lawyer. But you would be running the risk that real lawyers would want to talk to you, in court perhaps, and that gets expensive in both money and time.

      It would be even worse to write features similar to the ones Microsoft used the IntelliSense name on, and call those features "intellisense". MS absolutely would send lawyers after you then. After all, they paid money to use that trademark; why should they sit idle when someone else uses it for free?

      And while you may not agree with me, I think it is common courtesy to not infringe on trademarks owned by other people. Microsoft can't add new features to Windows XP and call them the "Linux features" because Linux is a trademark belonging to someone else (Linus). If we want others to respect the trademarks we care about, we should respect the trademarks of others.

      Trademarks don't give you a right to ban words from conversation.. they don't give a right to the owning corporation to have a word redefined at will.

      Is "intellisense" a word? If MS "redefined" it, where was it first defined?

      As long as a certain meaning is understood to refer to a specific thing, then no qualification is needed.

      Are you a lawyer? Is this legal advice?

      steveha

      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
  2. If you REALLY want gtk, check this. by oGMo · · Score: 4, Informative

    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:

    • A few (very) minor visual bugs, most notably if you hide the toolbar, the minibuffer is too big.
    • No pseudotransparency. ;-)
    • The upgrade to 22 might outweigh the pretty visuals.

    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

  3. The Emacs Zen... by burtonator · · Score: 5, Interesting

    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

  4. Re:I'll switch to Emacs when I can fold text with by burtonator · · Score: 4, Informative

    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:

    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
  5. Emacs Turned Me Into a Real Programmer by goingware · · Score: 4, Insightful
    Early in my career I programmed because I was able to get a job doing it and it paid the rent. I didn't like doing it, I didn't make all that much money off of it, and I didn't write particularly good code either.

    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:

    There was something worth a damn someone can create by programming.

    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
  6. Lilo support by smartin · · Score: 5, Funny

    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.
  7. Stupid Slashdot... by susano_otter · · Score: 4, Funny

    That should be "GNU/GNU Emacs".

    [MODERATOR INSTRUCTIONS]
    +1 Funny
    -1 Overrated

    [/MODERATOR INSTRUCTIONS]

    --

    Any sufficiently well-organized community is indistinguishable from Government.

  8. Emacs 21 annoyances by the+Atomic+Rabbit · · Score: 4, Informative

    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!

  9. Re:There already IS gtk Emacs.... by Fly · · Score: 5, Informative

    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
  10. Re:Time for environment integration by Speare · · Score: 5, Insightful

    Want an editor for your new IDE? Drop in emacs.

    Some IDEs and desktop managers seem to be trying that out. The problem is that Emacs general set of key bindings really isn't designed for use a widget in a dialog box, or as a component in a larger application.

    The problem is sovereignty. Emacs assumes it is sovereign; that is, that it has the full attention of the user and everything the user does has some bearing on Emacs. Keystrokes involve the Meta (or Alt) and the Ctrl keys, so it's hard to find keystrokes that obviously fall outside the Emacs sovereign domain.

    Conversely, widgets are not sovereign, they are transient and flocking. Unknown keystrokes are usually passed up to larger and larger contexts, so that it's easy to navigate from one widget to another, or to select specific widgets from afar. Accelerators in a given window manager context typically use an obvious and consistent Alt or Ctrl scheme, which precludes mixing their use between Emacs-ish widgets and the greater context of a dialog box or application window.

    Emacs is nice when you want to use it AS the IDE, but Emacs within some other IDE seems to be like fitting a baseball stadium inside a football stadium: too much confusion about overlapping sovereignty, or too much orchestration to ensure only one context is being used at a time.

    Those are just my thoughts. I use whatever editor will let me get my job done the simplest way that will possibly work. Sometimes that's Emacs, sometimes that's vi, sometimes that's a WYSIWYG Rich Text editor.

    --
    [ .sig file not found ]
  11. Antinews by the+Atomic+Rabbit · · Score: 4, Funny

    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:

    • Emacs now provides its own "lean and mean" scroll bars instead of using those from the X toolkit. Toggle buttons and radio buttons in menus now look just like any other menu item, which simplifies them, and prevents them from standing out and distracting your attention from the other menu items.
    • The arrangement of menu bar items differs from most other GUI programs. We think that uniformity of look-and-feel is boring, and that Emacs' unique features require its unique menu-bar configuration.
    • Emacs 20 does not pop up a buffer with error messages when an error is signaled during loading of the user's init file. Instead, it simply announces the fact that an error happened. To know where in the init file that was, insert `(message "foo")' lines judiciously into the file and look for those messages in the `*Messages*' buffer.
    • Some commands no longer treat Transient Mark mode specially. For example, `ispell' doesn't spell-check the region when Transient Mark mode is in effect and the mark is active; instead, it checks the current buffer. (Transient Mark mode is alien to the spirit of Emacs, so we are planning to remove it altogether in an earlier version.)
    • Many complicated display features, including highlighting of mouse-sensitive text regions and popping up help strings for menu items, don't work in the MS-DOS version. Spelling doesn't work on MS-DOS, and Eshell doesn't exist, so there's no workable shell-mode, either. This fits the spirit of MS-DOS, which resembles a dumb character terminal.
    • The `woman' package has been removed, so Emacs users on non-Posix systems will need _a real man_ to read manual pages. (Users who are not macho can read the Info documentation instead.)
    • To keep up with decreasing computer memory capacity and disk space, many other functions and files have been eliminated in Emacs 20.
  12. Why prefer GNU Emacs over XEmacs? by jaffray · · Score: 5, Interesting

    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.

  13. The Emacs Trap by Anonymous Coward · · Score: 5, Interesting

    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.

  14. editor wars by bozo42 · · Score: 5, Funny

    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.....