Subject: 24.3.50; icomplete, ido, iswitchb: Replace C-s, C-r with C-. and C-,

From: Jambunathan K <[email-masked]>
Date: Wed, 13 Feb 2013 20:04:58 +0530

This bug superseds 
        http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13602

There seems to be a general agreement that C-s and C-r are too useful to
be superseded by icomplete, ido and iswitchb(?).

I am proposing C-, and C-. as useful defaults.

For fear of resentment, I am leaving C-s and C-r bindings intact.
Reviewer may delete them at his own discretion.

=== modified file 'lisp/icomplete.el'
--- lisp/icomplete.el	2013-02-08 07:53:55 +0000
+++ lisp/icomplete.el	2013-02-13 14:24:14 +0000
@@ -156,8 +156,8 @@ except those on this list.")
   (let ((map (make-sparse-keymap)))
     (define-key map [?\M-\t] 'minibuffer-force-complete)
     (define-key map [?\C-j]  'minibuffer-force-complete-and-exit)
-    (define-key map [?\C-s]  'icomplete-forward-completions)
-    (define-key map [?\C-r]  'icomplete-backward-completions)
+    (define-key map [?\C-.]  'icomplete-forward-completions)
+    (define-key map [?\C-,]  'icomplete-backward-completions)
     map))
 
 (defun icomplete-forward-completions ()

=== modified file 'lisp/ido.el'
--- lisp/ido.el	2013-01-02 16:13:04 +0000
+++ lisp/ido.el	2013-02-13 14:07:22 +0000
@@ -1585,6 +1585,8 @@ This function also adds a hook to the mi
     (define-key map "\C-p" 'ido-toggle-prefix)
     (define-key map "\C-r" 'ido-prev-match)
     (define-key map "\C-s" 'ido-next-match)
+    (define-key map [?\C-.] 'ido-next-match)
+    (define-key map [?\C-,] 'ido-prev-match)
     (define-key map "\C-t" 'ido-toggle-regexp)
     (define-key map "\C-z" 'ido-undo-merge-work-directory)
     (define-key map [(control ?\s)] 'ido-restrict-to-matches)

=== modified file 'lisp/iswitchb.el'
--- lisp/iswitchb.el	2013-01-01 09:11:05 +0000
+++ lisp/iswitchb.el	2013-02-13 14:07:06 +0000
@@ -471,6 +471,8 @@ interfere with other minibuffer usage.")
     (define-key map "?" 'iswitchb-completion-help)
     (define-key map "\C-s" 'iswitchb-next-match)
     (define-key map "\C-r" 'iswitchb-prev-match)
+    (define-key map [?\C-.] 'iswitchb-next-match)
+    (define-key map [?\C-,] 'iswitchb-prev-match)
     (define-key map "\t" 'iswitchb-complete)
     (define-key map "\C-j" 'iswitchb-select-buffer-text)
     (define-key map "\C-t" 'iswitchb-toggle-regexp)

In GNU Emacs 24.3.50.17 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2013-02-13 on debian-6.05
Bzr revision: 111769 [email-masked]
Windowing system distributor `The X.Org Foundation', version 11.0.10707000
System Description:	Debian GNU/Linux 6.0.5 (squeeze)