Package: emacs;
Reported by: Tim Visher <tim.visher <at> gmail.com>
Date: Fri, 28 Oct 2011 16:08:01 UTC
Severity: wishlist
Found in version 24.0.90
To reply to this bug, email your comments to 9897 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#9897
; Package emacs
.
(Fri, 28 Oct 2011 16:08:02 GMT) Full text and rfc822 format available.Tim Visher <tim.visher <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Fri, 28 Oct 2011 16:08:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Tim Visher <tim.visher <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 24.0.90; w32 control character configuration is severely lacking compared to ns-win.el Date: Fri, 28 Oct 2011 11:14:06 -0400
This bug report will be sent to the Bug-GNU-Emacs mailing list and the GNU bug tracker at debbugs.gnu.org. Please check that the From: line contains a valid email address. After a delay of up to one day, you should receive an acknowledgement at that address. Please write in English if possible, as the Emacs maintainers usually do not have translators for other languages. Please describe exactly what actions triggered the bug, and the precise symptoms of the bug. If you can, give a recipe starting from `emacs -Q': I'm trying to configure what pressing Alt, Windows, Apps, and Control on a windows keyboard translates to in emacs. I use emacs on both Macs and Windows boxen and I'm used to configuring the keys on macs using ns-win.el bindings like: (if (boundp 'mac-command-modifier) (setq mac-command-modifier 'control)) (if (boundp 'mac-option-modifier) (setq mac-option-modifier 'meta)) (if (boundp 'mac-control-modifier) (setq mac-control-modifier 'super)) Compared to that library, the ability to configure what the meta keys map to on windows is severely lacking, not allowing configuration at all of what the control-modifier is mapped to, and providing only toggles for the windows keys and apps keys. I'm mainly just reporting this glaring inequality. If Emacs crashed, and you have the Emacs process in the gdb debugger, please include the output from the following gdb commands: `bt full' and `xbacktrace'. For information about debugging Emacs, please read the file /usr/local/Cellar/emacs/HEAD/share/emacs/24.0.90/etc/DEBUG. In GNU Emacs 24.0.90.1 (i386-apple-darwin10.8.0, NS apple-appkit-1038.36) of 2011-10-27 on 184-243-147-41.pools.spcsdns.net Windowing system distributor `Apple', version 10.3.1038 configured using `configure '--prefix=/usr/local/Cellar/emacs/HEAD' '--without-dbus' '--enable-locallisppath=/usr/local/share/emacs/site-lisp' '--infodir=/usr/local/Cellar/emacs/HEAD/share/info/emacs' '--with-ns' '--disable-ns-self-contained' 'CC=/usr/bin/llvm-gcc' 'CFLAGS=-O3 -march=core2 -w -pipe'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: nil value of $XMODIFIERS: nil locale-coding-system: nil default enable-multibyte-characters: t Major mode: Emacs-Lisp Minor modes in effect: hi-lock-mode: t recentf-mode: t erc-list-mode: t erc-menu-mode: t erc-autojoin-mode: t erc-ring-mode: t erc-networks-mode: t erc-pcomplete-mode: t erc-track-mode: t erc-track-minor-mode: t erc-match-mode: t erc-button-mode: t erc-fill-mode: t erc-stamp-mode: t erc-netsplit-mode: t eldoc-mode: t elisp-slime-nav-mode: t paredit-mode: t idle-highlight-mode: t textmate-mode: t glasses-mode: t whitespace-mode: t shell-dirtrack-mode: t erc-irccontrols-mode: t erc-noncommands-mode: t erc-move-to-prompt-mode: t erc-readonly-mode: t ido-ubiquitous: t show-paren-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t hs-minor-mode: t Recent input: o t SPC s e e i n g SPC a SPC s y s t e m SPC m a i l SPC i n SPC t h e SPC v a l i d SPC v a l u e s SPC o f SPC t h a t SPC v a r <return> a h <return> m e s s a g e - s e n d M-/ M-/ M-/ M-/ M-/ C-a C-k l o l <return> b o <return> b o o * <return> a s s M-/ : SPC t h a n k s ! SPC I <backspace> i ' d SPC a p p r e c i a t e SPC t h a t <return> C-x o <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <return> <tab> <tab> <return> q C-x o C-x o C-p C-p C-p C-p C-x o C-p C-p C-p C-p C-p C-p C-p C-p C-p M-f M-f M-f M-f <f1> v <return> C-x 4 C-o <return> C-f C-f M-d M-d M-d m a i l - c l i e n t - s e n d M-b M-b C-h C-e M-b M-f - i t C-e C-x C-e C-x C-s C-n C-a C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-x C-s C-b C-x C-e C-x C-s C-x b <return> C-c C-c C-x o C-n M-> j l f / <backspace> M-/ : M-h M-h j l M-/ : SPC T h a n k s ! SPC t h a t SPC d o e s SPC i t <return> C-x o M-x e m a r e p <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> r e p o r t b u <return> Recent messages: mailclient-send-it Saving file /Users/tim/Dropbox/.emacs.d/init.el... Wrote /Users/tim/Dropbox/.emacs.d/init.el Saving file /Users/tim/Dropbox/.emacs.d/init.el... Wrote /Users/tim/Dropbox/.emacs.d/init.el mailclient-send-it (No changes need to be saved) Sending...done Mark set Using try-expand-dabbrev [2 times] Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug mailclient ffap browse-url message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader em-unix em-script em-ls em-hist em-pred em-glob em-dirs em-basic em-cmpl em-term term disp-table ehelp electric em-prompt esh-opt em-banner em-alias esh-var esh-io esh-cmd esh-ext esh-proc esh-arg esh-groups eshell esh-module esh-mode esh-util hippie-exp smtpmail sendmail rfc2047 rfc2045 ietf-drums mail-utils cus-edit hi-lock recentf tree-widget vc-git find-func help-mode view multi-isearch info network-stream auth-source eieio byte-opt bytecomp byte-compile cconv macroexp assoc gnus-util mm-util mail-prsvr password-cache starttls tls erc-menu erc-join erc-ring erc-networks erc-pcomplete erc-track erc-match erc-button wid-edit erc-fill erc-stamp erc-netsplit eldoc elisp-slime-nav etags paredit saveplace idle-highlight-mode hideshow easymenu textmate imenu glasses whitespace solarized-light-theme solarized-definitions hl-line cus-start cus-load ansi-color shell pcomplete comint regexp-opt ring maxframe elein erc-nick-notify notify erc-goodies erc erc-backend erc-compat format-spec thingatpt pp clojure-test-mode-autoloads clojure-mode-autoloads deft-autoloads elein-autoloads erc-nick-notify-autoloads markdown-mode-autoloads marmalade-autoloads furl-autoloads maxframe-autoloads notify-autoloads slime-autoloads starter-kit-bindings-autoloads windmove starter-kit-eshell-autoloads starter-kit-lisp-autoloads elisp-slime-nav-autoloads starter-kit-autoloads server edmacro kmacro smex starter-kit-misc ido-ubiquitous cl ido paren starter-kit-defuns uniquify advice help-fns advice-preload magit-autoloads ido-ubiquitous-autoloads smex-autoloads find-file-in-project-autoloads idle-highlight-mode-autoloads paredit-autoloads textmate-autoloads package tabulated-list time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process ns multi-tty emacs)
bug-gnu-emacs <at> gnu.org
:bug#9897
; Package emacs
.
(Fri, 28 Oct 2011 18:50:03 GMT) Full text and rfc822 format available.Message #8 received at 9897 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Tim Visher <tim.visher <at> gmail.com> Cc: 9897 <at> debbugs.gnu.org Subject: Re: bug#9897: 24.0.90; w32 control character configuration is severely lacking compared to ns-win.el Date: Fri, 28 Oct 2011 20:47:38 +0200
> From: Tim Visher <tim.visher <at> gmail.com> > Date: Fri, 28 Oct 2011 11:14:06 -0400 > > I'm trying to configure what pressing Alt, Windows, Apps, and Control on > a windows keyboard translates to in emacs. I use emacs on both Macs and > Windows boxen and I'm used to configuring the keys on macs using > ns-win.el bindings like: > > (if (boundp 'mac-command-modifier) (setq mac-command-modifier 'control)) > (if (boundp 'mac-option-modifier) (setq mac-option-modifier 'meta)) > (if (boundp 'mac-control-modifier) (setq mac-control-modifier 'super)) > > Compared to that library, the ability to configure what the meta keys > map to on windows is severely lacking, not allowing configuration at all > of what the control-modifier is mapped to, and providing only toggles > for the windows keys and apps keys. What other keys do you have on your keyboard that you'd like to configure on Windows? There's no "command modifier" and no "option modifier" on Windows. Note that in addition to what you mentioned, there's w32-enable-caps-lock and w32-enable-num-lock that you can use to produce 2 more symbols.
bug-gnu-emacs <at> gnu.org
:bug#9897
; Package emacs
.
(Fri, 28 Oct 2011 19:46:02 GMT) Full text and rfc822 format available.Message #11 received at 9897 <at> debbugs.gnu.org (full text, mbox):
From: Tim Visher <tim.visher <at> gmail.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 9897 <at> debbugs.gnu.org Subject: Re: bug#9897: 24.0.90; w32 control character configuration is severely lacking compared to ns-win.el Date: Fri, 28 Oct 2011 15:43:17 -0400
On Fri, Oct 28, 2011 at 2:47 PM, Eli Zaretskii <eliz <at> gnu.org> wrote: >> From: Tim Visher <tim.visher <at> gmail.com> >> Date: Fri, 28 Oct 2011 11:14:06 -0400 >> >> I'm trying to configure what pressing Alt, Windows, Apps, and Control on >> a windows keyboard translates to in emacs. I use emacs on both Macs and >> Windows boxen and I'm used to configuring the keys on macs using >> ns-win.el bindings like: >> >> (if (boundp 'mac-command-modifier) (setq mac-command-modifier 'control)) >> (if (boundp 'mac-option-modifier) (setq mac-option-modifier 'meta)) >> (if (boundp 'mac-control-modifier) (setq mac-control-modifier 'super)) >> >> Compared to that library, the ability to configure what the meta keys >> map to on windows is severely lacking, not allowing configuration at all >> of what the control-modifier is mapped to, and providing only toggles >> for the windows keys and apps keys. > > What other keys do you have on your keyboard that you'd like to > configure on Windows? There's no "command modifier" and no "option > modifier" on Windows. > > Note that in addition to what you mentioned, there's > w32-enable-caps-lock and w32-enable-num-lock that you can use to > produce 2 more symbols. > Thanks for your quick response! I'm essentially looking for modifier key parity with ns ala: http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/lisp/term/ns-win.el#L182 On Windows, that list would probably look like: (defvaralias 'pc-allow-anti-aliasing 'pc-antialias-text) (defvaralias 'pc-windows-modifier 'pc-windows-modifier) (defvaralias 'pc-right-windows-modifier 'pc-right-windows-modifier) (defvaralias 'pc-control-modifier 'pc-control-modifier) (defvaralias 'pc-right-control-modifier 'pc-right-control-modifier) (defvaralias 'pc-alt-modifier 'pc-alt-modifier) (defvaralias 'pc-right-alt-modifier 'pc-right-alt-modifier) (defvaralias 'pc-function-modifier 'pc-function-modifier) (defvaralias 'pc-apps-modifier 'pc-apps-modifier) And then you could set them using the same contract that I listed in the opening mail. Make sense?
bug-gnu-emacs <at> gnu.org
:bug#9897
; Package emacs
.
(Sat, 29 Oct 2011 04:06:02 GMT) Full text and rfc822 format available.Message #14 received at 9897 <at> debbugs.gnu.org (full text, mbox):
From: Jason Rumney <jasonr <at> gnu.org> To: Tim Visher <tim.visher <at> gmail.com> Cc: 9897 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org> Subject: Re: bug#9897: 24.0.90; w32 control character configuration is severely lacking compared to ns-win.el Date: Sat, 29 Oct 2011 12:03:46 +0800
Tim Visher <tim.visher <at> gmail.com> writes: > I'm essentially looking for modifier key parity with ns ala: > > http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/lisp/term/ns-win.el#L182 > > On Windows, that list would probably look like: > > (defvaralias 'pc-allow-anti-aliasing 'pc-antialias-text) Antialiasing can be specified on a per-font level with the Windows font backends. This is documented in the Emacs manual. > (defvaralias 'pc-windows-modifier 'pc-windows-modifier) w32-lwindow-modifer > (defvaralias 'pc-right-windows-modifier 'pc-right-windows-modifier) w32-rwindow-modifier > (defvaralias 'pc-control-modifier 'pc-control-modifier) > (defvaralias 'pc-right-control-modifier 'pc-right-control-modifier) > (defvaralias 'pc-alt-modifier 'pc-alt-modifier) Standard keyboard keys can be remapped outside of Emacs. Commonly this is done to swap left-control and caps-lock, for example, see http://www.emacswiki.org/emacs/SwapControlAltAndCapsLock > (defvaralias 'pc-right-alt-modifier 'pc-right-alt-modifier) See above, and also w32-recognize-altgr > (defvaralias 'pc-function-modifier 'pc-function-modifier) No idea which key you mean here. If you mean the Fn key present on some laptop keyboards, I beleive this is handled by the keyboard hardware or low level drivers, and not exposed by the OS. > (defvaralias 'pc-apps-modifier 'pc-apps-modifier) w32-apps-modifier
bug-gnu-emacs <at> gnu.org
:bug#9897
; Package emacs
.
(Sun, 30 Oct 2011 01:43:02 GMT) Full text and rfc822 format available.Message #17 received at 9897 <at> debbugs.gnu.org (full text, mbox):
From: Tim Visher <tim.visher <at> gmail.com> To: Jason Rumney <jasonr <at> gnu.org> Cc: 9897 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org> Subject: Re: bug#9897: 24.0.90; w32 control character configuration is severely lacking compared to ns-win.el Date: Sat, 29 Oct 2011 21:39:45 -0400
On Sat, Oct 29, 2011 at 12:03 AM, Jason Rumney <jasonr <at> gnu.org> wrote: > Tim Visher <tim.visher <at> gmail.com> writes: > >> I'm essentially looking for modifier key parity with ns ala: >> >> http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/lisp/term/ns-win.el#L182 >> >> On Windows, that list would probably look like: >> >> (defvaralias 'pc-allow-anti-aliasing 'pc-antialias-text) My point with these and the many lines you inlined pointing me to the various w32-* variables is that the ns-* variables are more robust and easier to use than the w32 variables. For instance, ns-* exposes right, left, and both as variables, while w32 only exposes right/left. ns-* also exposes option, command, and control, while w32-* exposes none of alt/windows/control, and leaves it to be configured through hard-swapping the keys through registry hacks. >> (defvaralias 'pc-control-modifier 'pc-control-modifier) >> (defvaralias 'pc-right-control-modifier 'pc-right-control-modifier) >> (defvaralias 'pc-alt-modifier 'pc-alt-modifier) > > Standard keyboard keys can be remapped outside of Emacs. Commonly this > is done to swap left-control and caps-lock, for example, see > http://www.emacswiki.org/emacs/SwapControlAltAndCapsLock My point is not that it's impossible to remap these keys outside of emacs. My point is that the mac os remapping feature is far more robust than the windows feature. For me, I am unable to remap these keys outside of emacs as I need to be able to pair program with other people on these machines at work. I just want them to be remapped inside emacs, which I can do easily on os x, but not at all on windows. The reason that I ran up against this at all is that I'm trying to move away from having caps lock be control as I've begun to experience emacs pinky. I would like to have the command/alt key be control, option/windows key be meta, and control/[apps|control] be super on the two platforms, only in emacs. This is possible on the mac but not possible on windows. >> (defvaralias 'pc-function-modifier 'pc-function-modifier) > > No idea which key you mean here. If you mean the Fn key present on some > laptop keyboards, I beleive this is handled by the keyboard hardware or > low level drivers, and not exposed by the OS. It may or may not be exposed by the OS, but on the Mac it is exposed. If it's not possible because of low-level operating system details, I understand, and perhaps that should be documented, but the point is that when comparing the configurability of the two systems, windows is lagging behind the mac by leaps and bounds.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.