i've been in emacs community for over a decade now. (since 1998)
it's painful to see people who do not use emacs, and never will, and
these people will laugh at you if you try to even begin preaching
emacs gospels lightly. (these includes vast majorit of technically
competent people, such as professors, mathematicians. And most painful
is when it is people who are newer generation of linux programers, web
app dev (html5/js), and the vast emergent digital field (computer
engineers and artists who work in 3D tools, audio/video, gaming, smart
phones, tablets. (they are not typically what you'd call “programers”,
but they work with hardcore tech specs all day)))
GNU emacs has made a few strides in UI improvement in the past 3
years. I've fought vigorously about emacs UI improvement in past 6
years.
there is 1 thing, that if emacs adopts, that i guarantee that emacs
user base will increase by 10 fold.
That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
paste, and that there must be a Redo command.
turning on cua-mode isn't a solution, because cua-mode adds complexity
to UI. It makes the key press time-sensitive and confusing. However,
it can be a first step. Better is just to fundamentally re-wire
emacs's C-x and C-c.
this need to be done asap. As i have said, it will happen, maybe
several more years later in the path of emacs's increasing obscurity.
sooner is better than later.
i want to keep this post short. I won't go into lots of explanations,
hows, whys. I've wrote ~30 articles in the past about details. See
http://xahlee.org/emacs/emacs_modernization.html Spread this in anyway
you can. In blogs, posts, discussions, chatting with friends in
meatspace, or spend bug reports to GNU ...
> i've been in emacs community for over a decade now. (since 1998)
> [...]
I've been using Emacs since 1975.
> [...]
> it's painful to see people who do not use emacs, and never will, and
> these people will laugh at you if you try to even begin preaching
> emacs gospels lightly. (these includes vast majorit of technically
> competent people, such as professors, mathematicians. And most painful
> is when it is people who are newer generation of linux programers, web
> app dev (html5/js), and the vast emergent digital field (computer
> engineers and artists who work in 3D tools, audio/video, gaming, smart
> phones, tablets. (they are not typically what you'd call “programers”,
> but they work with hardcore tech specs all day)))
HP-Labs (Palo Alto CA) had a number of DECsystem-20s in the basement
of HP's Building 5 along Page Mill Road. Everyone at HP-Labs, including
the secretaries, used Emacs via terminals connected to the DEC-20s.
It took an HP secretary only about 20-30 minutes to become reasonably
proficient using Emacs after running Emacs' built-in tutorial.
> [...]
> there is 1 thing, that if emacs adopts, that i guarantee that emacs
> user base will increase by 10 fold.
Where is the research data supporting that hypothesis?
> That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
> paste, and that there must be a Redo command.
Adopting a Microsoft Windows convention for mostly Linux and UNIX
users? Absurd.
> [...]
> i want to keep this post short. I won't go into lots of explanations,
> hows, whys. I've wrote ~30 articles in the past about details. See
> http://xahlee.org/emacs/emacs_modernization.html Spread this in anyway
> you can. In blogs, posts, discussions, chatting with friends in
> meatspace, or spend bug reports to GNU ...
Most of us have real work to do for which Emacs has worked fine for 37
years now with NO compelling reason to change.
Until you can produce research results supporting your claim(s), why waste
anyone's time? You can customize YOUR copy of Emacs any way you want. Why
don't you do that and then present your version of Emacs for review. It's
your idea -- YOU do the work if you want to see any change(s).
Thad Floryan <t...@thadlabs.com> writes:
> On 2/27/2012 4:47 PM, Xah Lee wrote:
>> That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
>> paste, and that there must be a Redo command.
> Adopting a Microsoft Windows convention for mostly Linux and UNIX
> users? Absurd.
Yes, that is absurd. I've been a Macintosh programmer for almost ten
years before I started to use emacs, and I had no problem switching from
Command-Z, Command-X, Command-C, and Command-V to C-x u, C-w, M-w and
C-y. This is really not a problem.
> Until you can produce research results supporting your claim(s), why waste
> anyone's time? You can customize YOUR copy of Emacs any way you want. Why
> don't you do that and then present your version of Emacs for review. It's
> your idea -- YOU do the work if you want to see any change(s).
On Mon, 27 Feb 2012 16:47:16 -0800, Xah Lee wrote:
> it's painful to see people who do not use emacs, and never will, and
> these people will laugh at you if you try to even begin preaching emacs
> gospels lightly. (these includes vast majorit of technically competent
> people, such as professors, mathematicians. And most painful is when it
> is people who are newer generation of linux programers, web app dev
> (html5/js), and the vast emergent digital field (computer engineers and
> artists who work in 3D tools, audio/video, gaming, smart phones,
> tablets. (they are not typically what you'd call “programers”, but they
> work with hardcore tech specs all day)))
If it's any consolation to you, I've just started using emacs, after spending endless hours struggling with other tools - ranging from vi to various GUI-based IDE's like kdevelop, code::blocks, the Qt suite, and others. All very nice, but they often wound up fighting me, trying to get me to do things their way rather than how I wanted to do them.
I do find the emacs key bindings confusing and difficult to use, but then, I had the same problem when I first learned the other versions.
Can't be helped.
I don't know whether it's so important to use C-x, C-z, C-v, etc. It would be convenient, but C-x is so vital to emacs's basic interface that I'm not sure it makes sense to mess with it.
Whatever problems these key bindings create, they are more than compensated for by emacs's doing "the right thing" almost all the time.
Not only doesn't it fight me, it actually does most of the things I'd want it to do, without my having to ask.
Oh, yeah... and if I feel something's missing, I can always write it myself using emacs lisp.
I've been programming for 30-odd years now; I wish I had been less biased and tried emacs years ago. It would have saved me a lot of aggravation... but I was certain that the newer tools would be better.
-- A girl's conscience doesn't really keep her from doing anything wrong--
it merely keeps her from enjoying it.
> there is 1 thing, that if emacs adopts, that i guarantee that emacs
> user base will increase by 10 fold.
> That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
> paste, and that there must be a Redo command.
There is another widespread standard:
Ctrl-Ins, Shift-Ins, Del, Shift-Del
It works fine in Windows and it is easy to teach Emacs to recognize them.
XEmacs supported them out-of-box, together with other CUA niceties, actually it worked better than cua-mode in Emacs.
Still we didn't see 10 fold increase in user count, on contrary...
What prevents you from making XahEmacs bundle which would do this "modernization"?
"Pascal J. Bourguignon" <p...@informatimago.com> writes:
> Thad Floryan <t...@thadlabs.com> writes:
>> On 2/27/2012 4:47 PM, Xah Lee wrote:
>>> That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
>>> paste, and that there must be a Redo command.
>> Adopting a Microsoft Windows convention for mostly Linux and UNIX
>> users? Absurd.
> Yes, that is absurd. I've been a Macintosh programmer for almost ten
> years before I started to use emacs, and I had no problem switching from
> Command-Z, Command-X, Command-C, and Command-V to C-x u, C-w, M-w and
> C-y. This is really not a problem.
On 2月28日, 上午9时47分, Xah Lee <xah...@gmail.com> wrote:
> there is 1 thing, that if emacs adopts, that i guarantee that emacs
> user base will increase by 10 fold.
> That is: Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V, must be undo, cut, copy,
> paste, and that there must be a Redo command.
[...]
> this need to be done asap. As i have said, it will happen, maybe
> several more years later in the path of emacs's increasing obscurity.
> sooner is better than later.
Well, I don't see the Ctrl+Z, Ctrl+X, Ctrl+C, Ctrl+V are actual any
obstacles to appealing users to switch to emacs gang.
For me, I just enjoy Ctrl-Shift--, Ctrl-w, Meta-w, Ctrl-y, Meta-y so
much.
I just want any edtor's undo, cut, copy, paste keybindings are like
emacs ones.
To be win32-ized not means to be modernized.
P.S.
I think Emacs buffer/window/frame management (especially positioning
them in window environment) is not very polished (or say not very easy
to navigate or place) instead,
comparing with some other modernized editor.
But maybe it is the price to uniform the user experience in text based
and window based environment.
Q: Aquamacs already has the modernization you speak of.
A:
Aquamacs is a emacs variant based on GNU Emacs, for Apple's Macintosh
computers, created in about 2004 by David Reitter. Aquamacs modifies
emacs so that its user interface follows modern (Mac OS X)
conventions. For example, copy/cut/paste shortcuts are 【⌘ Cmd+c/x/v】
Open file is 【⌘ Cmd+o】, saving is 【⌘ Cmd+s】, save-as is 【⌘ Cmd+Shift
+s】. Close window is 【⌘ Cmd+w】. Undo is 【⌘ Cmd+z】, and there is a redo
command by default, with shortcut 【⌘ Cmd+Shift+z】. It opens each file/
buffer in a new window. By following a modern user interface, almost
all points mentioned in this article are fixed in Aquamacs. For more
info, see: Wikipedia Aquamacs and Aquamac's home page at:
Aquamacs.org.
As a emacs variant, it does help in spreading the idea that emacs user
interface should be modernized. However, a third-party variant
software does not change the fact that GNU emacs itself needs to be
modernized.
For example, suppose Microsoft Word remained with its DOS era
interface, for example, file is opened with Esc (to open the menus), t
(for Transfer), l (for Load). Suppose Microsoft hired a third party to
release a variant called MS AquaWord. This would not help Microsoft
Word the software itself or its image perceived by the populace, and
is likely to complicate the issue around Microsoft Word.
Also, Aquamacs changes emacs to conform to Apple's user interface
guidelines as much as possible. For example, besides changing the many
shortcuts, Aquamacs open each file in a new window (i.e. what emacs
calls frame). So, dired is opened in its own window. “shell-command”
is opened in a new window. Emacs info files 【Ctrl+h i】 is opened in a
new window. Using the menu 〖Help▸Aquamacs Help〗 launches Apple's help
application.
Aquamacs makes emacs palpable for Mac users, but in many ways,
Aquamacs imposes a major change of operation for people already
familiar with emacs. Its modernization of emacs, has priority with
Mac's way of operation than emacs way.
Aquamacs is only a Mac application. Its user interface changes, is not
wholly compatible with Microsoft Windows's user interface guidelines
in minor details. (For exmaple, shortcut modifiers are different (Ctrl
vs ⌘ Cmd), some shortcut keys differ, the ways to invoke menus
differ.) Some 90% of computer users world wide are familiar with
Window's user interface and are using PC keyboards. If we consider
improving emacs's user interface, then it is important to consider the
familarity of computer users by majority.
In summary, when we consider modernization, we could create a version
for Mac, a version for Windows, each follows as much as possible of
each operating system's user interface guidelines. Alternatively, we
can consider modernization based on emacs's unique ways of operation
(as opposed changing emacs to comform to a particular company's UI
standard that are currently most popular).
On Feb 28, 6:13 pm, "oni...@gmail.com" <oni...@gmail.com> wrote:
« To be win32-ized not means to be modernized.»
The ZXCV keys are standard on Linuxes. Technically and Historically,
they origin from Apple and or IBM, depending on your take, before
Microsoft was born.
If you haven't tried, check Linux out. One of the most popular distro
is http://www.ubuntu.com/ and it's free. In many ways, it's as easy
to use as Windows.
the experience you mentioned about some emacs key being destructive on
other apps also resonate with me.
my first 6 years of emacs is with emacs default keys, using it
exclusively on text terminal (1998 to 2004 〔 http://xahlee.org/emacs/emacs_vs_xemacs.html 〕). And i was a mac user (1991 to 2009 〔 http://xahlee.org/mswin/switch_to_windows.html 〕). One problem is that i would often by habit press 【Meta+w】 in the
wrong app, so, it'll close the window on the Mac. Very painful. So, i
developed a habit to always press 【Esc w】 instead to copy in emacs.
i've done extensive keyboard shortcut studies. Not related directly to
the subject in this thread, but the emacs key set, is in fact one the
most inefficient. (See:〈Why Emacs's Keyboard Shortcuts are Painful〉 @
http://xahlee.org/emacs/emacs_kb_shortcuts_pain.html )
for those CUA mode users, please speak out. The process to get GNU
Emacs to adop will not be easy, but we need to speak out, even if
often means you'll be sneered. We are already getting more people to
speak out in past 3 years. When more and more emacs people hear about
this, it'll be more natural, and hopefully we get GNU Emacs to have
CUA mode on by default, and for linuxes to have emacs as the default
editor, and newer programers can easily get hooked to emacs's real
power and win for emacs dev.
Xah
------------------
On Feb 29, 6:30 am, Raffaele Ricciardi <rfflrc...@gmail.com> wrote:
On 02/29/2012 03:13 AM, Stefan Monnier wrote:
>> aggravation... but I was certain that the newer tools would be better.
> Remember, they're not newer, they're only younger.
This. You can't teach an old dog new tricks. Experienced Emacs users
will never see any reason to change the interface they are used to.
OTOH, I would bet my money a new editor would have *zero* chances of
success without understanding CUA shortcuts, or worse, with remapping
those shortcuts to something else, like Emacs does.
First time I tried Emacs, I gave up after half an hour or so because
it
was frustrating having an editor "misinterpreting" common shortcuts.
You know, it's not like you stay in Emacs all the time as soon as you
begin using it. And when the other ten applications you are using
have
the same shortcuts, whilst Emacs doesn't, it's not like you'll think
"Oh! It's just different for historical reasons." Worse: some Emacs
shortcuts may have "destructive" effects in other applications (hit C-
w
- Emacs' kill-region - instead of C-x - CUA's cut - by accident in
your
browser and you'll close a tab where you were filling some form, and
possibly lose the session if that tab was the last one). As a side
note, no matter how much I considered Opera as a great browser, I've
never switched to it because it doesn't share shortcuts with Internet
Explorer, Firefox and - later - Chrome and that has always annoyed the
heck out of me (yes, Opera allows you to remap its shortcuts, but the
procedure is cumbersome).
A few years passed by before I gave Emacs another shot, and that time
I
stayed because I discovered CUA. If it weren't for CUA, I wouldn't be
an enthusiastic Emacs user today, but had CUA been there from the
beginning, I'd have had a few more years of Emacs under my belt,
that's
for sure. And that Emacs is such a great tool - not just an editor - I
didn't realize until I achieved proficiency. It's not like I persisted
because *I knew* I was up for such a huge return of investment. Oh!
And
I have never committed to memory what Emacs' default shortcuts are for
copy, paste, undo, etc. Indeed, I have remapped other key-bindings to
mirror the other applications I'm using. Why should you think about
what application you're using before pressing any key? Context
switching
has a cost, and getting rid of it is a foundation for maximum
productivity.
On 2月29日, 下午12时03分, Xah Lee <xah...@gmail.com> wrote:
> On Feb 28, 6:13 pm, "oni...@gmail.com" <oni...@gmail.com> wrote:
> « To be win32-ized not means to be modernized.»
> The ZXCV keys are standard on Linuxes. Technically and Historically,
> they origin from Apple and or IBM, depending on your take, before
> Microsoft was born.
1. I see most of (GUI based, if I remember) OSes now adopt ZXCV keys
to fit into "a sort of convention".
But this sort of convention just doesn't seem like, say what i mean,
it hasn't to be a sensible "modernized way".
2. I mean it is just a choice of design before the system came out.
(Though I do really think the choice has some basis. But it is also a
case by case one.)
Example,
a. Besides the GUI part, the CLI part of linux/unix didn't adopt such
a convention, did them?
When you press Ctrl-c or Ctrl-z, you just sends out a signal even in
your GUI pseudo-terminal.
b. Well, bash also has an emacs-like key bindings for forwarding/
backwarding cursors, how does it feel like?
And more, when you use vi, you do not have to mess yourself with
combining ctrl/meta/shift to do cut/copy/pase/undo.
If you want to change the vi default keybindings to the "modernized
way", I think no user would ever like to touch vi anymore.
> If you haven't tried, check Linux out. One of the most popular distro
> ishttp://www.ubuntu.com/and it's free. In many ways, it's as easy
> to use as Windows.
I'm using several linuxes (including federa/ubuntu/gentoo) several
years.
And I do appreciate it has a keybindings like Windows for cut/copy/
paste. I don't hate 'em either.
On 3月1日, 上午7时58分, Xah Lee <xah...@gmail.com> wrote:
> hi Raffaele Ricciardi,
[...]
> CUA mode on by default, and for linuxes to have emacs as the default
> editor, and newer programers can easily get hooked to emacs's real
> power and win for emacs dev.
I think the reason that Emacs frightens people off is Elisp and the
powerful customization.
I think the reason that Emacs collects its fanatics is Elisp and the
powerful customization.
You have your choice, standing on your feet.
This sometimes appealing sometimes helplessly annoying.
So CUA-mode and the sort of ZXCV keybinding rework will not bring
folks back even it is on by default.
It is trivial changes comparing what the Emacsbeast are.
--------------------------------------------
Joking only:
Do you want to hear my suggestion on "modernization"?
If you really want to annoy hardcore emacs hacker,
why not bring 'em a powerful Voice-bindings like the Key-bindings.
So you say "Voice-Cut", "Voice-Copy", "Voice-Paste", rather than
touching your keyboards.
This is what canonical(HUD), apple(siri) is doing right now!
Emacs is instintively appropriate to do that and would be far more
better than those two above.
(You can teach emacs do what you say like you teach emacs do what you
type. What a powerful idea!)
On Wed, 29 Feb 2012 14:58:14 -0800, Xah Lee wrote:
Your argument cuts both ways:
> This. You can't teach an old dog new tricks. Experienced Emacs users
> will never see any reason to change the interface they are used to.
<snip>
> stayed because I discovered CUA. If it weren't for CUA, I wouldn't be
> an enthusiastic Emacs user today, but had CUA been there from the
Your insistence on CUA is similar to your claim that experienced emacs users won't see a reason to change the interface. Just as an experienced emacs user won't see much advantage in changing the emacs interface, you don't want to change your own "interface." No one wants to change the interface they've grown accustomed to. Why should they?
There is no good reason to change the emacs interface. It works for its users. There isn't even a particularly good reason to want to boost the number of emacs users, as far as I can see. People who find emacs useful, will use it. Those who don't, will use something else. What difference does it make how many people use any given tool? It's not a popularity contest. Multiply the revenues by ten, and you get just about the same number...
I am skeptical of studies showing emacs key bindings to be "inefficient." Certainly any unfamiliar key binding system will be inefficient for a person; but once he learns his way around, the efficiency goes up. Efficiency isn't so much a function of which keys are used, but how well a user manages to use them. That is a matter of practice. It seems reasonable to suspect that the studies were measuring the users' familiarity with the bindings.
I suppose one could argue that the layout of keys on a keyboard should be changed, because that is inefficient as well. The Dvorak keyboard is clearly more logical. But for most typists, the old Qwerty arrangement is most efficient, because that is what they've learned. Change to Dvorak and their efficiency will take a serious dive. Despite the obvious superiority of the Dvorak keyboard, efforts to encourage its adoption have been essentially futile. Qwerty is likely to remain until keyboard interface is completely replaced by something far better.
I will freely admit that you have a point about the emacs interface discouraging new users. Like you, it was many years before I seriously considered emacs as even a possibility, much less as my preferred editor/
OS (I'm only exaggerating a little bit - I've seen emacs described as a "nice OS, lacking only a decent editor"). But again - whose loss was this? Surely not yours. It was mine. Had I been more open-minded, I might have learned the emacs interface years earlier. My stubborn refusal came with a high price.
My gut tells me that it is unlikely the that emacs developers (who is that - just RMS?) are unlikely to make a change to the interface. After all, emacs is most likely the tool they themselves use; and as you say, they're not likely to want to change their own interface just to please someone else.
But surely someone out there - if not you, then some other lisp programmers - could come up with a customization module or macro or set of macros that would make all the desired changes. This could be presented to the developers and perhaps bundled with the rest of the program, available to whoever wants to use it. That way new users could have their CUA, and the "old dogs" could use their Escape-Meta-Alt-
Control-Shift interface. Everybody wins.
-- Hoare's Law of Large Problems:
Inside every large problem is a small problem struggling to get out.