Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
comedyblissoption
Mar 15, 2006

Scaevolus posted:

Can emacs wrap lines?
This is crucial for my own
programming needs. Thanks.
M-x visual-lines-mode

M-x toggle-truncate-lines if you want lines to not wrap

Adbot
ADBOT LOVES YOU

comedyblissoption
Mar 15, 2006

Emacs/VIM have much better and quicker searching, editing, and navigation of text than typically popular IDEs. Even though text editing is a principle element of programming, editing and navigating text in typical IDEs seems almost like an afterthought in comparison to EMACs/VIM. Even if you ignore glaringly missing text editing features from those IDEs, just the little things for even the basic functions are done better and all add up.

Zombywuf mentioned dabbrev-expand as being critical to him. It is a function in emacs binded to M-/ by default that expands your currently typed text to a matching text across all your open buffers. You can repeatedly press it for different matches, and it tells you what buffers it is expanding from.

Split screens and windows are very easy to set up and each split screen can have its own mode.

Emacs has keyboard macros and the editor itself is extensible on the fly. All your customizations can be saved and loaded through a single file for portability.

I consider one of the greatest features in Emacs is that virtually everything is unified together in text buffers. You are not prevented from using the text editing and searching capabilities on any buffer window simply because it is a modal dialog or GUI widget.

I think Steve Yegge put it pretty well why certain GUI conventions are so ridiculous:

quote:

[Dialog Boxes: The Root of All Evil

Emacs is an incredibly powerful editor, but a few design choices in particular really stand out as being the biggest individual contributors. One of them is the fact that Emacs has no dialog boxes. This was actually a requirement in order to give Emacs its full functionality while running in a text-only terminal window. But by happy accident, it's also one of the key features that helps make Emacs so insanely powerful.

Dialog boxes suck. For starters, they always have focus issues, and often cause poorly-designed applications to lock up or fail to refresh while the dialog is open. And dialog boxes never seem to play along with any customizations to your video mode. For example, if you set up a dual-monitor display using 2 cards, the application dialogs in Windows will tend to pop up in the wrong window, making the whole experience a really annoying pain in the rear end.

Dialogs sometimes come up in unpredictable places even on single-monitor machines. And even in well-designed applications like the Microsoft Office suite, modal dialogs can still wind up buried behind a bunch of other windows on your screen, which makes the application seem like it's totally unresponsive until you find the rogue dialog and bring it to the front.

For some strange reason, dialog boxes are often non-resizable. It's the opposite for application windows: those are almost always resizable, and app designers usually take great pains to make the UI rearrange to fill the space nicely if you resize the window. But with dialogs, the default seems to be non-resizable, possibly because on most OSes, dialogs are a screwed-up hack that was added on long after the window manager was designed without dialogs in mind. (Guess how I know this.) Hell, they're even a mess in Java Swing.

And don't get me started on the buttons. We've had dialog boxes in GUIs for at least 25 years, but people still can't agree on a standard set of buttons for them, or even a standard place to put the buttons. Some dialogs put them in the title bar, some on the bottom, some on the right side. And it's rarely 100% clear what will happen if you use the Window controls in the title bar to close a dialog, bypassing its button choices. The whole experience is a giant crap sandwich, and everyone knows it intuitively, but it's just how everyone assumes things have to be.

But the problem with dialog boxes goes even deeper than the focus, sizing and positioning problems. Dialogs are never, ever full peers of the rest of the application UI. If you define any keyboard macros (not just in Emacs -- in any app, such as Excel or Word), they won't work in dialog boxes. If the dialog has a scrollable widget, you have no options for navigating other than by using the scrollbar.

To illustrate, fire up Internet Explorer and choose Internet Options from the Tools menu. Go to the Advanced tab. There they are: all your pathetic global customization options for IE. If you want to find a particular option, you have to scroll slowly, looking for it. You can't use Edit/Find because the dialog is, of course, modal. And the dialog is, of course, also non-resizable. Most dialogs are like this.

The criminal thing is that this problem is not necessarily even an inherent problem with GUIs. The designers of the GUIs are the culprits here by creating an intentionally constrained implementation of many features.

comedyblissoption
Mar 15, 2006

It seems emacs really needs packages (or bundled modules) for specific language environments. I'm thinking of packages like http://common-lisp.net/project/lispbox/. There's a lot to be said for just having stuff work 'out of the box' instead of having to search down all the relevant basic modules and executables (that could be packaged) you need to make developing code in whatever environment easier and then having to figure out how to get emacs to load those modules and then make configurations that most users would want.

comedyblissoption
Mar 15, 2006

Why don't more people hit left ctrl with where their knuckle meets the palm rather than the pinky? People seem to go through a lot of hoops on windows to rebind ctrl to caps.

comedyblissoption
Mar 15, 2006

other editors typically want to give you rsi by making basic text navigation and editing require constantly moving your hands to another part of the keyboard or your mouse so it's no surprise

  • Locked thread