]> git.99rst.org Git - irssi-scripts.irssi.org.git/commitdiff
[separate_messages] new script
authorvague666 <redacted>
Sun, 16 Apr 2023 18:46:31 +0000 (20:46 +0200)
committervague666 <redacted>
Sun, 16 Apr 2023 18:46:31 +0000 (20:46 +0200)
scripts/separate_messages.pl [new file with mode: 0644]

diff --git a/scripts/separate_messages.pl b/scripts/separate_messages.pl
new file mode 100644 (file)
index 0000000..0f02f13
--- /dev/null
@@ -0,0 +1,29 @@
+use strict;
+use warnings;
+use Irssi;
+use feature qw(fc);
+
+use vars qw($VERSION %IRSSI);
+$VERSION = "0.1";
+%IRSSI = (
+  authors     => 'vague',
+  contact     => 'vague!#irssi@freenode on irc',
+  name        => 'separate_messages',
+  description => 'Print a black line between messages from different users',
+  license     => 'GPL2',
+  url         => 'https://vague.se',
+  changed     => "14 Apr 10:00:00 CEST 2023",
+);
+
+my $prev_sender = {};
+sub sig_message_public {
+  my ($tag, $sender, $target) = (lc $_[0]->{tag}, lc $_[2], lc $_[4]);
+  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');
+  }
+  $prev_sender->{$tag}{$target} = $sender;
+}
+
+Irssi::settings_add_bool('lookandfeel', 'separate_user_messages', 0);
+
+Irssi::signal_add_first('message public', 'sig_message_public');
git clone https://git.99rst.org/PROJECT