From 5811413f9ffbc8a6b5af43b9e5fa20154b2d6581 Mon Sep 17 00:00:00 2001 From: Tom Feist Date: Mon, 27 Sep 2010 22:27:11 +0100 Subject: changed word and non_word variables to use pre-compiled regex patterns rather than strings. --- vim-mode/vim_mode.pl | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'vim-mode') diff --git a/vim-mode/vim_mode.pl b/vim-mode/vim_mode.pl index ef38daf..0aa6b61 100644 --- a/vim-mode/vim_mode.pl +++ b/vim-mode/vim_mode.pl @@ -75,9 +75,8 @@ sub M_INS() { 0 } # insert mode sub M_EX () { 2 } # extended mode (after a :?) # word and non-word regex -my $word = '[\w_]'; -my $non_word = '[^\w_\s]'; - +my $word = qr/[\w_]/o; +my $non_word = qr/[^\w_\s]/o; # GLOBAL VARIABLES @@ -1068,7 +1067,15 @@ sub setup_changed { $DEBUG_ENABLED = Irssi::settings_get_bool('vim_mode_debug'); - $utf8 = Irssi::settings_get_bool('vim_mode_utf8'); + my $new_utf8 = Irssi::settings_get_bool('vim_mode_utf8'); + + if ($new_utf8 != $utf8) { + # recompile the patterns when switching to/from utf-8 + $word = qr/[\w_]/o; + $non_word = qr/[^\w_\s]/o; + } + + $utf8 = $new_utf8; } sub UNLOAD { -- cgit v1.2.3