Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Software GNU is Not Unix Programming IT Technology

Emacs Hits Version 23 367

djcb writes "After only 2 years since the previous version, now emacs 23 (.1) is available. It brings many new features, of which the support for anti-aliased fonts on X may be the most visible. Also, there is support for starting emacs in the background, so you can pop up new emacs windows in the blink of an eye. There are many other bigger and smaller improvements, including support for D-Bus, Xembed, and viewing PDFs inside emacs. And not to forget, M-x butterfly. You can get emacs 23 from ftp.gnu.org/gnu/emacs/ or one of its mirrors; alternatively, there are binary packages available, for example from Ubuntu PPA."
This discussion has been archived. No new comments can be posted.

Emacs Hits Version 23

Comments Filter:
  • by Anonymous Coward

    Shit, these days VIM requires no less than 30 megs....

    • by Lord Bitman ( 95493 ) on Thursday July 30, 2009 @05:49PM (#28888927)

      at least in VIM, random typing can accidentally put you in a useful mode.
      Emacs starts in some sort of.... okay, I typed "useless scratchpad thing" here, then went to see if anything had changed since last I tried it. What fun! Here goes "Attempt #4 at actually using emacs"

      $ sudo apt-get install emacs22
      $ emacs

      Oh look, I'm in a GUI this time. Hm, I expected to get a useless scratchpad thing, but it looks like instead I'm in some sort of crudely-made slapped together temporary menu that they'll replace with something more sensible in the final version.

      Oh well, there's a standard "new file" button in the corner, I'll click that.

      Alright, now the bottom of the window says "Find file: ~/"... okay, I guess that wasn't it, I'll try through the menu instead.
      File... "Visit new file"? Are you serious? Okay, fine, they're hippies, whatever.. I'll just click it.
      oh, "find file" again.. I don't want to find a file, I want a new file.

      Yeah, I get it, I'll stop playing dumb now. It's using 1970s technology or something so it needs a filename before it can edit anything. "emacs foo" opens as expected, lets me type normally and clicking the save button saves.

      Now how do I use the console?
      man emacs /console
      nope.. /terminal
      nope..

      I'll force it:
      DISPLAY= emacs

      press C-h for help.. and C-h actually works this time! Though only once.. better than last time though. May actually be usable, I'll give it credit.

      Emacs works better than it did last time I tried it. Still looks like crap, but it seems to be working, for the most part.

      • Re: (Score:3, Informative)

        by __1200333 ( 1200333 )

        I hope you're joking. About everything. Maybe you're even making some convoluted commentary about vim being impossible to use without knowing its secrets (but I think emacs is also guilty).

        1) you can save directly from the scratch buffer
        2) emacs --help clearly says use -nw for text mode (it's obviously also in the man page, but a little harder to find)

        Maybe attempt #5 will work out better for you. I'm on attempt #3 myself. Perhaps try growing a giant unkempt beard or something. Good luck to both of us!

  • But... (Score:5, Funny)

    by Brian Gordon ( 987471 ) on Thursday July 30, 2009 @03:30PM (#28886549)
    Does it run Linux?
  • Congrats! (Score:5, Insightful)

    by just_another_sean ( 919159 ) on Thursday July 30, 2009 @03:30PM (#28886553) Journal

    Thanks RMS for Emacs, the GPL and the spirit of GNU that I found in 1995 and has not left me since!

    Happy Hacking!

    • Re: (Score:3, Informative)

      by Hammer ( 14284 )

      This is good news indeed

      Thanx RMS for more than 20 years w the only editor

    • Re: (Score:3, Funny)

      by speculatrix ( 678524 )
      the scars won't heal till you stop!
  • by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Thursday July 30, 2009 @03:33PM (#28886579) Homepage Journal

    The summary misses the absolute best new feature: the separation of the client and server. I have a GUI Emacs running on my workstation, always. I sshed in a few days ago, wishing I could access one of its buffers. Voila! emacsclient -nw connected to the underlying server and gave me full access, in console mode, to the running Emacs. Thank you! Thank you! Thank you!

    • by Brian Gordon ( 987471 ) on Thursday July 30, 2009 @03:38PM (#28886677)

      The system goes on-line August 4th, 1997. Human decisions are removed from strategic defense. Skynet begins to learn at a geometric rate. It becomes self-aware at 2:14 a.m. Eastern time, August 29th. In a panic, they try to pull the plug.

      I never thought I'd see the day that a text editor needed a network-aware client-server architecture.

      • Re: (Score:3, Insightful)

        It's not just a text editor -- emacs is a full-fledged IDE with modules for virtually every kind of work (and recreational facilities too)!
        • by Haeleth ( 414428 ) on Thursday July 30, 2009 @05:19PM (#28888439) Journal

          Emacs is not an IDE. That term is limited to one type of work (development), while Emacs is good for pretty much anything that involves working with text. "IDE" also conjures up images of endless busy toolbars and wizards and snapins and docked windows and proprietary file formats and non-standard tools everywhere you look, while Emacs provides a single interface (the buffer) and builds on standard tools and file formats.

          I'd call Emacs an "operating environment". That covers its ability to provide a unified interface to most tasks, while acknowledging that it doesn't replace the operating system (Emacs is crippled without some flavour of GNU or UNIX behind it.)

      • by Brett Buck ( 811747 ) on Thursday July 30, 2009 @03:57PM (#28886997)

        I don't know why someone modded this "Funny"! Well, actually, I do - because there's no tag for "Scary"

              Brett

        • Oooh, scary post you've got there.
        • When you say "scary", do you mean scary as in "scary that people are still making the same unfunny Skynet comparison"? Jesus Christ, why don't they make a reference to being "The Weakest Link, Goodbye" while they're at it.
      • by oGMo ( 379 ) on Thursday July 30, 2009 @03:57PM (#28887015)

        "Haw haw a text editor that duz stuff, we here around these parts just use NOTEPAD.EXE"

        Yawn. Tired jokes that aren't funny anymore.

        Text editing, text processing, and generally manipulating anything involving language---especially natural language---is the most complicated thing that's ever done on a computer. Yet people---even supposedly knowledgeable people---demand stupidly broken tools that lack sophisticated tools for doing a sophisticated thing. When you understand this, jokes about "ha ha your text-editor-operating-system does X" aren't funny. It makes you wonder why other text editors don't do things.

        • Re: (Score:3, Insightful)

          by VJ42 ( 860241 ) *

          "Haw haw a text editor that duz stuff, we here around these parts just use NOTEPAD.EXE"

          Yawn. Tired jokes that aren't funny anymore.

          Text editing, text processing, and generally manipulating anything involving language---especially natural language---is the most complicated thing that's ever done on a computer. Yet people---even supposedly knowledgeable people---demand stupidly broken tools that lack sophisticated tools for doing a sophisticated thing. When you understand this, jokes about "ha ha your text-editor-operating-system does X" aren't funny. It makes you wonder why other text editors don't do things.

          "Perfection is achieved perfection not when there is nothing left to add, but when there is nothing left to take away" - Antoine de Saint-Exupery

          An application should do one thing and do it well, not do a gazillion things in a mediocre way*. Otherwise what's the point in running separate apps, why don't we just build all the functionality you'll ever need straight into the OS, it'd sure be faster that way.

          *I'm not implying that emacs is mediocre just stating general principles.

          • by SuperKendall ( 25149 ) on Thursday July 30, 2009 @06:45PM (#28889719)

            An application should do one thing and do it well, not do a gazillion things in a mediocre way

            That is exactly what Emacs is.

            It's not one giant monolithic thing, at all.

            Just like UNIX it's a core in which you can write very specific modules to address some aspect of editing. Perhaps it's formatting C style code. Perhaps it's a variant built around C++ or objective-C in particular. Perhaps it's a bit of logic to sort some parts of a file based on criteria in the file - or by running a shell command.

            Each of these pieces can be tied to any particular file type, or called on at will. You can easily write your own, in elisp (basically a LISP variant). All of the standard behavior is also written in elisp, so you can modify or extend it as desired (most things have many points in which you can insert behavior hooks)

            Never has a program more dearly held to the concepts you espouse, and it's actually the core of why I think people who prefer emacs over VI do so.

        • by Anonymous Coward on Thursday July 30, 2009 @05:27PM (#28888593)

          Text editing, text processing, and generally manipulating anything involving language---especially natural language---is the most complicated thing that's ever done on a computer.

          Yup, you're an Emacs user alright.

        • by RAMMS+EIN ( 578166 ) on Thursday July 30, 2009 @05:32PM (#28888661) Homepage Journal

          No kidding. When I started using Linux, I used emacs because it was the more user-friendly editor that was mentioned in the manual (the other being vi). Then, for years, I used vi because it is ubiquitous and usually fast.

          But now I'm back to emacs. What convinced me was M-x tetris. I figured if it could do _that_, it was powerful enough for my current and future editing needs. And it is. The secret is that the people who say that Emacs is more an operating system than a text editor are right. It's a Lisp environment where anything and everything can me modified while the system is running. It has a file manager, a client for your version control system, a web browser, a tetris game, a psychoanalyst, and countless other things.

          Oh, yes, I almost forgot. There is a text editor, too.

          • Re: (Score:3, Interesting)

            by Greyfox ( 87712 )
            I use emacs for daily text editing, but I still bust out vi from time to time for config files, as it's much faster and generally all I need for that. Vi's regexp string replace convinced me to use it early in my career, but I like Emacs' flexibility. While working at Sun we had a database that I found to be confusing. I finally ended up writing a relationship finder in E-Lisp that would figure out relationships between two tables. That's the kind of thing I want my tools to be capable of doing.
      • I never thought I'd see the day that a text editor needed a network-aware client-server architecture.

        In my case, it was so that I could SSH in, run a Python script to generate an SQL query, then run that query in a PostgreSQL interaction buffer. I'd written a macro to do all that automatically and didn't want to spend more than 3 seconds recreating something that was already working - if I was at the Emacs session running at my office.

    • I have that in 22, but you had to start the server listening from the original emacs process. Is that still the case, or does it start acting as a server by default now?
      • The point is that a graphical Emacs session can now connect to a client on a tty. (And in answer to your question: yes, Emacs can now be started in daemon mode.)

        • Exactly. I've been randomly using clients for about a decade, but it's only been very recently that you could connect a GUI or text client to a server that was launched in the other mode.
    • Re: (Score:2, Informative)

      This is also called 'multitty'. You can open a new frame anywhere, whether on another X display, or on a TTY.

      You can even start Emacs in a screen session in your .profile.

      And ... did I mention that because each emacs server can have it's own name, you can different emacs servers for different purposes, each with their own .emacs file.

      Oh, yeah, and someone even told me that it has a decent text editor, too!

    • by zeromorph ( 1009305 ) on Thursday July 30, 2009 @04:10PM (#28887205)

      They also missed to mention the full unicode support, which is quite nice.

      Anyway they could have linked to NEWS.23.1 [gnu.org], which has a concise list of new feature.

    • If you save your buffer to disk you can access the contents without having to use software that requires a client/server architecture just to edit files.

      • My buffer was a connection to a PostgreSQL server and about three days worth of history. How well does that work out for you?

      • by gknoy ( 899301 )

        That's great when you're only dealing with files, but if you are running a REPL, being able to remotely access the same development environment (sources+REPL) is pretty freaking cool.

  • M-x butterfly (Score:2, Redundant)

    by cstdenis ( 1118589 )

    Best command ever.

  • by girlintraining ( 1395911 ) on Thursday July 30, 2009 @03:38PM (#28886693)

    A lone geek runs into the middle of the forum, screaming "vi forever! Praise the hex codes!" *boom* :)

  • by AdmiralXyz ( 1378985 ) on Thursday July 30, 2009 @03:44PM (#28886785)

    Slightly shortened to accommodate the special event:

    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 22 or GNU Emacs 23?", and he replied "GNU Emacs 22". I said "DIE YOU OBSOLETE NO-GOOD SOCIALLY MALADJUSTED CELIBATE COMMIE FASCIST DORK!", and never emailed him again.

    • Re: (Score:3, Insightful)

      by h4rr4r ( 612664 )

      Either one is better than using 99% of the other options out there. If your text editor requires the use of a mouse you need a better text editor.

      • Or you just need a better keyboard.

  • Call me old and grumpy but I think Emacs had enough features when they got the kitchen sink in it.
  • by SuperKendall ( 25149 ) on Thursday July 30, 2009 @03:50PM (#28886867)

    I don't use Emacs as my primary editor anymore, but I do turn to it pretty often still.

    For short repetitive tasks, there's simply nothing more useful than the macro recording mode that lets you execute a combination of searches, multiple buffer stores, and cursor position storage states to easily repeat very complex tasks over a block of code.

    For reading in obscure file formats, Emacs usually has an answer - with good syntax highlighting.

    I look forward to this next iteration of emacs and what else it can do...

    • by jjohnson ( 62583 )

      *good* syntax highlighting? It looks like my kid threw up fruit loops all over my screen. It's even worse with 16 bit colours enabled.

      • Re: (Score:3, Informative)

        by hibiki_r ( 649814 )

        The syntax highlighting is good because it understands all kinds of different content types in different languages.

        If your only problem is the default colors, that's a very easy fix: Every color in every highlighting scheme is editable. If you don't like the default, switch the scheme to zenburn or something

    • For reading in obscure file formats, Emacs usually has an answer - with good syntax highlighting.

      I was disappointed, however, to find that it lacks a MDL (Muddle) mode. It almost certainly had one at some point, I might have to check back in negative version numbers or something.

    • by Anonymous Coward on Thursday July 30, 2009 @04:21PM (#28887403)

      Oh I totally agree. For example, just today I was writing a program that needs to load in around 1000 sequentially-numbered images. Like any decent coder, I had typed all of the filenames into my main program loop. But then my manager called me up to let me know that the base filename of the images had changed! You can just imagine the sinking feeling I had in my stomach, knowing that I would need to retype every single filename! It would have taken me hours, if not for the macro recording functionality in Emacs. Thanks, Emacs.

      It doesn't stop there, of course. I needed a function to count how many images had been loaded in, and save that number as a string. Then my boss phones me to say that they don't want image #0003 any more. Think of all the 'if/then' statements I'd have been forced to rewrite by hand, if it wasn't for Emacs!

  • by neonprimetime ( 528653 ) on Thursday July 30, 2009 @03:52PM (#28886903)
    of a recent /. article entitled the amazing world of software version numbers [slashdot.org]
  • It starts almost instantaneously on my machine.

    It is one of the only programs that works equally well in text mode and GUI mode.

    It was designed to run well on a PDP-11, so it just screams on a modern machine.

    Emacs was the IDE of choice before people even knew what an IDE was.

    People who freak at the emacs feature set should compare it to Eclipse.

    I have used emacs on ITS, TOPS-20 and Multics. I am still getting used to this Unix emacs thing, I still smile at the fact that I don't have to put up with gosling

    • No, its actually horribly bloated. Its just that it is horribly bloated by the standards of thirty years ago. A bit like Windows XP, but more so.

      In other news, emacs 24 is to be renamed "egacs" because the previous snarky backonym of "Eight Megabytes and Continually Swapping" is now the average footprint of "Hello World".

      • by dkf ( 304284 )

        In other news, emacs 24 is to be renamed "egacs" because the previous snarky backonym of "Eight Megabytes and Continually Swapping" is now the average footprint of "Hello World".

        That's a invidious lie! It stands for "Escape Meta Alt Control Shift", and that's still a valid criticism (and I admit I really like emacs); there's only one shift-like key on this keyboard that it doesn't use and that's only because it's a laptop and so needs to put some functionality off a special "Function" shift...

    • Re: (Score:3, Insightful)

      by ThePhilips ( 752041 )

      "Bloatware == slowness" is a misguided generalization.

      Emacs actually is the classic example of bloatware. It doesn't matter that the bloat is fast. What matters is that when you try to change an option you discover that you have 5-10 micro-options + hooks + extra bunch of options for different modes you might happen to use. And none of their combination leads to desired result. Then you turn to lisp - hopping to tap into the programmability of Emacs - just to discover that every tiny thing has already l

  • Let me be the first one to say this: "Illuminatus!"
  • by Anonymous Coward on Thursday July 30, 2009 @03:57PM (#28887001)

    I seriously doubt Alan Cox is going to upgrade

  • by Lemming Mark ( 849014 ) on Thursday July 30, 2009 @03:58PM (#28887025) Homepage

    M-x version gives me "GNU Emacs 23.0.0.2 (i686-pc-linux-gnu, GTK+ Version 2.10.6) of 2007-01-18". This is a version I checked out from emacs CVS on that date, compiled with GTK support and antialiasing (at least one, possibly both of which were experimental at the time) and have been using this version ever since. I've been sticking to it because of the antialiasing, basically. Whenever I start it up it displays a warning about how it might be horribly unstable, eat my data, etc.

    But I have found it to be remarkably stable - much more so than many / most final releases of software. I can probably count the crashes I've had from it on my fingers - in unary, not binary, for the benefit of any pedants out there. If the final release is at least as good as the random CVS checkout I have then it ought to be pretty good! To be fair it sounds like lots of features have been added since my checkout ...

    On the basis of my experience I will consider testing CVS versions of emacs in future if they have useful features that I need. Obviously still gotta take care with that vital data when doing so, my good experiences notwithstanding!

    On a side note, the emacs versioning system is amusing in itself ... IIRC they were numbering the releases 0.x and working up to 1.0 as normal. But it took so many releases that they ended up just dropping the "0." designation and calling it "x" instead. Which is why emacs is at version 23 where vim (on my machine) is only at 7.2 and nano at 2.0.9 ;-)

  • Word wrapping (Score:3, Interesting)

    by xiox ( 66483 ) on Thursday July 30, 2009 @03:59PM (#28887047)

    How about adding word wrapping when displaying? My local emacs expert wasn't even able to do that, but MS Notepad can do it. It's really useful for editing latex documents where your want a paragraph on a single line (that makes it much easier to search for phrases).

    • Re: (Score:3, Informative)

      by FranTaylor ( 164577 )

      M-x auto-fill-mode

      • by pavon ( 30274 )

        That's not the same thing. For
        starters it only works on a line
        by line basis, and changes to a
        line in the beginning of a
        paragraph don't affect the
        formatting of lines further
        down in the paragraph. You still
        have to manually invoke M-q to
        refill the paragraph in that
        situation.

        Furthermore it inserts actual
        newline characters at the column
        limit, which is really annoying
        when editing or displaying the
        document in other applications.

        • Re: (Score:3, Informative)

          by fsmunoz ( 267297 )

          C-h f visual-line-mode
          ----
          visual-line-mode is an interactive compiled Lisp function in
          `simple.el'.

          (visual-line-mode &optional arg)

          Redefine simple editing commands to act on visual lines, not logical lines.
          This also turns on `word-wrap' in the buffer.

          It is even right there on the menu (Options->Line Wrapping...->Word Wrap).

    • Re:Word wrapping (Score:5, Informative)

      by the Atomic Rabbit ( 200041 ) on Thursday July 30, 2009 @04:03PM (#28887105)

      1. M-x visual-line-mode RET (or Options->Line Wrapping->Word Wrap)
      2. Live happily ever after.

      • by xiox ( 66483 )

        That sounds great. This must be new in emacs 23 - I can't see it in 22.2.1 I have here.

    • Re: (Score:3, Informative)

      by Looke ( 260398 )
      M-x longlines-mode
  • by feldicus ( 1367687 ) on Thursday July 30, 2009 @04:02PM (#28887085)

    Does the feature list include "Shortcuts that make sense to humans who never used the 30-year old keyboards that were around when RMS was hacking on TEX"?

    Until I stop seeing Emacs primers that start with advice to start remapping my keyboard, I'll pass.

  • The image libraries for jpeg and tiff are not by default in OS X 10.5.7. You have to pass the configure flags --with-gif=no --with-jpeg=no to get it to compile.

  • Emacs? Bah! (Score:4, Funny)

    by bmo ( 77928 ) on Thursday July 30, 2009 @04:30PM (#28887627)

    Emacs is merely a TECO macro.

    Given enough random characters and memory space, TECO can simulate the human brain.

    --
    BMO

  • Because (at least in Debian Lenny) I am still using 21 because 22 hasn't been working out so well.

    Lots of problems, eg find-grep-dired not finding any results at all.

    I uninstalled 22 and installed 21 instead, now my find-grep-dired is working again...

  • Also, there is support for starting emacs in the background, so you can pop up new emacs windows in the blink of an eye.

    It will be a sad day indeed when I have to run my text editor in the background just so it will start up in a reasonable amount of time.

    Fortunately, I use Vim, so that day is further off.

  • They might want to choose another image---the command entry area in the image of emacs [blogspot.com] on the linked page has an error in it: "(s-print) is undefined".

  • by ClubStew ( 113954 ) on Thursday July 30, 2009 @09:57PM (#28891509) Homepage
    ViM only needs 7 versions to get it right. Emacs is at 23?

Love may laugh at locksmiths, but he has a profound respect for money bags. -- Sidney Paternoster, "The Folly of the Wise"

Working...