]> git.99rst.org Git - irssi-scripts.irssi.org.git/commitdiff
Some bugs
authorvague666 <redacted>
Wed, 19 Apr 2023 15:43:42 +0000 (17:43 +0200)
committervague666 <redacted>
Wed, 19 Apr 2023 15:43:42 +0000 (17:43 +0200)
scripts/separate_messages.pl

index 65830c1227fc3e5449250adbfba0425a8bfcfc55..fcdc2f73a9ec4eaf629aa4f14e82a76537ca8a5a 100644 (file)
@@ -17,19 +17,26 @@ $VERSION = "0.2";
 
 my $prev_sender = {};
 sub separate_messages {
-  my ($tag, $sender, $target) = @_;
-  if(exists $prev_sender->{$tag}{$target} && $sender ne $prev_sender->{$tag}{$target}) {
-    $_[0]->window_item_find($target)->window->print("") if Irssi::settings_get_bool('separate_user_messages');
+  my ($tag, $sender, $target, $mode) = @_;
+  my $server = Irssi::server_find_tag($tag);
+  my $windowname = $mode ? $target : $sender;
+
+  if(exists $prev_sender->{$tag}{$windowname} && $sender ne $prev_sender->{$tag}{$windowname}) {
+    $server->window_item_find($windowname)->print("") if Irssi::settings_get_bool('separate_user_messages');
   }
-  $prev_sender->{$tag}{$target} = $sender;
+  $prev_sender->{$tag}{$windowname} = $sender;
 }
 
 sub sig_message {
-  separate_messages(lc $_[0]->{tag}, lc $_[2], lc $_[4]);
+  separate_messages(lc $_[0]->{tag}, lc $_[2], lc $_[4], 0);
 }
 
 sub sig_message_own {
-  separate_messages(lc $_[0]->{tag}, lc $_[0]->{nick}, lc $_[2]);
+  separate_messages(lc $_[0]->{tag}, lc $_[0]->{nick}, lc $_[2], 0);
+}
+
+sub sig_message_own_special {
+  separate_messages(lc $_[0]->{tag}, lc $_[0]->{nick}, lc $_[2], 1);
 }
 
 Irssi::settings_add_bool('lookandfeel', 'separate_user_messages', 0);
@@ -37,4 +44,4 @@ Irssi::settings_add_bool('lookandfeel', 'separate_user_messages', 0);
 Irssi::signal_add_first('message public', 'sig_message');
 Irssi::signal_add_first('message private', 'sig_message');
 Irssi::signal_add_first('message own_public', 'sig_message_own');
-Irssi::signal_add_first('message own_private', 'sig_message_own');
+Irssi::signal_add_first('message own_private', 'sig_message_own_special');
git clone https://git.99rst.org/PROJECT