Slashdot Mirror


GNU Emacs Now Has Native Support For GTK Widgets (phoronix.com)

An anonymous reader writes: The GNU Emacs text editor now has merged the X Widgets branch. What this work allows is for embedding GTK+ user interface widgets within Emacs for features like landing MPlayer or a full web browser in Emacs. This allows now for more endless opportunities for the 40 year old GNU text editor. The X/GTK widgets support will come with GNU Emacs 25.1.

28 of 133 comments (clear)

  1. Old joke even more true.... by cant_get_a_good_nick · · Score: 3, Insightful

    Emacs would be a hell of an operating system if someone would just write a decent text editor for it.

    1. Re: Old joke even more true.... by aglider · · Score: 2

      You have a choice between vi, vim and neovim. It's up to you. :wq!

      --
      Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
    2. Re:Old joke even more true.... by PPH · · Score: 5, Funny

      Emacs is the purest implementation of Zawinski's Law

      --
      Disclaimer - These opiini^H^H damn! ^H^H ^Q ^[ .... :w :q :wq :wq! ^d exit X Q ^C ^? :quitbye CtrlAltDel ~~q :~q logout save/quit :!QUIT ^[zz ^[ZZZZZZ ^H man vi ^@ ^L ^[c ^# ^E ^X ^I ^T ? help helpquit ^D man quit ^C ^c ?Quit ?q CtrlShftDel "Hey, what does this button d..."

      --
      Have gnu, will travel.
    3. Re: Old joke even more true.... by fahrbot-bot · · Score: 2

      Hmm. Running vim inside emacs. You sure the universe wouldn't explode and create a giant black hole or something?

      Emacs already has a vi/vim emulation mode - along with several other editors.

      --
      It must have been something you assimilated. . . .
    4. Re:Old joke even more true.... by CronoCloud · · Score: 2
    5. Re:Old joke even more true.... by Mister+Liberty · · Score: 2

      That's a rather roundabout way of saying "I've had my head up my ass for the last thirty years".

    6. Re:Old joke even more true.... by Anonymous Coward · · Score: 5, Interesting

      Why is it ridiculous?

      I've used emacs for 20 years almost purely as a text editor, though it was my email client for about five years. The beauty of emacs is that you *can* do almost anything, but it doesn't make you. If all you want is a text editor, that's all it is, and you won't even know it can do other things unless you try to make it.

      "Products" (word, firefox, etc...) will try to force you to use the new and useless (to you) capabilities with every release and prevent you from using it as the simple tool that you want. Emacs is the simple tool that you want first and foremost, and if you want more, it probably is that as well.

      It is perfect.

    7. Re:Old joke even more true.... by Darinbob · · Score: 2

      If you look at Emacs today, it's relatively small overall. The old joke gets stale because it's gone from being an example of a giant software package into something that is dwarfed by other packages. What makes it big is that it has a programming language which means there are thousands of optional user created programs for it. Meanwhile there are editors much bigger than Emacs which are not nearly as extensible.

      Emacs is a textual display system with a programming language to use it, with several primitives related to editing. The editor part itself is added with the programming language.

  2. VI is forever by aglider · · Score: 2

    You insensitive text mode clods!

    --
    Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
  3. EMACS Memory Footprint? by superid · · Score: 4, Interesting

    I remember when you would say "Eight Meg And Currently Swapping" and that was a funny criticism of how bloated EMACS was.
    What's the mem footprint today?

    1. Re:EMACS Memory Footprint? by olau · · Score: 5, Informative

      My Emacs with a ton of buffers opened with a bunch of fancy modes is using 66 MB resident, according to top. It's been open for 6 hours now.

      A fresh instance with no stuff in it (emacs -Q) is 39 MB.

    2. Re:EMACS Memory Footprint? by erapert · · Score: 2

      Fresh instance of Sublime Text 3: 26.7MB
      With 22 tabs of HTML, CSS, JS, and PHP spread accross five windows: 64.2MB

    3. Re:EMACS Memory Footprint? by Anonymous Coward · · Score: 3, Funny

      Fresh instance of emacs: $0
      Fresh instance of Sublime Text: $70

      I think I'll stick to emacs

    4. Re:EMACS Memory Footprint? by phantomfive · · Score: 2

      The binary is 10 MB on disk. Kind of smallish, actually.

      --
      "First they came for the slanderers and i said nothing."
  4. Re:Mplayer??? by buchner.johannes · · Score: 3, Informative

    Gentoo, Debian and Ubuntu had switched to libav by default, then switched back to ffmpeg.

    FFmpeg supporters wanted to keep development velocity in favour of more features, while Libav supporters wanted to improve the state of the code, take the time to design better APIs.[9][10]

    The maintainer of the FFmpeg packages for Debian[11] and Ubuntu,[12] being one of the group of developers who forked FFmpeg, switched the packages to this fork in 2011. Hence, most software on these systems that depended on FFmpeg automatically switched to Libav. In July 8, 2015, Debian announced it would return to FFmpeg[13] for various, technical reasons.[14] Several arguments justified this step. FFmpeg first had a better record of responding to vulnerabilities than libav . Secondly, Mateusz “j00ru” Jurczyk, a security-oriented developer at Google, argued that all issues he found were fixed in a timely manner, and the situation was entirely different with libav still affected by a bunch of bugs. Finally, the feature gap between FFmpeg and libav, with FFmpeg supporting a far wider variety of codecs and containers than libav does.

    Even if it has been expressed several time to merge back the two projects, this has still not happened yet. With Debian and Ubuntu stopping to use that library, the future of libav might be compromised and its development may be not sustainable any more without Debian.[15]

    https://en.wikipedia.org/wiki/...

    --
    NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
  5. Re:Changing Userbase? by chipschap · · Score: 3, Interesting

    A very good question. EMACS tries to be all things to all people ... and it is. I've used it since almost the very beginning and can't live without it.

    That said, I'm not interested in the GUI stuff because it slows me down, and since EMACS is infinitely customizable I just turn it off. To each his own; some people like menus and so on. I do enable display of in-line graphics but no more than that.

    Yes, there is confusion over purpose and direction, but to somewhat justify it, I'll say this. Learning EMACS, which is a big job, is a lot easier with menus and a GUI interface to help get started. Over time you learn the keystrokes and become more efficient until eventually you don't need the GUI (but you can of course still keep it).

    EMACS is very much not for everyone, but for those who love it, it's indispensable.

    And one more little fact: on my Asus Zenbook, I typically get 5 hours running time with a mixed environment. But if I run EMACS and EMACS alone, in a full screen, I get 10 hours.

  6. Re:And nothing of value was added ... by gstoddart · · Score: 4, Insightful

    Funniest thing I ever saw was a guy who was so utterly dependent on his emacs as to be crippled without it ... and then he's on a client site, on a Solaris workstation he can't install software onto ... and the only editor he had was vi. He was almost in tears (we were too but from laughing at him).

    Anybody who is going to use unix-type systems and doesn't know how to do at least some basics in vi is just asking to be made to look like an idiot.

    I must confess, I've never grasped this incessant need to do everything from within emacs. I find it tends to create people who spend endless hours honing their editor instead of doing their jobs, and who suddenly can't do anything without all the training wheels they've added.

    Seriously, check the damned weather somewhere else.

    --
    Lost at C:>. Found at C.
  7. Re:Mplayer??? by Tighe_L · · Score: 2

    That's good because that team screwed Fabrice Bellard over. All of their improvements aren't improvements, it is a pile of rubbish. I use Gentoo on my server, but on my desktop I use Sabayon as I hate recompiling a desktop. As far as I can tell even though Gentoo which Sabayon is based on has switched, Sabayon is still defaulting to libav,

  8. I used to use EMACS in 1995 when in college by Tighe_L · · Score: 2

    But now I mostly us nano for quick edits from the command line and jedit when in xwindows. Jedit while not perfect I like that I can carry my configuration from windows/linux/mac easily. VI is just plain annoying to use the way I think.

  9. Re:And nothing of value was added ... by fahrbot-bot · · Score: 4, Insightful

    Seriously, this is SUCH a niche product. Everyone uses a VI clone because it's guaranteed to be present on *nux systems.

    Emacs is a niche product? I've used Emacs (or XEmacs) on every system I've every used and/or administered, from PCs running BSD, Linux and Windows to just about every known mid-large Unix BDS/SysV system to Cray supercomputers since the mid 1980s. (Running Emacs on a Cray 2 is truly a guilty pleasure.) True I may have had to install (or build and install) it myself, but still hardly niche.

    Of course, I *also* know vi/vim for simple editing tasks. For serious programming, I always use Emacs or XEmacs. One can always use the vi/vim emulation mode in Emacs... :-)

    --
    It must have been something you assimilated. . . .
  10. Re:Oh, COME ON! (Emacs User here) by sl3xd · · Score: 3, Insightful

    At the end of the day, code that goes in meets a few criteria:

    1.) (the most important one): Somebody gives a crap.
    2.) Somebody gives a crap and actually writes decent code
    3.) Somebody gives a crap and gives so much of a crap that they're willing to do an additional 400-500% of work to get the patch into the main codebase.

    Seriously, complaining what some nebulous "they" should do something is just stupid. This isn't a product that people buy, no project manager doing focus research on what consumers want, and no manager telling an employee "do this or you're fired".

    There's just some guy/gal out there with an itch to scratch, who couldn't possibly care less what you want.

    (S)he who codes, decides. End of story.

    --
    -- Sometimes you have to turn the lights off in order to see.
  11. FFMPEG by DrYak · · Score: 2

    After the FFMPEG fork is there a Linux distro that still uses FFMPEG & Mplayer?

    Firstly: Not all distro switched to avlib.
    Some simply decided to stay with ffmpeg (e.g.: opensuse never switched at all)
    Some changed their opinion back (e.g.: Debian went back to ffmpeg after a while)
    This is mostly to avlib never really being a good an active fork, and didn't manage to attract most developper to it.
    (Unlike OpenOffice.org to which most developer migrated after the fork from LibreOffice.org).

    Since then the problematic leader of FFMPEG has decided to step down,
    avlib has merged back to ffmpeg
    and distro are back to- / or are still using- ffmpeg again.
    And the guy is now a contributor. He still writes code for ffmpeg, but he's not having a final say on everything and thus fighting with everyone to have his "one true vision(tm)" imposed.
    He has fully realized that his character clashes with some in the community, has seen the disastrous result on having avlib forked (the linux ecosystem split across two different forks, none of which becomes a clear leader and each laging behind the other on some important features), and decide therefor to step down for the greater good of the community.

    source: Phoronix

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  12. Great news! by tamyrlin · · Score: 4, Interesting
    That is really great news. Good enough that I actually logged in to comment rather than commenting anonymously as I usually do. I've been following the xwidgets branch from the sidelines for some time but never bothered to build Joakim Verona's branch myself. It should be noted though that what was merged was not the full xwidgets experience, rather the xwidgets_mvp branch. This branch only contains support for embedding a webkit browser widget. (Although even that will be extremely useful I believe.)

    The xwidgets branch however promises even more. The main use case (at least from my point of view) isn't really to put normal widgets such as gtk buttons or sliders or anything like that in an emacs window. From my point of view the most important thing is that you will be able to embed whole applications using the GtkSocket widget. This means that you could, for example:
    * Have a good PDF viewer embedded in one buffer while you are editing latex source code in another and be able to easily switch between those buffers using emacs commands.
    * You could have inkscape running in one buffer and use normal inkscape editing commands for almost everything, except when you are editing text. In those situations you may want to use emacs commands instead.
    * You could have a *good* webbrowser running inside emacs to search for documentation online while coding

    Of course, the main xwidgets branch also opens up possibililties when it comes to prettyifying a lot of built in emacs applications. However, I don't find that very necessary in many cases. One of the main advantages with emacs is that (almost) everything is text, which means that you get a synergistic effect the more you do inside emacs.

    ; Witty end of comment for emacs aficionados:
    (animate-string "Congratulations to Joakim Verona for getting this merged" 10 10)

  13. Re:And nothing of value was added ... by ClickOnThis · · Score: 2

    I recall a time 10 or 15 years ago when I actually had to use ed . . .

    [...]

    What I really remember from it was the shock of needing to use ed for the first time in decades, and relief that I could pull it off . . .

    Bless you, sir. You have not lost the pure faith.

    --
    If it weren't for deadlines, nothing would be late.
  14. Wait, people still use GTK+? by Phil+Urich · · Score: 2

    Sorry for being troll-ish, but I've had increasing issues with GTK+ over the years and have been broadly relieved that developers seem to be generally switching over to Qt.

    --
    I remember sigs. Oh, a simpler time!
  15. Re:And nothing of value was added ... by ClickOnThis · · Score: 2

    Why is it I don't have moderator points when I really want them?

    I just use this command:

    M-15 M-x get-slashdot-mod-points

    --
    If it weren't for deadlines, nothing would be late.
  16. Re:And nothing of value was added ... by david.emery · · Score: 2

    Too late! I've already posted and disqualified myself.

  17. Re:And nothing of value was added ... by Darinbob · · Score: 2

    The need is because so many things require editing of some form. So you do a mail reader in emacs because you can compose your emails using the same editor that you use to edit everything else, and without spawning it as a subprocess of the mail reader. Same for news reader, etc. Same keystrokes, same commands, same environment. When the alternative was the standard command line "mail" then using Emacs was a vast improvement.

    The other reason is that you can write your own and customize the hell out of it. Remember that Emacs is not a text editor, rather Emacs is a programmable system that includes an editor. So you use that programming system to program your own tools. You could not even start to do anything like this the original vi, it had no programming language. It allows for some simple integration of development tools: compile the current code you're looking at and pop up the error messages and scroll through them. This integrated the edit/compile/debug cycle back when when most people hadn't even heard of IDEs (except perhaps on Lisp Machines and the like).

    The endless hours comes from the ability to customize. When you're stuck with an uncustomizable tool then you don't spend that time customizing but you do spend a lot of time wasted on the frustration of inadequate tools.