summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--doc/ratpoison.texi11
-rw-r--r--src/actions.c2
3 files changed, 17 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 77e6d6e..f7828d1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2006-09-26 Shawn Betts <sabetts@vcn.bc.ca>
+
+ * src/actions.c (initialize_default_keybindings): bind "swap" to C-t x and C-t C-x
+
2006-09-26 Bernhard R. Link <brlink@debian.org>
* src/actions.c (cmd_execa,cmd_execf): new functions
diff --git a/doc/ratpoison.texi b/doc/ratpoison.texi
index adc013f..068ae24 100644
--- a/doc/ratpoison.texi
+++ b/doc/ratpoison.texi
@@ -1208,6 +1208,11 @@ Exchange the window in the current frame with the window in the frame to the rig
@item C-t C-Up
Exchange the window in the current frame with the window in the frame above it.
+@item C-t x
+@item C-t C-x
+Choose a frame and exchange the window in the current frame with the
+window in the chosen frame.
+
@end table
@node Hooks, The Status Bar, Keystrokes, Top
@@ -1603,6 +1608,12 @@ When called with no arguments, the current setting is
returned.
@end deffn
+@deffn Command swap @var{destination-frame} @var{source-frame}
+When called interactively prompt for a frame and swap its window with
+the window in the current frame. An optional second argument allows
+swapping of windows between arbitrary frames.
+@end deffn
+
@deffn Command time
Show current time in the status bar.
@end deffn
diff --git a/src/actions.c b/src/actions.c
index 87991fb..4a0b8f3 100644
--- a/src/actions.c
+++ b/src/actions.c
@@ -752,6 +752,8 @@ initialize_default_keybindings (void)
add_keybinding (XK_u, 0, "undo", map);
add_keybinding (XK_u, RP_CONTROL_MASK, "undo", map);
add_keybinding (XK_U, 0, "redo", map);
+ add_keybinding (XK_x, 0, "swap", map);
+ add_keybinding (XK_x, RP_CONTROL_MASK, "swap", map);
add_alias ("unbind", "undefinekey " ROOT_KEYMAP);
add_alias ("bind", "definekey " ROOT_KEYMAP);