Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Emacsy: An Embeddable Toolkit of Emacs-like Functionality

Unknown Lamer posted about 2 years ago | from the ignoring-preexisting-projects-for-fun-and-profit dept.

Software 127

An anonymous reader writes "Emacsy is 'a Guile library that provides Emacs-like facilities — keymaps, minibuffer, tab completion, recordable macros, and major/minor modes — for applications natively.' However, to my eyes, it looks more like an attempt to revive the development style done on Symbolics Lisp Machines that survives to some extent in Emacs. Might be a boon to Emacs users, but where's a comparable VIM alternative?" The skeptic in me asks what benefit this would have over just using libguile directly, and how it fits in with efforts to port Emacs itself to Guile and things like Englightenment's pluggable event loop. The example code seems to imply Emacs-like APIs will be used (despite not intending to replace parts of Emacs), even when better alternatives exist. Some of the proposed components seem orthogonal to existing interface toolkits; others seem to compete with components provided by various Free desktop environments.

cancel ×

127 comments

Sorry! There are no comments related to the filter you selected.

Good replacement: Visual Studio (-1, Troll)

The God of Code (2641925) | about 2 years ago | (#40071309)

Visual Studio offers all of these natively built-in. It is also easily extensible and can support any language. There is even open source Python tools available at CodePlex [codeplex.com] .

- Supports CPython and IronPython
- Python editor with intellisense and signature help
- Find all references and goto definition
- Local and remote debugging
- Refactoring: Rename, extract method
- Profiling with multiple views
- Integrated REPL window with inline matplotlib graphics
- Support for HPC clusters and MPI and debugging
- Interactive parallel computing via integrated IPython REPL
- Object browser

Try it!

Re:Good replacement: Visual Studio (-1)

Anonymous Coward | more than 2 years ago | (#40071359)

Another shill. (As if it isn't obvious just from reading this post, but look at his post history.) Mod down and report.

Pitifully lame (0, Troll)

SuperKendall (25149) | more than 2 years ago | (#40071459)

Blah Blah Blah.

No macro recording? You may as well hold up a toy hammer and claim you can easily build a house with it.

If only, if only other editors would see the power inherent in Emacs macro recording...

Everything else you mention can be done with emacs already.

How horribly sad that we have yet to get GUI code editors that equal, much less exceed, emacs in terms of coding assistance that is possible...

Re:Pitifully lame (0)

Lunix Nutcase (1092239) | more than 2 years ago | (#40072407)

Visual Studio has macro recording. It's had it since pretty much forever.

Really, you call that "recording a macro"? (4, Insightful)

SuperKendall (25149) | more than 2 years ago | (#40072509)

You have no idea what REAL macro recording is. Sigh.

Tell me exactly, how do you record a search and replace based on text you found around the result of another search?

Or a search that gathers disparate results from multiple files and places the results in a extra comma delimited file?

Or a macro that executes a shell command and uses the output to open a third file?

And then how do you save the macros for later reuse and edit them?

You are ignorant (0)

Anonymous Coward | more than 2 years ago | (#40073721)

While I'm not an IDE fan, but google before you troll: VS can be scripted (in VB; yeah, it sucks) and has an extensible api, so it can do pretty much all you asked for.

What part of RECORD.... (3, Insightful)

SuperKendall (25149) | more than 2 years ago | (#40074057)

While I'm not an IDE fan, but google before you troll:

I'm not trolling, I just wish people could read the damn text before responding.

I said RECORD. As in RECORD. As in not SCRIPT OR PROGRAM OR DEVELOP. As in RECORD.

Like I said, I can record in emacs searching for something, using some value located around the search (say a quick regex on that line), then copy that and go to some pre-saved point in the file to paste the result.

That may sound contrived but I have for example easily created long list of variable names or altered things like comma separated data in partial ways that would have been hard otherwise, simpler even than using sed or the like... all because I could record a simple transformation to occur, then re-run it on command wherever I liked.

Basically I found it incredibly useful and it is the reason I still sometimes go back into emacs when even SCRIPTABLE editors are just too weak to get something done.

Re:What part of RECORD.... (2)

Lunix Nutcase (1092239) | more than 2 years ago | (#40075581)

I said RECORD. As in RECORD. As in not SCRIPT OR PROGRAM OR DEVELOP. As in RECORD.

And as I told you in my post you CAN DO THIS IN VISUAL STUDIO SINCE THE ABSOLUTE BEGINNING. For example, this [microsoft.com] is the instructions from Visual Studio 6 since that's the earliest version that can be pulled up on MSDN.

Re:Really, you call that "recording a macro"? (0)

Anonymous Coward | more than 2 years ago | (#40073735)

Actually, I would like to know how to do this. If you would be so kind to point at some tutorial that describes these things it would be much appreciated :)

In emacs? (1)

SuperKendall (25149) | more than 2 years ago | (#40074037)

In emacs type "C-x (", then you can do something like:

Start a search
use any functions you please to grab a regex from that line, and put it into a register.
Start another search, paste in the register.
Do something once there.

"C-x )" ends the macro.

Basically the real power comes into play when you realize you have 26 registers to stick either text or cursor positions in, in the middle of the macro - and that macros also record actions in the control field at the bottom (for switching files or whatever).

Re:In emacs? (2)

jrumney (197329) | more than 2 years ago | (#40074165)

In emacs type "C-x (", then... "C-x )" ends the macro.

F3 and F4 are better keybindings for macros in Emacs. As well as being single keystrokes, they have context sensitive functionality: F3 starts recording a macro, or while recording inserts an auto-incrementing counter. F4 ends recording, or when not recording plays back the last macro.

Re:Really, you call that "recording a macro"? (1)

shutdown -p now (807394) | more than 2 years ago | (#40073989)

VS macros are scripts, written in VB. They can do everything that you've listed (though, of course, such a macro cannot be produced by recording your actions - it has to be written manually).

The very definition (0)

SuperKendall (25149) | more than 2 years ago | (#40074027)

They can do everything that you've listed (though, of course, such a macro cannot be produced by recording your actions

THAT IS THE WHOLE FUCKING POINT.

I can program anything in anything. The beauty of emacs is I can quickly create a very complex macro WITHOUT FUCKING PROGRAMMING ANYTHING.

It may seem minor but the difference is as vast as a billion trillion oceans.

Re:The very definition (1)

shutdown -p now (807394) | more than 2 years ago | (#40074065)

I can program anything in anything. The beauty of emacs is I can quickly create a very complex macro WITHOUT FUCKING PROGRAMMING ANYTHING. It may seem minor but the difference is as vast as a billion trillion oceans.

Admittedly, it doesn't sound like a very enticing feature to me - I'm a programmer, why would I prefer recording over writing a script?

But to each their own.

Re:The very definition (1)

Lunix Nutcase (1092239) | more than 2 years ago | (#40075551)

The guy is wrong anyway. You can record your actions and have it produce a macro. Again, this has been a feature of Visual Studio since the very first editions more than 15 years ago.

P.S. the base of script dislike... (1)

SuperKendall (25149) | more than 2 years ago | (#40074063)

P.S. I used to ALSO write extremely complex macros in VI as well, which is why I know how vastly different it is to be able to record vs. script macros.

Re:Really, you call that "recording a macro"? (1)

Lunix Nutcase (1092239) | more than 2 years ago | (#40075557)

(though, of course, such a macro cannot be produced by recording your actions - it has to be written manually

This is of course very much wrong. [microsoft.com]

Recording Macros
The following procedure steps through creating an example of a simple macro.

The keyboard shortcuts used in this example assume the default Visual Studio shortcut key configuration.

To record a macro

Create a new text file by choosing File on the New submenu on the File menu.

Choose Text File in the General category.

In the new text file, type the following:

one two three four

Press HOME to place the cursor at the beginning of the text.

Press CTRL+SHIFT+R or choose Record Temporary Macro on the Macros submenu on the Tools menu to initiate the environment's macro recording mode. The Recording Toolbar appears and a small spinning cassette tape icon in the status bar indicates that you are currently recording.

Press CTRL+SHIFT+RIGHT ARROW to select the word "one" and the space after it, then press DELETE.

Press CTRL+SHIFT+R or click the Stop Recording button in the Recorder Toolbar to stop recording the macro. Notice that the spinning cassette icon in the status bar disappears when macro recording ceases.

At this time, if you open Macro Explorer and expand the MyMacros node, you should see a new entry called "TemporaryMacro" under the RecordingModule node. This is the default name given to newly-recorded macros.

Re:Pitifully lame (1)

Larryish (1215510) | more than 2 years ago | (#40072629)

The only such toolkit worth using would likely be called Vimmy.

Re:Pitifully lame (1)

jellomizer (103300) | more than 2 years ago | (#40074511)

If you are coding using macros chances are you are doing it wrong. I am not defending Visual Studios. But if you need macros all the time like you are implying then you are doing your code wrong. You may use macros occasionally as there may be some jobs that may need them to code faster. But for the most part of there is a patern that you can use a macro, you can fix your code so you don't need to and your code will be easier to maintain.

Re:Good replacement: Visual Studio (-1)

Anonymous Coward | more than 2 years ago | (#40071465)

I know this is a shill, but it still deserves a refutation. The TCO is much higher. TCO includes:

1. Cost of Windows.
2. Cost of dealing with Windows issues (malware, closed source driver issues, etc.).
3. Cost of dealing with licensing issues, including BSA nonsense.
4. Cost of vendor lock-in and upgrade treadmill that Microsoft has turned Windows into (this is new: the glory XP days actually didn't have this problem).
5. Microsoft embrace-extend-extinguish history. ("How can MS turn Python into Microsoft Nohtyp")
6. Windows is less productive for developers. Old-style command line is too neutered, new-style powershell looks too complicated (never actually used it, but it seems like it might be a neat scripting language). Simple Bash-like scripting middle ground seems to have been missed out, which happens to be what developers need.

Re:Good replacement: Visual Studio (-1, Offtopic)

santax (1541065) | more than 2 years ago | (#40072645)

Hmmz, actually, despite being modded down, I also think VS is the best IDE. Maybe because I know it best, but I would love a port to linux. It's a fast IDE that gets shit done. I did skip on 2010 though, but 2008 is my weapon of choice. It's actually overkill for the coding I do, but I prefer it any time over vi, emacs, eclipse or monodevelop. (ah yes, this linux-user does .net, please don't hurt me to bad!)

Re:Good replacement: Visual Studio (2)

Dr Herbert West (1357769) | more than 2 years ago | (#40074127)

Where's the gamemaker guy when you need him? You two should get a room.

A guile library (0)

Anonymous Coward | more than 2 years ago | (#40071353)

That should see wide usage...

Take over the world (0)

Chemisor (97276) | more than 2 years ago | (#40071369)

Now all we need is for someone to use Emacsy to implement vi. That would be totally mindblowing!

Re:Take over the world (4, Funny)

Unknown Lamer (78415) | more than 2 years ago | (#40071383)

Behold [emacswiki.org] , the [emacswiki.org] horror [emacswiki.org] .

Re:Take over the world (1)

Ramin_HAL9001 (1677134) | more than 2 years ago | (#40072825)

Why would you use vi bindings in Emacs? Why not just use vim? ViperMode is especially terrible, it doesn't implement the function of vi's "f" or "t" commands, which I use only a million times every day.

Re:Take over the world (1)

Anonymous Coward | more than 2 years ago | (#40071391)

That's like the Catholic church putting a statue of Shiva up next to Mary.

Re:Take over the world (2, Funny)

Anonymous Coward | more than 2 years ago | (#40071641)

Meh. Everyone knows she only has eyes for Ganesh.

Re:Take over the world (1)

unixisc (2429386) | more than 2 years ago | (#40074067)

Unlike the Linux 3.4 story yesterday, this one would have merited having a gnu picture at the top, as opposed to just a generic software symbol. Although I wonder whether the emacs symbol would have shown up had emacs been the first keyword used?

Yet another reason to stop using emacs (1)

Megor1 (621918) | more than 2 years ago | (#40071425)

And use vi!

Re:Yet another reason to stop using emacs (4, Funny)

david.emery (127135) | more than 2 years ago | (#40071437)

The only thing VI's good for is editing the configuration file used to make EMACS :-)

Re:Yet another reason to stop using emacs (5, Funny)

Tarlus (1000874) | more than 2 years ago | (#40071791)

...because EMACS is way too cumbersome for config file editing.

Re:Yet another reason to stop using emacs (0)

Anonymous Coward | more than 2 years ago | (#40074515)

emacs shouldn't be installed on production servers.

(Neither should the fancy parts of vim)

a real hjkl vi or vim-tiny

On my machine though I would use emacs everytime now

(I know I probably can use emacs but I am not yet experienced with it to be 100% confident when doing stuff as root).

Except vi as root. (I don't use version control for stuff in /etc) or takes much care with backups for my personal box.

I can kickstart it back to normal and run a single shell script. (That I tack on any vi changes I do as root).

Sometimes I reinstall it over lunchtime to check I still know what I am doing.

Re:Yet another reason to stop using emacs (0)

Anonymous Coward | more than 2 years ago | (#40072091)

Emacs is a great OS, it's just missing a good editor. :-)

Re:Yet another reason to stop using emacs (1)

Anonymous Coward | more than 2 years ago | (#40072447)

You know, that was amusing about the first eight million times someone posted it.

Re:Yet another reason to stop using emacs (1)

unixisc (2429386) | more than 2 years ago | (#40073325)

If they just included a shell - be it bash or any other - then one could just have emacs sitting on top of the kernel (linux, bsd, et al) and make it the sole user environment. Oh, and while at it, build in elinks functionality into it as well, so that it could be used for web browsing.

Re:Yet another reason to stop using emacs (1)

jrumney (197329) | more than 2 years ago | (#40074229)

You mean like this [informatimago.com] ?

The critics can learn a thing or two about emacs (3, Interesting)

gorrepati (866378) | more than 2 years ago | (#40071507)

My personal feeling about emacs is it is very beautiful(yes). Let the point-and-click gui-using critics learn a thing or two about why making everything programmable(in a easy way, unlike eclipse) is an awesome idea.

They cannot though... (3, Insightful)

SuperKendall (25149) | more than 2 years ago | (#40071657)

Let the point-and-click gui-using critics learn a thing or two about why making everything programmable

No-one can really understand this without years of use though. Key bindings (which are widespread) are nice and all but it is as you say, the sheer ease of programability of the thing that makes Emacs so amazingly useful that I still turn to it even these days (though I mostly use integrated text editors now).

Only when emacs becomes really embedded in something modern will other people see the light.

Re:They cannot though... (1)

LWATCDR (28044) | more than 2 years ago | (#40072035)

I used microemacs back on the Amiga but the learning curve on it is just so high. Add in that IDEs now do so much more than just editing text and the benefit to time ratio for emacs just isn't their for me.
Too bad because I would really like to use it or or vi but their are must not enough hours in the day.

Yes, exactly (1)

SuperKendall (25149) | more than 2 years ago | (#40072529)

I used microemacs back on the Amiga but the learning curve on it is just so high.

I would TOTALLY agree with that.

Add in that IDEs now do so much more than just editing text

That is also very true. The sad thing is there's no reason Emacs could not be just as helpful, it just never got advanced in quite the same way some popular IDEs did.

That is why what it would take for people to understand emacs is for it to be really embedded into a modern IDE, so that you could keep using the great GUI components while you also slowly learned the textually heavy Emacs world.

Re:They cannot though... (2)

jrumney (197329) | more than 2 years ago | (#40074251)

Microemacs is a completely different beast than Emacs. It has all the arcane keybindings with only a fraction of the functionality of Emacs. It really only exists so that Emacs users can have an editor that feels familiar on underpowered platforms that cannot fit a full Emacs installation. I definitely wouldn't recommend it to newbies, and you should in no way judge Emacs based on your experience with microemacs.

Re:They cannot though... (1)

obsess5 (719497) | more than 2 years ago | (#40075419)

You're correct on most counts, except maybe regarding newbies. I started out with a commercial (Unipress) version of Emacs, heavily customized, in the late 1980s. Our overlords (the contractor we were subcontracted to), rather than buying the source, foolishly bought the binary version for Motorola-based Sun workstations, so we were out of luck when we switched to SparcStations. I downloaded the original MicroEmacs, modified some of the code for my own purposes, and heavily customized it. I've used it on Unix/Linux platforms ever since (20+ years). In 2001, for Windows work, I downloaded JASSPA MicroEmacs (http://www.jasspa.com/), modified the code to treat the PC keypad as a VT100 keypad in application mode, and reused my UNIX/Linux customizations. I've been a happy camper for a long time; I like the small footprint and how quick it is. (The same can be said about VI, but I was not that crazy about VI when I used to use it a lot.)

JASSPA MicroEmacs (free) also works under UNIX/Linux; I just haven't bothered to change over from my original MicroEmacs package. The JASSPA version also supports the mouse and menus, which I use infrequently.

Re:They cannot though... (1)

Darinbob (1142669) | more than 2 years ago | (#40072515)

Not really. The hard part is knowing Lisp and I agree that too few younger people bother with it anymore. The actual interface to Emacs for configuring is well documented though with tons of examples. Of course I've been using for 25 years so it's second nature. When I try to use an IDE it is sheer frustration having to click a thousand times to do something simple. I use both Emacs and VI, and I can live without VI easily but would pull my remaining hair out if I couldn't use emacs.

Building up key macros on the fly; circular kill buffers; customizable indentation styles; incremental search; incremental search with regular expressions; etc.

Re:The critics can learn a thing or two about emac (2)

gman003 (1693318) | more than 2 years ago | (#40072059)

Emacs is a good idea buried under a pretty bad implementation.

My complaints are threefold:
* Not mouse friendly. While keyboard shortcuts are awesome, they're very hard to use without practice. Having every option in a menu, somewhere, means that when I want to do some rare thing like "invert the case of these letters", I can just hit Edit->Characters->Toggle Case instead of checking the manual pages to find that it's Control-Meta-i or whatever. If I use that command often enough, I'll learn the shortcut. If not, I'll *never* learn it, and waste half my time in the man pages.

* Incompatible keyboard shortcuts. Most Windows and Mac, and even many Linux programs, all use the same basic keys for basic tasks. Ctrl-A means Select All. Ctrl-V is Paste. Mac just swaps Ctrl for Cmnd. For various historical reasons, Emacs uses completely different key shortcuts for everything. Which causes problems, because I'm never going to be *just* using Emacs. I'll be using Firefox, or SomethingOffice, or something else that almost definitely uses a different set of keys. Which means my mind will always be in "Ctrl-Z = Undo" mode, never "Ctrl-x u = Undo" mode (as an aside, does RMS never mis-type anything, because none of the three "undo" commands are easily entered - Ctrl-X U, Ctrl-/, and Ctrl-_ all suck).

* Ugly interface. Yeah, it's kind of petty, but Emacs looks like crap. If I'm going to be spending 8 hours a day in an editor, can it at least look like a program from *last* decade instead of the one before? (May have been fixed already - I gave up on Emacs years ago, maybe they finally discovered variable-width fonts)

Re:The critics can learn a thing or two about emac (0)

Anonymous Coward | more than 2 years ago | (#40072137)

Fixed width fonts are a feature not a bug.

Re:The critics can learn a thing or two about emac (1)

retchdog (1319261) | more than 2 years ago | (#40072173)

it's still ugly.

if you happen to be on a mac, aquamacs does a pretty good job of mixing emacs-style keystrokes with the "normal" ones, cmd-Z, cmd-C, etc.; it also provides pull-down menus. but beyond that, it's still just as ugly, and even after many years i still get the vertigo whenever i have to go into the emacs preferences system.

aquamacs also comes with a lot of nice packages included.

one of the problems with emacs is that it just has way too many commands to fit reasonably in standard menus. aquamacs picks a decent subset but it's still limited.

although i gotta say, i find ctrl-_ to be pretty convenient, and i really like the undo stack.

Re:The critics can learn a thing or two about emac (1)

gman003 (1693318) | more than 2 years ago | (#40072267)

Actually, I am on a Mac right now. It's normally my backup desktop, but my primary machine's off in the Great /Dev/Null In The Sky and its replacement is taking forever to ship for some reason.

Installing it now, maybe it'll work out well.

Re:The critics can learn a thing or two about emac (1)

Darinbob (1142669) | more than 2 years ago | (#40072623)

I agree with Aquamacs. It's very nice. I went back to XEmacs on my windows machine and it feels a bit clumsy (but then everything on Windows feels clumsy, and FSF Emacs on Windows is even worse). Most of the same stuff they add in Aquamacs can be put into normal Emacs as well as an option, and some are already in Emacs and just need to be switched on.

Re:The critics can learn a thing or two about emac (2)

dabridgham (814799) | more than 2 years ago | (#40072329)

You can hardly blame Emacs that programs which came years later chose different keyboard commands.

As for not being keyboard-centric rather than mouse-centric, some of us consider that a feature. Being created before mice has something to do with that of course but having to pull your hands off the keyboard to find the mouse is terribly slow. Yes, there's a bit of effort needed to learn enough to make running Emacs comfortable but when you're there you'll find how painful mice are. By the way, C-/ is only harder than C-z if your right hand is stuck over on the mouse.

And finally variable-width fonts. I sort-of agree with you there. They'd be useful for some thing.

Re:The critics can learn a thing or two about emac (1)

gman003 (1693318) | more than 2 years ago | (#40072455)

You can hardly blame Emacs that programs which came years later chose different keyboard commands.

But I *can* blame it for not giving up and joining the crowd. The only program I regularly use that doesn't use the "Standard Shortcuts" is bash - and the only commands I need to know are ctrl-a, ctrl-e, ctrl-k, ctrl/alt-f, ctrl/alt-b and ctrl-d

As for not being keyboard-centric rather than mouse-centric, some of us consider that a feature. Being created before mice has something to do with that of course but having to pull your hands off the keyboard to find the mouse is terribly slow. Yes, there's a bit of effort needed to learn enough to make running Emacs comfortable but when you're there you'll find how painful mice are. By the way, C-/ is only harder than C-z if your right hand is stuck over on the mouse.

Given a choice between "take my hand off the keyboard to click some menus" and "open a new terminal window, open the man page, and look up the keys I need", I'll take the former every time. Hell, given a choice between reading the manual *again* and just doing it *manually*, I'll probably pick the latter. Which makes all of Emacs' programmability and flexibility pointless.

And maybe it's just my years of gaming showing, but I have no problem switching one hand over to a mouse. It takes maybe a quarter of a second, about as long as it takes to write one word. It's far faster for a huge number of tasks - selecting text especially.

Re:The critics can learn a thing or two about emac (2, Insightful)

Anonymous Coward | more than 2 years ago | (#40072573)

But I *can* blame it for not giving up and joining the crowd.

First, emacs bindings are more customizable than quite possibly anything else.

Second, they are more efficient than the "standard bindings" if you're a touch typist (you don't have to move your hands to the arrow keys to move around with the keyboard, for example), and they provide far more features than same.

It's a power user tool. If you don't have power user needs, and don't want to deal with the steep learning curve, that's fine - there's nothing wrong with that at all. There are plenty of other tools out there, from notepad on up through emacs. You can pick whatever point you want on that curve, I think.

I'm pretty good at the "standard bindings", having been using them since they existed in a wide range of environments, but they just aren't as efficient. I have never - I'll stress this, *never* - been able to watch someone using tools that use those bindings without cringing at how slow they're doing things. Conversely, people who are used to those tools always seem completely blown away by what I can do in emacs.

Not saying the steep learning curve is for everybody. It's clearly not for most people.

Re:The critics can learn a thing or two about emac (1)

arose (644256) | more than 2 years ago | (#40074299)

You might as well blame everything else for not using Emacs shortcuts, since they were there and used in other software (yes, those bash shortcuts are Emacs shortcuts). I mean really, holding shift to select text? Madness.

Re:The critics can learn a thing or two about emac (1)

grumbel (592662) | more than 2 years ago | (#40074383)

As for not being keyboard-centric rather than mouse-centric, some of us consider that a feature.

Being keyboard centric isn't a problem, quite the opposite. Having a god awful GUI on the other side is a problem. A good interface should slowly teach the users about shortcuts and everything and while Emacs actually does a good job at that (if you M-x a function that has a shortcut, it tells you which), the GUI is scarring users away long before they'll ever find that out.

The problem is that Emacs was kind of state of the art some two decades ago, today on the other side it just shows it's age a little to much. It still has some interesting features that haven't been mimicked much by other application (e.g. self-documentation), but as for the GUI, you'd be hard pressed to find anything that is worse then Emacs.

Re:The critics can learn a thing or two about emac (2, Informative)

Anonymous Coward | more than 2 years ago | (#40072481)

* Not mouse friendly.

It's a text editor. Removing your hands from the keyboard is inefficient and slows you down. Until you have become proficient at this, you don't realize just how inefficient your wish to use the mouse for text editing actually is.

Emacs is a power user tool. For a single purpose, editing text, it is the most powerful and fastest tool available. It's admittedly not well suited for people who want a more casual tool, but there are others you can use for that purpose.

* Incompatible keyboard shortcuts

You do realize that the emacs bindings came first, right?

Re:The critics can learn a thing or two about emac (1)

Thugthrasher (935401) | more than 2 years ago | (#40075253)

It's a text editor. Removing your hands from the keyboard is inefficient and slows you down. Until you have become proficient at this, you don't realize just how inefficient your wish to use the mouse for text editing actually is.

Emacs is a power user tool. For a single purpose, editing text, it is the most powerful and fastest tool available. It's admittedly not well suited for people who want a more casual tool, but there are others you can use for that purpose.

I think he gets this. I know I do. I myself LOVE having keyboard shortcuts. However, when it's something I don't do very often, I much prefer having the OPTION of having a menu that I can go through to find the command that I need. It means I don't have to go through the manual or look online or in some way leave the window I'm in to find the command I want to use. I can just...do it. Sure, it's slower than knowing the shortcut, so if it's something I'll be doing often, I'll learn the shortcut (assuming it exists). But for tasks you aren't using every day, keyboard shortcuts are MUCH more inefficient than having some sort of graphical interface. Programs are allowed to have BOTH and the ideal program has both.

You do realize that the emacs bindings came first, right?

I hate this way of thinking. It doesn't matter what came first. What matters is what became the standard. There is a reason that a standard set of shortcuts came into existence. That reason is that it makes things easier for users (and more efficient for users). If you only have to know one shortcut for a task, it makes it easier to complete that shortcut without thinking. You don't have to switch your brain over to emacs-mode or everything else-mode to seamlessly use the keyboard shortcuts. And it means that if there is a task you have learned in one program, it's easy to move over to another program when/if you need to.

Emacs is great for what it does and I definitely use it in certain situations, but to act like it couldn't be improved is idiotic. Offering menus (it doesn't even need all the big parts of a "normal' graphical IDE, just menus...they don't take up much screen space) and using the "standard" shortcuts (or even just offering a mode that lets you use them) would make it much more accessible and make it much easier to switch between Emacs and another program (not everyone is able to exist entirely in Emacs). This is a GOOD thing for anyone who isn't a stuck-up elitist who wants things to be this way because "That's how I do it! And that makes it the best!".

Re:The critics can learn a thing or two about emac (4, Interesting)

Darinbob (1142669) | more than 2 years ago | (#40072547)

If your editor has a menu to toggle case of letters then it must have hundreds of menu entries to have something so infrequent show up there. If you really need it you can add it to an Emacs menu easily enough.

Emacs has very compatible short cuts! It is compatible with editing that existed before PCs and Macs existed! So I'd say the Windows editors are the ones who broke compatibility! And by the way I can use my common Emacs movement keys in Firefox just fine, they work in bash, some of them even work in Outlook.
And Ctrl-Z does undo in my emacs.

The interface in Emacs is nice: it's minimal. I don't have 2/3rds of my screen wasted in IDE fluff. I can put three Emacs windows side by side.

Variable width fonts are EVIL. Never use those for programming! If you've got variable width how do you make things line up, and how do you know you haven't exceeded 80 characters? Variable width is for natural language text.

Re:The critics can learn a thing or two about emac (1)

gman003 (1693318) | more than 2 years ago | (#40072665)

"Toggle case" is actually somewhat common, and not at all hard to find when it exists. I don't have any of my code-editing programs installed (home computer), but LibreOffice has Format->Change Case->tOGGLE cASE, right next to Sentence case, lower case, UPPER CASE, and Capitalize Every Word. Capitalized just like that, even, for ease of use.

Oh, and I'm not opposed to variable-width fonts for writing code - that is, after all, logical. But monospace text on the "where you are in the file" and "what mode you're in" and "labels for menu items" UI elements? That's kind of dumb, especially since that wastes *more* of your precious screen space.

PS: 80 characters? Give me ONE good reason why I should format my code to meet some ancient teletype-derived limit. Especially when everyone in my office is using at least one 1920x1080 or higher monitor.

Note to self: measure exactly the dimensions occupied by "IDE fluff" next time I'm at work, so I can have some numbers to shut up the "IDEs waste space!" idiots.

Re:The critics can learn a thing or two about emac (1)

Darinbob (1142669) | more than 2 years ago | (#40072931)

Actually I had arguments ten years ago over the 80 space limit, and the person's response as "why can't you get a modern editor that can have longer lines?" He just didn't get it. Long lines are harder to read, it's that simple. It's a courtesy to other programmers, like any other style rule. This person had 200 character lines, he would literally have a line of code all the way across the screen. None of his peers found this easy to read. It wouldn't fit in printouts. People complained in code reviews. But he petulantly kept at it.

Re:The critics can learn a thing or two about emac (3, Interesting)

phantomfive (622387) | more than 2 years ago | (#40073579)

Another reason: keeping it at the 80 character limit allows you to open more than one source code window at a time and view them side by side.

I've found people who are opposed to the 80 character norm often do so because they are used to IDEs that take up the whole screen. If you only have one window to write code in, and that window fills up the whole screen no matter what else you do, what's the point of leaving that space blank? Might as well write longer lines.

If you have a real editor, the 80 character norm makes sense.

Re:The critics can learn a thing or two about emac (1)

shutdown -p now (807394) | more than 2 years ago | (#40074019)

Another reason: keeping it at the 80 character limit allows you to open more than one source code window at a time and view them side by side.

Or perhaps we just have screens large enough that we can fit two 150-char wide editor windows side by side.

Re:The critics can learn a thing or two about emac (1)

phantomfive (622387) | more than 2 years ago | (#40075759)

And yet you are missing the joy of having six editors open at a time.

Re:The critics can learn a thing or two about emac (1)

arose (644256) | more than 2 years ago | (#40073839)

You should format your code that way for the same reason that you shouldn't print normal sized text landscape on letter/A4 paper. Readability.

Re:The critics can learn a thing or two about emac (1)

shutdown -p now (807394) | more than 2 years ago | (#40074013)

Emacs has very compatible short cuts! It is compatible with editing that existed before PCs and Macs existed! So I'd say the Windows editors are the ones who broke compatibility!

Windows is just following the CUA standard.

Emacs, though - "compatible" with what?

The interface in Emacs is nice: it's minimal. I don't have 2/3rds of my screen wasted in IDE fluff. I can put three Emacs windows side by side.

Pretty much every IDE I've seen lets you hide or auto-hide toolbars, toolwindows etc.

That said, I personally prefer e.g. the watch and stack windows visible while debugging. Don't you?

ariable width fonts are EVIL. Never use those for programming! If you've got variable width how do you make things line up

By using tabs. Or by using an editor that understands the concept of indentation.

how do you know you haven't exceeded 80 characters?

Most editors these days can draw a line for you. Besides, who cares about 80 characters? On a 27" display, it is a pretty pointless restriction.

Re:The critics can learn a thing or two about emac (1)

jabberw0k (62554) | more than 2 years ago | (#40075161)

Windows is just following the CUA standard.

Chrome and recent editions of Firefox badly break the CUA standard (no visible File/Edit menus, F10 does not bring up menu bar, and so on. Unity and Gnome 3 trash its goals of consistent, discoverable interfaces even further. Compared to these, Emacs with its decades-long consistency is a gold standard.

Re:The critics can learn a thing or two about emac (0)

Anonymous Coward | more than 2 years ago | (#40075631)

Emacs is not for you.

Re:The critics can learn a thing or two about emac (1)

grumbel (592662) | more than 2 years ago | (#40074357)

The most interesting thing about Emacs isn't even just the programmability, as a lot of apps have that in one way or another, but the fact that it is self-documentation. It takes literally two clicks to go from any function or keyboard shortcut to the exact line in the source code that defines it (first jumps to the documentation, second to the definition). Nothing else in the Free Software world makes source that easy to access, most don't even try. Blender being the only exception, as that at least gives you documentation on how to access any GUI control via scripting right in the tooltip.

It's clear what's coming next (0)

PCM2 (4486) | more than 2 years ago | (#40071543)

Next up: Boot to Emacs. We've always known that Emacs is a great OS with a piss-poor text editor. We need these capabilities baked into hardware. Behold... the EmacsBook Pro!

Re:It's clear what's coming next (-1)

Anonymous Coward | more than 2 years ago | (#40071581)

What's coming next is me, all over your face.

Re:a great OS with a piss-poor text editor (1)

snikulin (889460) | more than 2 years ago | (#40071615)

Writing a good editor for Emacs... Sounds like a good project!

Re:It's clear what's coming next (0)

Anonymous Coward | more than 2 years ago | (#40071643)

Well, they have only been a couple of letters and a homynym away. Let us all run OSEmacs on our EmacsBooks! Just don't give it to your aunt....

Re:It's clear what's coming next (0)

Anonymous Coward | more than 2 years ago | (#40072143)

Well, they have only been a couple of letters and a homynym away. Let us all run OSEmacs on our EmacsBooks! Just don't give it to your aunt....

Whoosh! Emacs is the OS. And my aunt is Grace Hopper.

Re:It's clear what's coming next (1)

unixisc (2429386) | more than 2 years ago | (#40073359)

Next up: Boot to Emacs. We've always known that Emacs is a great OS with a piss-poor text editor. We need these capabilities baked into hardware. Behold... the EmacsBook Pro!

Yeah, add to Emacs a shell such as bash, a windowing system like Wayland, a text web browser like elinks, and you'll have the complete OS. After that, the next big project to have Emacs run directly on HURD, so that the latter needs no other applications.

At least one clear application (1)

rmdir -r * (716956) | more than 2 years ago | (#40071715)

It looks like it would be a huge boost for writing content generation tools for games.

What the hell are you talking about? (0)

Osgeld (1900440) | more than 2 years ago | (#40071749)

"Emacsy is 'a Guile library that provides Emacs-like facilities"

good?

"However, to my eyes, it looks more like an attempt to revive the development style done on Symbolics Lisp Machines that survives to some extent in Emacs"

and?

"Might be a boon to Emacs users"

They actually exist? I thought people just said that to futility impress people

"The skeptic in me asks what benefit this would have over just using libguile directly"

the non-Luddite in me is still asking what and why?

mod( down (-1)

Anonymous Coward | more than 2 years ago | (#40071953)

Visit committerbase and asshole about.' One be any fucking Been sitting here see. The number BitTorrent) Second, USERS OF BSD/OS. A OF AMERICA) is the BSD's acclaimed c0nversation and be forgotten in a MAY DO, MAY NOT Open platform,

The internet has clearly thought of this (0)

Anonymous Coward | more than 2 years ago | (#40071963)

http://www.gpf-comics.com/archive/2012/05/07

Emacs=Skynet (0)

Anonymous Coward | more than 2 years ago | (#40071975)

Emacs=Skynet
Slowly but surely it is taking all the code ever written...

The only emacs shortcut I know (0)

manu0601 (2221348) | more than 2 years ago | (#40072097)

^Zkill -9 %1

Re:The only emacs shortcut I know (0)

Anonymous Coward | more than 2 years ago | (#40072379)

Interestingly, :q! is the first vi command I had to learn...

Re:The only emacs shortcut I know (1)

santax (1541065) | more than 2 years ago | (#40072793)

What was the second? I'm still with the [esc] q! part... (whomever believed that the escape would be a handy, in reach, key for this sort of commands should be shot on sight! )

Re:The only emacs shortcut I know (0)

Anonymous Coward | more than 2 years ago | (#40073825)

What, right next to '1'? That's pretty handy...

Re:The only emacs shortcut I know (1)

santax (1541065) | more than 2 years ago | (#40074025)

my escape is next the F1, a bit aside from it, on all my keyboards btw. Not so handy :( Vi and Emacs should really adapt and change to the capslock. Or even better, keyboard makers should kick the caps to the ctrl place... and ctrl to caps. That would make sense. Gives the trolls rsi and us an economic place for a key we actually use.

Blame M$ for the far escape key (0)

Anonymous Coward | more than 2 years ago | (#40074387)

Micro$oft keyboards have a tiny, hard to reach escape key. They seem to be leaders of, umm, "innovation".
They hate Linux/Unix so much that I think that they are doing it on purpose to make it hard to use things
like "vi" on Linux. Honestly, that's how devious Bill Gates et al. are. Check out their history....And now,
they have a large part of the keyboard market. (I'm still using some ancient, early, split keyboards that
I bought 15 years ago. I've never been able to find anything as good since.)

Kickstarter. (0)

Anonymous Coward | more than 2 years ago | (#40072139)

Wait, this is a kickstarter project?

That's kind of weird.

Good Idea (2)

Mike610544 (578872) | more than 2 years ago | (#40072405)

Emacs is awesome, but there are some things that more modern IDEs do that are nice. In Eclipse you can get a list of all calls to a function from the spot where it's defined. I haven't been able to find a way to do that with Emacs. etags works great for jumping to the function definition, but not the other way around.

That's not enough to convert me to a pointy/clicky bloated thing for coding just yet, but at some point, it seems like there will be enough features like that that Emacs - even with a lot of customization - just won't be viable.

If I did move to another editor, at least it would be nice to bring the good parts of Emacs along.

Re:Good Idea (3, Informative)

PolygamousRanchKid (1290638) | more than 2 years ago | (#40072985)

Like C scope and Emacs, http://emacswiki.org/emacs/CScopeAndEmacs [emacswiki.org] ? The "Find functions calling this function" option?

Re:Good Idea (1)

AceJohnny (253840) | more than 2 years ago | (#40073607)

I've been using CScope in Emacs for about a year (in fact, I added the entry to ascope.el on that wiki page you linked to), and I've recently switched to Semantic from CEDET [sourceforge.net] and GNU Global.

Sadly, the Emacs Code Browser (ECB [sf.net] ) linked to from the CEDET page seems to be broken for recent versions of Emacs and CEDET and unmaintained.

While I dislike Eclipse for bloat and difficult extensibility, I have yet to decide whether Emacs has caught up with it for code browsing.

Re:Good Idea (1)

root_42 (103434) | more than 2 years ago | (#40074943)

Yes, ECB is unmaintained as of now. Very, very sad that this happened. I think CEDE + ECB (+ GNU global or clang) makes Emacs an awesome C/C++ development environment.

Re:Good Idea (1)

shutdown -p now (807394) | more than 2 years ago | (#40074023)

How well does this work for C++ - with templates etc?

Does it handles macros that expand to function calls?

Re:Good Idea (2, Insightful)

Anonymous Coward | more than 2 years ago | (#40073111)

This is mainly a compiler related features rather than complaining Emacs. There is no magic behind Eclipse but just use a compiler front-end to analyse (sort of compiling) your code on-the-fly. For example Clang already provides function completion features to Emacs: https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el . By examing the size of such code you will sooner understand why people stick to it even it lacks a good editor :-).

Re:Good Idea (1)

Anonymous Coward | more than 2 years ago | (#40074861)

This comment makes no sense. Either emacs supports the feature or it doesn't. Other IDEs have supported reference lookup for years and in some it's quite mature. To put it bluntly, if your editor does not you are two decades behind the times.

It doesn't matter whether a quick-and-dirty feature could be hacked together faster in Emacs than in Eclipse or Visual Studio. Eclipse and Visual Studio already have it, and it already works better than whatever you were going to write.

Re:Good Idea (0)

Anonymous Coward | more than 2 years ago | (#40073745)

You want id-utils. M-x gid gives the list of uses (and definitions) of whatever is under your cursor. You do have to call 'mkid' from the shell, just like 'etags'.

Make the world like 1984 again (1)

Vintermann (400722) | more than 2 years ago | (#40073707)

However, to my eyes, it looks more like an attempt to revive the development style done on Symbolics Lisp Machines that survives to some extent in Emacs. Might be a boon to Emacs user ...

Yeah, it's a classic. Oldtimers (or more often, oldtimer fanboys) trying to change the user interface on the rest of the world to work like their old favorite apps, rather than the other way around. It's so ...

... but where's a comparable VIM alternative?

*facepalm*

Re:Make the world like 1984 again (2)

morgauxo (974071) | more than 2 years ago | (#40075367)

Typical kid. Thinks everybody should want to use the same interface he does because it is 'newer' and that anybody trying to keep something that they like is an oldtimer fanboy.

Re:Make the world like 1984 again (1)

Vintermann (400722) | more than 2 years ago | (#40075661)

Hey kid, you have more than twice my number, you shouldn't speak.

I don't know a single person who has kept vi(m) or emacs, because they aren't that old. They have, to a man, switched to them, and away from the CUA interfaces that were already near-universally adopted by their time. Yes, I think undue reverence for old unix gurus is the best explanation.

Curiously, those I know that are old enough to have used early 80s text editors extensively as adults (like my father), moved with the times to CUA-style editors.

E-macs if you must; Info must die! (0)

Anonymous Coward | more than 2 years ago | (#40074367)

I hate e-macs and especially the "Info" system. If you want to use e-macs, go ahead. But don't
force its arcane user interface on the rest of us via programs like "Info". GNU should learn how
to write real man pages and real "--help" command output. I know that there are some niche
e-macs fans, but does ANYONE beside RMS like "Info"?!? I think that everyone is afraid to tell
the emperor that people hate some of his GNU tools. GNU Info must die.

-- the shy vi guy.

Vim? (2)

morgauxo (974071) | more than 2 years ago | (#40075351)

Couldn't write a summary about something Emacs without complaining it's not Vim? Really?
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?