emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r109085: * rect.el (copy-rectangle-as


From: Chong Yidong
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r109085: * rect.el (copy-rectangle-as-kill): New command.
Date: Sat, 14 Jul 2012 10:19:07 +0800
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 109085
fixes bug: http://debbugs.gnu.org/739
author: Reuben Thomas <address@hidden>
committer: Chong Yidong <address@hidden>
branch nick: trunk
timestamp: Sat 2012-07-14 10:19:07 +0800
message:
  * rect.el (copy-rectangle-as-kill): New command.
  
  * lisp/rect.el, lisp/register.el: Move bindings to bindings.el.
  
  * lisp/bindings.el: Consolidate ctl-x-r-map bindings.  Bind
  copy-rectangle-as-kill to C-x r w.
modified:
  etc/NEWS
  lisp/ChangeLog
  lisp/bindings.el
  lisp/rect.el
  lisp/register.el
=== modified file 'etc/NEWS'
--- a/etc/NEWS  2012-07-13 07:06:09 +0000
+++ b/etc/NEWS  2012-07-14 02:19:07 +0000
@@ -158,6 +158,9 @@
 
 ** `goto-char' is now bound to `M-g c'.
 
+** New command `C-x r M-w' (copy-rectangle-as-kill).
+It copies the region-rectangle as the last rectangle kill.
+
 ** New input method `vietnamese-vni'.
 
 

=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-07-14 02:08:32 +0000
+++ b/lisp/ChangeLog    2012-07-14 02:19:07 +0000
@@ -1,3 +1,14 @@
+2012-07-14  Chong Yidong  <address@hidden>
+
+       * bindings.el: Consolidate ctl-x-r-map bindings.  Bind
+       copy-rectangle-as-kill to C-x r w.
+
+       * rect.el, register.el: Move bindings to bindings.el.
+
+2012-07-14  Reuben Thomas  <address@hidden>
+
+       * rect.el (copy-rectangle-as-kill): New command (Bug#739).
+
 2012-07-13  Andreas Schwab  <address@hidden>
 
        * emacs-lisp/cl.el (labels): Remove spurious quote.  (Bug#11938)

=== modified file 'lisp/bindings.el'
--- a/lisp/bindings.el  2012-07-13 17:02:18 +0000
+++ b/lisp/bindings.el  2012-07-14 02:19:07 +0000
@@ -1183,7 +1183,30 @@
 (define-key ctl-x-5-map "m" 'compose-mail-other-frame)
 
 
-(defvar ctl-x-r-map (make-sparse-keymap)
+(defvar ctl-x-r-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map "c" 'clear-rectangle)
+    (define-key map "k" 'kill-rectangle)
+    (define-key map "d" 'delete-rectangle)
+    (define-key map "y" 'yank-rectangle)
+    (define-key map "o" 'open-rectangle)
+    (define-key map "t" 'string-rectangle)
+    (define-key map "N" 'rectangle-number-lines)
+    (define-key map "\M-w" 'copy-rectangle-as-kill)
+    (define-key map "\C-@" 'point-to-register)
+    (define-key map [?\C-\ ] 'point-to-register)
+    (define-key map " " 'point-to-register)
+    (define-key map "j" 'jump-to-register)
+    (define-key map "s" 'copy-to-register)
+    (define-key map "x" 'copy-to-register)
+    (define-key map "i" 'insert-register)
+    (define-key map "g" 'insert-register)
+    (define-key map "r" 'copy-rectangle-to-register)
+    (define-key map "n" 'number-to-register)
+    (define-key map "+" 'increment-register)
+    (define-key map "w" 'window-configuration-to-register)
+    (define-key map "f" 'frame-configuration-to-register)
+    map)
   "Keymap for subcommands of C-x r.")
 (define-key ctl-x-map "r" ctl-x-r-map)
 

=== modified file 'lisp/rect.el'
--- a/lisp/rect.el      2012-01-19 07:21:25 +0000
+++ b/lisp/rect.el      2012-07-14 02:19:07 +0000
@@ -29,16 +29,6 @@
 ;; ### NOTE: this file was almost completely rewritten by Didier Verna
 ;; <address@hidden> in July 1999.
 
-;;; Global key bindings
-
-;;;###autoload (define-key ctl-x-r-map "c" 'clear-rectangle)
-;;;###autoload (define-key ctl-x-r-map "k" 'kill-rectangle)
-;;;###autoload (define-key ctl-x-r-map "d" 'delete-rectangle)
-;;;###autoload (define-key ctl-x-r-map "y" 'yank-rectangle)
-;;;###autoload (define-key ctl-x-r-map "o" 'open-rectangle)
-;;;###autoload (define-key ctl-x-r-map "t" 'string-rectangle)
-;;;###autoload (define-key ctl-x-r-map "N" 'rectangle-number-lines)
-
 ;;; Code:
 
 ;; FIXME: this function should be replaced by `apply-on-rectangle'
@@ -236,6 +226,13 @@
        (signal 'text-read-only (list (current-buffer)))))))
 
 ;;;###autoload
+(defun copy-rectangle-as-kill (start end)
+  "Copy the region-rectangle and save it as the last killed one."
+  (interactive "r")
+  (setq killed-rectangle (extract-rectangle start end))
+  (setq deactivate-mark t))
+
+;;;###autoload
 (defun yank-rectangle ()
   "Yank the last killed rectangle with upper left corner at point."
   (interactive "*")

=== modified file 'lisp/register.el'
--- a/lisp/register.el  2012-07-10 11:51:54 +0000
+++ b/lisp/register.el  2012-07-14 02:19:07 +0000
@@ -34,22 +34,6 @@
 (declare-function semantic-tag-buffer "semantic/tag" (tag))
 (declare-function semantic-tag-start "semantic/tag" (tag))
 
-;;; Global key bindings
-
-(define-key ctl-x-r-map "\C-@" 'point-to-register)
-(define-key ctl-x-r-map [?\C-\ ] 'point-to-register)
-(define-key ctl-x-r-map " " 'point-to-register)
-(define-key ctl-x-r-map "j" 'jump-to-register)
-(define-key ctl-x-r-map "s" 'copy-to-register)
-(define-key ctl-x-r-map "x" 'copy-to-register)
-(define-key ctl-x-r-map "i" 'insert-register)
-(define-key ctl-x-r-map "g" 'insert-register)
-(define-key ctl-x-r-map "r" 'copy-rectangle-to-register)
-(define-key ctl-x-r-map "n" 'number-to-register)
-(define-key ctl-x-r-map "+" 'increment-register)
-(define-key ctl-x-r-map "w" 'window-configuration-to-register)
-(define-key ctl-x-r-map "f" 'frame-configuration-to-register)
-
 ;;; Code:
 
 (cl-defstruct


reply via email to

[Prev in Thread] Current Thread [Next in Thread]