aboutsummaryrefslogtreecommitdiffstats
path: root/vim-mode/vim_mode.pl
diff options
context:
space:
mode:
authorSimon Ruderich <simon@ruderich.org>2010-09-28 02:20:05 +0000
committerSimon Ruderich <simon@ruderich.org>2010-09-28 02:20:54 +0000
commit89a1e94b7f12bd29d91649dd9dd6952712701081 (patch)
tree0aee7ab9ef9497d9d5e002f3e9498dd7b2f17b71 /vim-mode/vim_mode.pl
parentvim_mode: :b has vim_windows statusbar displaying matching channels. (diff)
downloadirssi-scripts-89a1e94b7f12bd29d91649dd9dd6952712701081.tar.gz
irssi-scripts-89a1e94b7f12bd29d91649dd9dd6952712701081.zip
vim_mode: Add special registers "* and "+ for irssi's cut buffer.
Diffstat (limited to '')
-rw-r--r--vim-mode/vim_mode.pl8
1 files changed, 8 insertions, 0 deletions
diff --git a/vim-mode/vim_mode.pl b/vim-mode/vim_mode.pl
index c34db2d..e40d15f 100644
--- a/vim-mode/vim_mode.pl
+++ b/vim-mode/vim_mode.pl
@@ -18,6 +18,8 @@
# * change/change/yank line: cc dd yy S
# * Combinations like in Vi, e.g. d5fx
# * window selection: :b<num>, :b#, :b <match-str>
+#
+# * special registers: "* "+ (contain irssi's cut-buffer)
# TODO:
# * History:
@@ -683,6 +685,12 @@ sub cmd_movement_tilde {
sub cmd_movement_register {
my ($count, $pos, $char) = @_;
+ # + and * contain both irssi's cut-buffer
+ if ($char eq '+' or $char eq '*') {
+ $registers->{'+'} = Irssi::parse_special('$U');
+ $registers->{'*'} = $registers->{'+'};
+ }
+
$register = $char;
print "Changing register to $register" if DEBUG;
}