summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2018-10-14 05:09:03 -0400
committerJesse Luehrs <doy@tozt.net>2018-10-14 06:16:03 -0400
commit5b0e67ae95dedd9c4db34ccd4d3c31fbaf516a40 (patch)
tree206134be663936c76fb772a93b2ebd0771c3cc6e
parenta262ecc3a90abe5a0ceda821ee703a72acc921e3 (diff)
downloadconf-5b0e67ae95dedd9c4db34ccd4d3c31fbaf516a40.tar.gz
conf-5b0e67ae95dedd9c4db34ccd4d3c31fbaf516a40.zip
weechat config updates
-rw-r--r--weechat/alias.conf3
-rw-r--r--weechat/buflist.conf5
-rw-r--r--weechat/irc.conf235
-rw-r--r--weechat/plugins.conf20
-rw-r--r--weechat/python/autoload/bitlbee_typing_notice.py189
-rw-r--r--weechat/rmodifier.conf13
-rw-r--r--weechat/script.conf6
-rw-r--r--weechat/trigger.conf16
-rw-r--r--weechat/weechat.conf309
9 files changed, 230 insertions, 566 deletions
diff --git a/weechat/alias.conf b/weechat/alias.conf
index 53d21a2..09b3272 100644
--- a/weechat/alias.conf
+++ b/weechat/alias.conf
@@ -14,6 +14,7 @@ AAWAY = "allserv /away"
AME = "allchan /me"
AMSG = "allchan /msg *"
ANICK = "allserv /nick"
+BEEP = "print -beep"
BYE = "quit"
C = "buffer clear"
CHAT = "dcc chat"
@@ -26,6 +27,7 @@ K = "kick"
KB = "kickban"
LEAVE = "part"
M = "msg"
+MSGBUF = "command -buffer $1 * /input send $2-"
MUB = "unban *"
N = "names"
Q = "query"
@@ -43,3 +45,4 @@ WII = "whois $1 $1"
WW = "whowas"
[completion]
+MSGBUF = "%(buffers_plugins_names)"
diff --git a/weechat/buflist.conf b/weechat/buflist.conf
index ee0b9df..d285f89 100644
--- a/weechat/buflist.conf
+++ b/weechat/buflist.conf
@@ -10,6 +10,8 @@
#
[look]
+add_newline = on
+auto_scroll = 50
display_conditions = "${buffer.hidden}==0"
enabled = on
mouse_jump_visited_buffer = off
@@ -21,7 +23,7 @@ signals_refresh = ""
sort = "number,-active"
[format]
-buffer = "${format_number}${indent}${format_nick_prefix}${color_hotlist}${name}"
+buffer = "${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"
buffer_current = "${color:,blue}${format_buffer}"
hotlist = " ${color:green}(${hotlist}${color:green})"
hotlist_highlight = "${color:magenta}"
@@ -32,5 +34,6 @@ hotlist_private = "${color:green}"
hotlist_separator = "${color:default},"
indent = " "
lag = " ${color:green}[${color:brown}${lag}${color:green}]"
+name = "${name}"
nick_prefix = "${color_nick_prefix}${nick_prefix}"
number = "${color:green}${number}${if:${number_displayed}?.: }"
diff --git a/weechat/irc.conf b/weechat/irc.conf
index 55871ca..c224eeb 100644
--- a/weechat/irc.conf
+++ b/weechat/irc.conf
@@ -16,7 +16,7 @@ buffer_switch_autojoin = on
buffer_switch_join = on
color_nicks_in_names = off
color_nicks_in_nicklist = off
-color_nicks_in_server_messages = off
+color_nicks_in_server_messages = on
color_pv_nick_like_channel = on
ctcp_time_format = "%a, %d %b %Y %T %z"
display_away = local
@@ -30,8 +30,8 @@ display_join_message = "329,332,333,366"
display_old_topic = on
display_pv_away_once = on
display_pv_back = on
-highlight_channel = "doy,doyster,@doyster,thedoyster,jesse"
-highlight_pv = ""
+highlight_channel = "$nick,doy,doyster,@doyster,thedoyster,jesse"
+highlight_pv = "$nick"
highlight_server = "$nick"
highlight_tags_restrict = "irc_privmsg,irc_notice"
item_channel_modes_hide_args = "k"
@@ -51,17 +51,17 @@ notice_welcome_redirect = on
notice_welcome_tags = ""
notify_tags_ison = "notify_message"
notify_tags_whois = "notify_message"
-part_closes_buffer = on
+part_closes_buffer = off
pv_buffer = independent
pv_tags = "notify_private"
raw_messages = 256
server_buffer = merge_with_core
smart_filter = on
smart_filter_chghost = on
-smart_filter_delay = 60
+smart_filter_delay = 5
smart_filter_join = on
smart_filter_join_unmask = 30
-smart_filter_mode = "ovh"
+smart_filter_mode = "+"
smart_filter_nick = on
smart_filter_quit = on
temporary_servers = off
@@ -77,7 +77,7 @@ message_chghost = brown
message_join = darkgray
message_quit = darkgray
mirc_remap = "1,-1:darkgray"
-nick_prefixes = "q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"
+nick_prefixes = "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"
notice = darkgray
reason_quit = darkgray
topic_current = default
@@ -86,8 +86,8 @@ topic_old = darkgray
[network]
autoreconnect_delay_growing = 2
-autoreconnect_delay_max = 1800
-ban_mask_default = "*!$user@$host"
+autoreconnect_delay_max = 600
+ban_mask_default = "*!$ident@$host"
channel_encode = off
colors_receive = on
colors_send = on
@@ -100,7 +100,7 @@ notify_check_ison = 1
notify_check_whois = 5
sasl_fail_unavailable = on
send_unknown_commands = off
-whois_double_nick = on
+whois_double_nick = off
[msgbuffer]
@@ -115,7 +115,7 @@ anti_flood_prio_low = 2
autoconnect = off
autojoin = ""
autoreconnect = on
-autoreconnect_delay = 2
+autoreconnect_delay = 10
autorejoin = off
autorejoin_delay = 30
away_check = 0
@@ -124,7 +124,7 @@ capabilities = ""
command = ""
command_delay = 0
connection_timeout = 60
-ipv6 = off
+ipv6 = on
local_hostname = ""
msg_kick = ""
msg_part = "WeeChat ${info:version}"
@@ -146,61 +146,20 @@ ssl = off
ssl_cert = ""
ssl_dhkey_size = 2048
ssl_fingerprint = ""
-ssl_priorities = "NORMAL"
+ssl_priorities = "NORMAL:-VERS-SSL3.0"
ssl_verify = on
usermode = ""
username = "doy"
[server]
-mozilla.addresses = "tozt.net/6668"
-mozilla.proxy
-mozilla.ipv6
-mozilla.ssl = on
-mozilla.ssl_cert
-mozilla.ssl_priorities
-mozilla.ssl_dhkey_size
-mozilla.ssl_fingerprint = "0fe91be27d6e70da93c28d5e9a83cdda33ecf7f2"
-mozilla.ssl_verify
-mozilla.password
-mozilla.capabilities
-mozilla.sasl_mechanism
-mozilla.sasl_username
-mozilla.sasl_password
-mozilla.sasl_key
-mozilla.sasl_timeout
-mozilla.sasl_fail
-mozilla.autoconnect
-mozilla.autoreconnect
-mozilla.autoreconnect_delay
-mozilla.nicks
-mozilla.nicks_alternate
-mozilla.username
-mozilla.realname
-mozilla.local_hostname
-mozilla.usermode
-mozilla.command
-mozilla.command_delay
-mozilla.autojoin
-mozilla.autorejoin
-mozilla.autorejoin_delay
-mozilla.connection_timeout
-mozilla.anti_flood_prio_high
-mozilla.anti_flood_prio_low
-mozilla.away_check
-mozilla.away_check_max_nicks
-mozilla.msg_kick
-mozilla.msg_part
-mozilla.msg_quit
-mozilla.notify
-mozilla.split_msg_max_length
-freenode.addresses = "tozt.net/6668"
+freenode.addresses = "chat.freenode.net/6697"
freenode.proxy
freenode.ipv6
freenode.ssl = on
freenode.ssl_cert
freenode.ssl_priorities
freenode.ssl_dhkey_size
-freenode.ssl_fingerprint = "0fe91be27d6e70da93c28d5e9a83cdda33ecf7f2"
+freenode.ssl_fingerprint
freenode.ssl_verify
freenode.password
freenode.capabilities
@@ -234,126 +193,44 @@ freenode.msg_part
freenode.msg_quit
freenode.notify
freenode.split_msg_max_length
-bitlbee.addresses = "tozt.net/6668"
-bitlbee.proxy
-bitlbee.ipv6
-bitlbee.ssl = on
-bitlbee.ssl_cert
-bitlbee.ssl_priorities
-bitlbee.ssl_dhkey_size
-bitlbee.ssl_fingerprint = "0fe91be27d6e70da93c28d5e9a83cdda33ecf7f2"
-bitlbee.ssl_verify
-bitlbee.password
-bitlbee.capabilities
-bitlbee.sasl_mechanism
-bitlbee.sasl_username
-bitlbee.sasl_password
-bitlbee.sasl_key
-bitlbee.sasl_timeout
-bitlbee.sasl_fail
-bitlbee.autoconnect = on
-bitlbee.autoreconnect
-bitlbee.autoreconnect_delay
-bitlbee.nicks
-bitlbee.nicks_alternate
-bitlbee.username
-bitlbee.realname
-bitlbee.local_hostname
-bitlbee.usermode
-bitlbee.command
-bitlbee.command_delay
-bitlbee.autojoin
-bitlbee.autorejoin
-bitlbee.autorejoin_delay
-bitlbee.connection_timeout
-bitlbee.anti_flood_prio_high
-bitlbee.anti_flood_prio_low
-bitlbee.away_check
-bitlbee.away_check_max_nicks
-bitlbee.msg_kick
-bitlbee.msg_part
-bitlbee.msg_quit
-bitlbee.notify
-bitlbee.split_msg_max_length
-twice.addresses = "tozt.net/6668"
-twice.proxy
-twice.ipv6
-twice.ssl = on
-twice.ssl_cert
-twice.ssl_priorities
-twice.ssl_dhkey_size
-twice.ssl_fingerprint = "0fe91be27d6e70da93c28d5e9a83cdda33ecf7f2"
-twice.ssl_verify
-twice.password
-twice.capabilities
-twice.sasl_mechanism
-twice.sasl_username
-twice.sasl_password
-twice.sasl_key
-twice.sasl_timeout
-twice.sasl_fail
-twice.autoconnect
-twice.autoreconnect
-twice.autoreconnect_delay
-twice.nicks
-twice.nicks_alternate
-twice.username
-twice.realname
-twice.local_hostname
-twice.usermode
-twice.command
-twice.command_delay
-twice.autojoin
-twice.autorejoin
-twice.autorejoin_delay
-twice.connection_timeout
-twice.anti_flood_prio_high
-twice.anti_flood_prio_low
-twice.away_check
-twice.away_check_max_nicks
-twice.msg_kick
-twice.msg_part
-twice.msg_quit
-twice.notify
-twice.split_msg_max_length
-hackerscool.addresses = "tozt.net/6668"
-hackerscool.proxy
-hackerscool.ipv6
-hackerscool.ssl = on
-hackerscool.ssl_cert
-hackerscool.ssl_priorities
-hackerscool.ssl_dhkey_size
-hackerscool.ssl_fingerprint = "0fe91be27d6e70da93c28d5e9a83cdda33ecf7f2"
-hackerscool.ssl_verify
-hackerscool.password
-hackerscool.capabilities
-hackerscool.sasl_mechanism
-hackerscool.sasl_username
-hackerscool.sasl_password
-hackerscool.sasl_key
-hackerscool.sasl_timeout
-hackerscool.sasl_fail
-hackerscool.autoconnect
-hackerscool.autoreconnect
-hackerscool.autoreconnect_delay
-hackerscool.nicks
-hackerscool.nicks_alternate
-hackerscool.username
-hackerscool.realname
-hackerscool.local_hostname
-hackerscool.usermode
-hackerscool.command
-hackerscool.command_delay
-hackerscool.autojoin
-hackerscool.autorejoin
-hackerscool.autorejoin_delay
-hackerscool.connection_timeout
-hackerscool.anti_flood_prio_high
-hackerscool.anti_flood_prio_low
-hackerscool.away_check
-hackerscool.away_check_max_nicks
-hackerscool.msg_kick
-hackerscool.msg_part
-hackerscool.msg_quit
-hackerscool.notify
-hackerscool.split_msg_max_length
+mozilla.addresses = "irc.mozilla.org/6697"
+mozilla.proxy
+mozilla.ipv6
+mozilla.ssl = on
+mozilla.ssl_cert
+mozilla.ssl_priorities
+mozilla.ssl_dhkey_size
+mozilla.ssl_fingerprint
+mozilla.ssl_verify
+mozilla.password
+mozilla.capabilities
+mozilla.sasl_mechanism
+mozilla.sasl_username
+mozilla.sasl_password
+mozilla.sasl_key
+mozilla.sasl_timeout
+mozilla.sasl_fail
+mozilla.autoconnect = on
+mozilla.autoreconnect
+mozilla.autoreconnect_delay
+mozilla.nicks
+mozilla.nicks_alternate
+mozilla.username
+mozilla.realname
+mozilla.local_hostname
+mozilla.usermode
+mozilla.command
+mozilla.command_delay
+mozilla.autojoin
+mozilla.autorejoin
+mozilla.autorejoin_delay
+mozilla.connection_timeout
+mozilla.anti_flood_prio_high
+mozilla.anti_flood_prio_low
+mozilla.away_check
+mozilla.away_check_max_nicks
+mozilla.msg_kick
+mozilla.msg_part
+mozilla.msg_quit
+mozilla.notify
+mozilla.split_msg_max_length
diff --git a/weechat/plugins.conf b/weechat/plugins.conf
index 1f2cfe9..c32019d 100644
--- a/weechat/plugins.conf
+++ b/weechat/plugins.conf
@@ -10,9 +10,6 @@
#
[var]
-fifo.fifo = "on"
-guile.check_license = "on"
-lua.check_license = "on"
perl.beep.beep_command_dcc = "$bell"
perl.beep.beep_command_highlight = "$bell"
perl.beep.beep_command_pv = "$bell"
@@ -44,23 +41,6 @@ perl.chanmon.show_aways = "off"
perl.chatters.frame_color = "red"
perl.chatters.nick_color = "yellow"
perl.chatters.nick_timeout = "600"
-perl.check_license = "on"
-python.bitlbee_typing_notice.channel = "&bitlbee"
-python.bitlbee_typing_notice.server = "bitlbee"
-python.bitlbee_typing_notice.timeout = "4"
-python.check_license = "on"
-python.urlbar.ignore = "grep"
-python.urlbar.remember_amount = "25"
-python.urlbar.show_buffername = "on"
-python.urlbar.show_index = "on"
-python.urlbar.show_nick = "on"
-python.urlbar.show_timestamp = "on"
-python.urlbar.time_format = "%H:%M"
-python.urlbar.use_popup = "on"
-python.urlbar.visible_amount = "5"
-python.urlbar.visible_seconds = "5"
-ruby.check_license = "on"
-tcl.check_license = "on"
[desc]
perl.beep.beep_command_dcc = "command for beep on dcc, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")"
diff --git a/weechat/python/autoload/bitlbee_typing_notice.py b/weechat/python/autoload/bitlbee_typing_notice.py
deleted file mode 100644
index 7e76988..0000000
--- a/weechat/python/autoload/bitlbee_typing_notice.py
+++ /dev/null
@@ -1,189 +0,0 @@
-# -*- coding: utf-8 -*-
-#
-# Copyright (c) 2010 by Alexander Schremmer <alex@alexanderweb.de>
-# Copyright (c) 2013 by Corey Halpin <chalpin@cs.wisc.edu>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-
-#
-# (this script requires WeeChat 0.3.6 or newer)
-#
-# History:
-# 2013-06-24, Priska Herger <policecar@23bit.net>
-# version 0.4: bug fix: if TYPING 0, don't show typing.
-# 2013-04-27, Corey Halpin <chalpin@cs.wisc.edu>
-# version 0.3:
-# * Use irc_message_parse to extract nicks
-# * Send typing = 0 at message completion in private buffers
-# * Make server, channel, and timeout configurable w/o editing plugin code.
-# 2010-05-20, Alexander Schremmer <alex@alexanderweb.de>
-# version 0.2: also handle users that do not send a TYPING 0 msg before quitting
-# removed InfoList code
-# 2010-05-16, Alexander Schremmer <alex@alexanderweb.de>
-# version 0.1: initial release
-
-
-# Configuration options via /set:
-#
-# 'channel'
-# description: Name of your bitlbee channel
-# command: /set plugins.var.python.bitlbee_typing_notice.channel &bitlbee
-#
-# 'server'
-# description: Server running your bitlbee instance.
-# command: /set plugins.var.python.bitlbee_typing_notice.server localhost
-#
-# 'timeout'
-# description: Send "not typing" after this many seconds w/o typing.
-# command: /set plugins.var.python.bitlbee_typing_notice.timeout 4
-#
-# Note, the plugin must be reloaded after either of these settings are changed.
-# /python reload works for this.
-
-
-import weechat as w
-import re
-
-SCRIPT_NAME = "bitlbee_typing_notice"
-SCRIPT_AUTHOR = "Alexander Schremmer <alex@alexanderweb.de>"
-SCRIPT_VERSION = "0.4"
-SCRIPT_LICENSE = "GPL3"
-SCRIPT_DESC = "Shows when somebody is typing on bitlbee and sends the notice as well"
-
-typing = {} # Record nicks who sent typing notices. key = subject nick, val = typing level.
-
-sending_typing = {} # Nicks to whom we're sending typing notices.
-# key = target nick, val = sequence number used to determine when the typing notice
-# should be removed.
-
-def channel_has_nick(server, channel, nick):
- buffer = w.buffer_search("", "%s.%s" % (server, channel))
- return bool(w.nicklist_search_nick(buffer, "", nick))
-
-# Callback which checks for ctcp typing notices sent to us.
-# Updates typing data, hides the ctcp notices.
-def ctcp_cb(data, modifier, modifier_data, string):
- if modifier_data != w.config_get_plugin("server"):
- return string
- msg_hash = w.info_get_hashtable(
- "irc_message_parse", {"message": string} )
- if msg_hash["command"] != "PRIVMSG":
- return string
- match = re.search('\001TYPING ([0-9])\001', msg_hash["arguments"])
- if match:
- nick = msg_hash["nick"]
- typing_level = int(match.groups()[0])
- if typing_level == 0 and nick in typing:
- del typing[nick]
- elif typing_level > 0:
- typing[nick] = typing_level
- w.bar_item_update("bitlbee_typing_notice")
- return ""
- else:
- return string
-
-
-def stop_typing(data, signal, signal_data):
- msg_hash = w.info_get_hashtable(
- "irc_message_parse", {"message": signal_data } )
- if msg_hash["nick"] in typing:
- del typing[msg_hash["nick"]]
- w.bar_item_update("bitlbee_typing_notice")
- return w.WEECHAT_RC_OK
-
-def typed_char(data, signal, signal_data):
- buffer = w.current_buffer()
- input_s = w.buffer_get_string(buffer, 'input')
- server = w.buffer_get_string(buffer, 'localvar_server')
- channel = w.buffer_get_string(buffer, 'localvar_channel')
- buffer_type = w.buffer_get_string(buffer, 'localvar_type')
-
- if server != w.config_get_plugin("server") or input_s.startswith("/"):
- return w.WEECHAT_RC_OK
- if buffer_type == "private":
- if len(input_s)==0:
- send_typing(channel, 0) # Line sent or deleted -- no longer typing
- else:
- send_typing(channel, 1)
- elif channel == w.config_get_plugin("channel"):
- nick_completer = w.config_string("weechat.completion.nick_completer")
- parts = input_s.split(":", 1)
- if len(parts) > 1:
- nick = parts[0]
- send_typing(nick, 1)
- return w.WEECHAT_RC_OK
-
-
-def typing_disable_timer(data, remaining_calls):
- nick, cookie = data.rsplit(":", 1)
- cookie = int(cookie)
- if nick in sending_typing and sending_typing[nick]==cookie:
- send_typing_ctcp(nick, 0)
- del sending_typing[nick]
- return w.WEECHAT_RC_OK
-
-
-def send_typing_ctcp(nick, level):
- if not channel_has_nick(w.config_get_plugin("server"),
- w.config_get_plugin("channel"), nick):
- return
- buffer = w.buffer_search("irc", "%s.%s" %
- (w.config_get_plugin("server"),
- w.config_get_plugin("channel")) )
- w.command(buffer, "/mute -all /ctcp %s TYPING %i" % (nick, level))
-
-
-def send_typing(nick, level):
- if level == 0 and nick in sending_typing:
- send_typing_ctcp(nick, 0)
- del sending_typing[nick]
- elif level > 0 :
- if nick not in sending_typing:
- send_typing_ctcp(nick, level)
- cookie = sending_typing.get(nick, 0) + 1
- sending_typing[nick] = cookie
- w.hook_timer( int(1000 * float(w.config_get_plugin('timeout'))), 0, 1,
- "typing_disable_timer", "%s:%i" % (nick, cookie))
-
-
-def typing_notice_item_cb(data, buffer, args):
- if typing:
- msgs = []
- for key, value in typing.items():
- msg = key
- if value == 2:
- msg += " (stale)"
- msgs.append(msg)
- return "typing: " + ", ".join(sorted(msgs))
- return ""
-
-
-# Main
-if __name__ == "__main__":
- if w.register(SCRIPT_NAME, SCRIPT_AUTHOR, SCRIPT_VERSION, SCRIPT_LICENSE,
- SCRIPT_DESC, "", ""):
-
- if not w.config_get_plugin('channel'):
- w.config_set_plugin('channel', "&bitlbee")
- if not w.config_get_plugin('server'):
- w.config_set_plugin('server', "localhost")
- if not w.config_get_plugin('timeout'):
- w.config_set_plugin('timeout', "4")
-
- w.hook_signal("input_text_changed", "typed_char", "")
- w.hook_signal(w.config_get_plugin("server")+",irc_in_quit", "stop_typing", "")
- w.hook_signal(w.config_get_plugin("server")+",irc_in_privmsg", "stop_typing", "")
- w.bar_item_new('bitlbee_typing_notice', 'typing_notice_item_cb', '')
- w.hook_modifier("irc_in_privmsg", "ctcp_cb", "")
diff --git a/weechat/rmodifier.conf b/weechat/rmodifier.conf
deleted file mode 100644
index f1702ca..0000000
--- a/weechat/rmodifier.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-#
-# rmodifier.conf -- weechat v0.4.3
-#
-
-[look]
-hide_char = "*"
-
-[modifier]
-nickserv = "history_add,input_text_display;^(/(msg|quote) +nickserv +(id|identify|ghost \S+|release \S+) +)(.*);1,4*"
-oper = "history_add,input_text_display;^(/oper +\S+ +)(.*);1,2*"
-quote_pass = "history_add,input_text_display;^(/quote pass +)(.*);1,2*"
-server = "history_add,input_text_display;^(/(server|connect) .*-(sasl_)?password=)(\S+)(.*);1,4*,5"
-set_pass = "history_add;^(/set +\S*password\S* +)(.*);1,2*"
diff --git a/weechat/script.conf b/weechat/script.conf
index d7e8a29..08ae926 100644
--- a/weechat/script.conf
+++ b/weechat/script.conf
@@ -15,7 +15,7 @@ diff_color = on
diff_command = "auto"
display_source = on
quiet_actions = on
-sort = "p,n"
+sort = "i,p,n"
translate_description = on
use_keys = on
@@ -49,8 +49,8 @@ text_version_selected = lightmagenta
[scripts]
autoload = on
-cache_expire = 60
+cache_expire = 1440
download_timeout = 30
hold = ""
path = "%h/script"
-url = "http://www.weechat.org/files/plugins.xml.gz"
+url = "https://weechat.org/files/plugins.xml.gz"
diff --git a/weechat/trigger.conf b/weechat/trigger.conf
index 10d49e4..2424666 100644
--- a/weechat/trigger.conf
+++ b/weechat/trigger.conf
@@ -27,7 +27,7 @@ trigger_disabled = red
[trigger]
beep.arguments = ""
beep.command = "/print -beep"
-beep.conditions = "${tg_highlight} || ${tg_msg_pv}"
+beep.conditions = "${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})"
beep.enabled = on
beep.hook = print
beep.post_action = none
@@ -39,15 +39,23 @@ cmd_pass.conditions = ""
cmd_pass.enabled = on
cmd_pass.hook = modifier
cmd_pass.post_action = none
-cmd_pass.regex = "==^((/(msg|quote) +nickserv +(id|identify|register|ghost +\S+|release +\S+|regain +\S+) +)|/oper +\S+ +|/quote +pass +|/set +\S*password\S* +|/secure +(passphrase|decrypt|set +\S+) +)(.*)==$1$.*+"
+cmd_pass.regex = "==^((/(msg|m|quote) +(-server +[^ ]+ +)?nickserv +(id|identify|set +password|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
cmd_pass.return_code = ok
+cmd_pass_register.arguments = "5000|input_text_display;5000|history_add;5000|irc_command_auth"
+cmd_pass_register.command = ""
+cmd_pass_register.conditions = ""
+cmd_pass_register.enabled = on
+cmd_pass_register.hook = modifier
+cmd_pass_register.post_action = none
+cmd_pass_register.regex = "==^(/(msg|m|quote) +nickserv +register +)([^ ]+)(.*)==${re:1}${hide:*,${re:3}}${re:4}"
+cmd_pass_register.return_code = ok
msg_auth.arguments = "5000|irc_message_auth"
msg_auth.command = ""
msg_auth.conditions = ""
msg_auth.enabled = on
msg_auth.hook = modifier
msg_auth.post_action = none
-msg_auth.regex = "==^(.*(id|identify|register|ghost +\S+|release +\S+) +)(.*)==$1$.*+"
+msg_auth.regex = "==^(.*(id|identify|set +password|register|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
msg_auth.return_code = ok
server_pass.arguments = "5000|input_text_display;5000|history_add"
server_pass.command = ""
@@ -55,5 +63,5 @@ server_pass.conditions = ""
server_pass.enabled = on
server_pass.hook = modifier
server_pass.post_action = none
-server_pass.regex = "==^(/(server|connect) .*-(sasl_)?password=)(\S+)(.*)==$1$.*4$5"
+server_pass.regex = "==^(/(server|connect) .*-(sasl_)?password=)([^ ]+)(.*)==${re:1}${hide:*,${re:4}}${re:5}"
server_pass.return_code = ok
diff --git a/weechat/weechat.conf b/weechat/weechat.conf
index d8f5584..53f3e15 100644
--- a/weechat/weechat.conf
+++ b/weechat/weechat.conf
@@ -28,42 +28,42 @@ bar_more_up = "--"
bare_display_exit_on_input = on
bare_display_time_format = "%H:%M"
buffer_auto_renumber = on
-buffer_notify_default = message
+buffer_notify_default = all
buffer_position = end
buffer_search_case_sensitive = off
buffer_search_force_default = off
buffer_search_regex = off
-buffer_search_where = message
+buffer_search_where = prefix_message
buffer_time_format = "%H:%M:%S"
color_basic_force_bold = off
-color_inactive_buffer = off
+color_inactive_buffer = on
color_inactive_message = on
color_inactive_prefix = on
color_inactive_prefix_buffer = on
color_inactive_time = off
-color_inactive_window = off
+color_inactive_window = on
color_nick_offline = off
color_pairs_auto_reset = 5
color_real_white = on
command_chars = ""
command_incomplete = off
-confirm_quit = on
+confirm_quit = off
confirm_upgrade = off
day_change = on
day_change_message_1date = "-- %a, %d %b %Y --"
day_change_message_2dates = "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"
eat_newline_glitch = off
emphasized_attributes = ""
-highlight = "doy*"
+highlight = ""
highlight_regex = ""
-highlight_tags = "notify_private"
-hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0"
+highlight_tags = ""
+hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"
hotlist_buffer_separator = ", "
hotlist_count_max = 2
hotlist_count_min_msg = 2
hotlist_names_count = 3
hotlist_names_length = 0
-hotlist_names_level = 14
+hotlist_names_level = 12
hotlist_names_merged_buffers = off
hotlist_prefix = "H: "
hotlist_remove = merged
@@ -72,7 +72,7 @@ hotlist_sort = group_time_asc
hotlist_suffix = ""
hotlist_unique_numbers = on
input_cursor_scroll = 20
-input_share = commands
+input_share = none
input_share_overwrite = off
input_undo_max = 32
item_away_message = on
@@ -80,7 +80,7 @@ item_buffer_filter = "*"
item_buffer_zoom = "!"
item_mouse_status = "M"
item_time_format = "%H:%M"
-jump_current_to_previous_buffer = off
+jump_current_to_previous_buffer = on
jump_previous_buffer_when_closing = on
jump_smart_back_to_buffer = on
key_bind_safe = on
@@ -93,7 +93,7 @@ nick_color_stop_chars = "_|["
nick_prefix = "<"
nick_suffix = ">"
paste_auto_add_newline = on
-paste_bracketed = off
+paste_bracketed = on
paste_bracketed_timer_delay = 10
paste_max_lines = 1
prefix_action = " *"
@@ -123,7 +123,7 @@ save_config_with_fsync = off
save_layout_on_exit = none
scroll_amount = 3
scroll_bottom_after_switch = off
-scroll_page_percent = 50
+scroll_page_percent = 100
search_text_not_found_alert = on
separator_horizontal = "-"
separator_vertical = ""
@@ -132,7 +132,7 @@ time_format = "%a, %d %b %Y %T"
window_auto_zoom = off
window_separator_horizontal = on
window_separator_vertical = on
-window_title = "WeeChat ${info:version}"
+window_title = ""
word_chars_highlight = "!\u00A0,-,_,|,alnum"
word_chars_input = "!\u00A0,-,_,|,alnum"
@@ -222,8 +222,8 @@ partial_completion_templates = "config_options"
[history]
display_default = 5
-max_buffer_lines_minutes = 1440
-max_buffer_lines_number = 0
+max_buffer_lines_minutes = 0
+max_buffer_lines_number = 4096
max_commands = 100
max_visited_buffers = 50
@@ -249,7 +249,7 @@ buffers.color_fg = default
buffers.conditions = ""
buffers.filling_left_right = vertical
buffers.filling_top_bottom = horizontal
-buffers.hidden = on
+buffers.hidden = off
buffers.items = "buffers"
buffers.position = left
buffers.priority = 0
@@ -302,7 +302,7 @@ input.type = window
nicklist.color_bg = default
nicklist.color_delim = cyan
nicklist.color_fg = default
-nicklist.conditions = "nicklist"
+nicklist.conditions = "${nicklist}"
nicklist.filling_left_right = vertical
nicklist.filling_top_bottom = columns_vertical
nicklist.hidden = off
@@ -320,7 +320,7 @@ status.conditions = ""
status.filling_left_right = vertical
status.filling_top_bottom = horizontal
status.hidden = off
-status.items = "[time],[buffer_plugin],buffer_number+:+buffer_name+{buffer_nicklist_count}+buffer_filter,[bitlbee_typing_notice],[lag],completion,scroll"
+status.items = "[time],[buffer_plugin],buffer_number+:+buffer_name+{buffer_nicklist_count}+buffer_filter,[lag],completion,scroll"
status.position = bottom
status.priority = 500
status.separator = off
@@ -341,59 +341,34 @@ title.separator = off
title.size = 1
title.size_max = 0
title.type = window
-urlbar.color_bg = default
-urlbar.color_delim = default
-urlbar.color_fg = default
-urlbar.conditions = ""
-urlbar.filling_left_right = vertical
-urlbar.filling_top_bottom = horizontal
-urlbar.hidden = on
-urlbar.items = "urlbar_urls"
-urlbar.position = top
-urlbar.priority = 0
-urlbar.separator = off
-urlbar.size = 0
-urlbar.size_max = 0
-urlbar.type = root
[layout]
-default.buffer = "irc;bitlbee.#twitter_doyster;1"
+default.buffer = "core;weechat;1"
+default.buffer = "irc;server.freenode;1"
+default.buffer = "irc;server.mozilla;1"
default.buffer = "irc;freenode.##crawl-offtopic;2"
default.buffer = "irc;freenode.##crawl-dev;3"
-default.buffer = "irc;freenode.##crawl;4"
-default.buffer = "irc;hackerscool.#hackerscool;5"
-default.buffer = "core;weechat;6"
-default.buffer = "irc;server.freenode;6"
-default.buffer = "irc;server.bitlbee;6"
-default.buffer = "irc;server.hackerscool;6"
-default.buffer = "irc;bitlbee.&bitlbee;7"
-default.buffer = "irc;freenode.sequell;8"
-default.buffer = "irc;freenode.cheibriados;9"
-default.buffer = "irc;freenode.genehack;10"
-default.buffer = "irc;bitlbee.starlifesage;11"
-default.buffer = "irc;bitlbee.sarahjoseph;12"
-default.buffer = "irc;freenode.thermo;13"
-default.buffer = "irc;bitlbee.EmilyCorcoran;14"
-default.buffer = "irc;bitlbee.MelB;15"
-default.window = "1;0;0;0;core;weechat"
+default.buffer = "irc;mozilla.#rust;4"
+default.buffer = "irc;freenode.#litestep;5"
+default.buffer = "irc;freenode.#confidant;6"
+default.window = "1;0;0;0;irc;server.freenode"
default.current = on
[notify]
[filter]
irc_smart = on;*;irc_smart_filter;*
-quietslack = on;irc.ii-slack.*;irc_mode;*
[key]
ctrl-? = "/input delete_previous_char"
ctrl-A = "/input move_beginning_of_line"
ctrl-B = "/input move_previous_char"
+ctrl-C_ = "/input insert \x1F"
ctrl-Cb = "/input insert \x02"
ctrl-Cc = "/input insert \x03"
ctrl-Ci = "/input insert \x1D"
ctrl-Co = "/input insert \x0F"
-ctrl-Cr = "/input insert \x12"
-ctrl-Cu = "/input insert \x15"
+ctrl-Cv = "/input insert \x16"
ctrl-D = "/input delete_next_char"
ctrl-E = "/input move_end_of_line"
ctrl-F = "/input move_next_char"
@@ -405,13 +380,15 @@ ctrl-L = "/window refresh"
ctrl-M = "/input return"
ctrl-N = "/buffer +1"
ctrl-P = "/buffer -1"
-ctrl-R = "/input search_text"
+ctrl-R = "/input search_text_here"
ctrl-Sctrl-U = "/input set_unread"
ctrl-T = "/input transpose_chars"
ctrl-U = "/input delete_beginning_of_line"
ctrl-W = "/buffer close"
ctrl-X = "/input switch_active_buffer"
ctrl-Y = "/input clipboard_paste"
+meta-meta-OP = "/bar scroll buflist * b"
+meta-meta-OQ = "/bar scroll buflist * e"
meta-meta2-1~ = "/window scroll_top"
meta-meta2-23~ = "/bar scroll nicklist * b"
meta-meta2-24~ = "/bar scroll nicklist * e"
@@ -432,6 +409,7 @@ meta-& = "/buffer *7"
meta-( = "/buffer *9"
meta-) = "/buffer *10"
meta-* = "/buffer *8"
+meta-- = "/filter toggle @"
meta-/ = "/input jump_last_buffer_displayed"
meta-0 = "/buffer *10"
meta-1 = "/buffer *1"
@@ -453,6 +431,8 @@ meta-OC = "/input move_next_word"
meta-OD = "/input move_previous_word"
meta-OF = "/input move_end_of_line"
meta-OH = "/input move_beginning_of_line"
+meta-OP = "/bar scroll buflist * -100%"
+meta-OQ = "/bar scroll buflist * +100%"
meta-Oa = "/input history_global_previous"
meta-Ob = "/input history_global_next"
meta-Oc = "/input move_next_word"
@@ -465,6 +445,8 @@ meta2-1;3A = "/buffer -1"
meta2-1;3B = "/buffer +1"
meta2-1;3C = "/buffer +1"
meta2-1;3D = "/buffer -1"
+meta2-1;3F = "/window scroll_bottom"
+meta2-1;3H = "/window scroll_top"
meta2-1;5A = "/input history_global_previous"
meta2-1;5B = "/input history_global_next"
meta2-1;5C = "/input move_next_word"
@@ -474,7 +456,9 @@ meta2-200~ = "/input paste_start"
meta2-201~ = "/input paste_stop"
meta2-20~ = "/bar scroll title * -30%"
meta2-21~ = "/bar scroll title * +30%"
+meta2-23;3~ = "/bar scroll nicklist * b"
meta2-23~ = "/bar scroll nicklist * -100%"
+meta2-24;3~ = "/bar scroll nicklist * e"
meta2-24~ = "/bar scroll nicklist * +100%"
meta2-3~ = "/input delete_next_char"
meta2-4~ = "/input move_end_of_line"
@@ -503,109 +487,111 @@ meta-e = "/buffer *13"
meta-f = "/input move_next_word"
meta-h = "/input hotlist_clear"
meta-i = "/buffer *18"
-meta-jmeta-l = "/input jump_last_buffer"
+meta-jmeta-f = "/buffer -"
+meta-jmeta-l = "/buffer +"
meta-jmeta-r = "/server raw"
meta-jmeta-s = "/server jump"
-meta-j01 = "/buffer 1"
-meta-j02 = "/buffer 2"
-meta-j03 = "/buffer 3"
-meta-j04 = "/buffer 4"
-meta-j05 = "/buffer 5"
-meta-j06 = "/buffer 6"
-meta-j07 = "/buffer 7"
-meta-j08 = "/buffer 8"
-meta-j09 = "/buffer 9"
-meta-j10 = "/buffer 10"
-meta-j11 = "/buffer 11"
-meta-j12 = "/buffer 12"
-meta-j13 = "/buffer 13"
-meta-j14 = "/buffer 14"
-meta-j15 = "/buffer 15"
-meta-j16 = "/buffer 16"
-meta-j17 = "/buffer 17"
-meta-j18 = "/buffer 18"
-meta-j19 = "/buffer 19"
-meta-j20 = "/buffer 20"
-meta-j21 = "/buffer 21"
-meta-j22 = "/buffer 22"
-meta-j23 = "/buffer 23"
-meta-j24 = "/buffer 24"
-meta-j25 = "/buffer 25"
-meta-j26 = "/buffer 26"
-meta-j27 = "/buffer 27"
-meta-j28 = "/buffer 28"
-meta-j29 = "/buffer 29"
-meta-j30 = "/buffer 30"
-meta-j31 = "/buffer 31"
-meta-j32 = "/buffer 32"
-meta-j33 = "/buffer 33"
-meta-j34 = "/buffer 34"
-meta-j35 = "/buffer 35"
-meta-j36 = "/buffer 36"
-meta-j37 = "/buffer 37"
-meta-j38 = "/buffer 38"
-meta-j39 = "/buffer 39"
-meta-j40 = "/buffer 40"
-meta-j41 = "/buffer 41"
-meta-j42 = "/buffer 42"
-meta-j43 = "/buffer 43"
-meta-j44 = "/buffer 44"
-meta-j45 = "/buffer 45"
-meta-j46 = "/buffer 46"
-meta-j47 = "/buffer 47"
-meta-j48 = "/buffer 48"
-meta-j49 = "/buffer 49"
-meta-j50 = "/buffer 50"
-meta-j51 = "/buffer 51"
-meta-j52 = "/buffer 52"
-meta-j53 = "/buffer 53"
-meta-j54 = "/buffer 54"
-meta-j55 = "/buffer 55"
-meta-j56 = "/buffer 56"
-meta-j57 = "/buffer 57"
-meta-j58 = "/buffer 58"
-meta-j59 = "/buffer 59"
-meta-j60 = "/buffer 60"
-meta-j61 = "/buffer 61"
-meta-j62 = "/buffer 62"
-meta-j63 = "/buffer 63"
-meta-j64 = "/buffer 64"
-meta-j65 = "/buffer 65"
-meta-j66 = "/buffer 66"
-meta-j67 = "/buffer 67"
-meta-j68 = "/buffer 68"
-meta-j69 = "/buffer 69"
-meta-j70 = "/buffer 70"
-meta-j71 = "/buffer 71"
-meta-j72 = "/buffer 72"
-meta-j73 = "/buffer 73"
-meta-j74 = "/buffer 74"
-meta-j75 = "/buffer 75"
-meta-j76 = "/buffer 76"
-meta-j77 = "/buffer 77"
-meta-j78 = "/buffer 78"
-meta-j79 = "/buffer 79"
-meta-j80 = "/buffer 80"
-meta-j81 = "/buffer 81"
-meta-j82 = "/buffer 82"
-meta-j83 = "/buffer 83"
-meta-j84 = "/buffer 84"
-meta-j85 = "/buffer 85"
-meta-j86 = "/buffer 86"
-meta-j87 = "/buffer 87"
-meta-j88 = "/buffer 88"
-meta-j89 = "/buffer 89"
-meta-j90 = "/buffer 90"
-meta-j91 = "/buffer 91"
-meta-j92 = "/buffer 92"
-meta-j93 = "/buffer 93"
-meta-j94 = "/buffer 94"
-meta-j95 = "/buffer 95"
-meta-j96 = "/buffer 96"
-meta-j97 = "/buffer 97"
-meta-j98 = "/buffer 98"
-meta-j99 = "/buffer 99"
+meta-j01 = "/buffer *1"
+meta-j02 = "/buffer *2"
+meta-j03 = "/buffer *3"
+meta-j04 = "/buffer *4"
+meta-j05 = "/buffer *5"
+meta-j06 = "/buffer *6"
+meta-j07 = "/buffer *7"
+meta-j08 = "/buffer *8"
+meta-j09 = "/buffer *9"
+meta-j10 = "/buffer *10"
+meta-j11 = "/buffer *11"
+meta-j12 = "/buffer *12"
+meta-j13 = "/buffer *13"
+meta-j14 = "/buffer *14"
+meta-j15 = "/buffer *15"
+meta-j16 = "/buffer *16"
+meta-j17 = "/buffer *17"
+meta-j18 = "/buffer *18"
+meta-j19 = "/buffer *19"
+meta-j20 = "/buffer *20"
+meta-j21 = "/buffer *21"
+meta-j22 = "/buffer *22"
+meta-j23 = "/buffer *23"
+meta-j24 = "/buffer *24"
+meta-j25 = "/buffer *25"
+meta-j26 = "/buffer *26"
+meta-j27 = "/buffer *27"
+meta-j28 = "/buffer *28"
+meta-j29 = "/buffer *29"
+meta-j30 = "/buffer *30"
+meta-j31 = "/buffer *31"
+meta-j32 = "/buffer *32"
+meta-j33 = "/buffer *33"
+meta-j34 = "/buffer *34"
+meta-j35 = "/buffer *35"
+meta-j36 = "/buffer *36"
+meta-j37 = "/buffer *37"
+meta-j38 = "/buffer *38"
+meta-j39 = "/buffer *39"
+meta-j40 = "/buffer *40"
+meta-j41 = "/buffer *41"
+meta-j42 = "/buffer *42"
+meta-j43 = "/buffer *43"
+meta-j44 = "/buffer *44"
+meta-j45 = "/buffer *45"
+meta-j46 = "/buffer *46"
+meta-j47 = "/buffer *47"
+meta-j48 = "/buffer *48"
+meta-j49 = "/buffer *49"
+meta-j50 = "/buffer *50"
+meta-j51 = "/buffer *51"
+meta-j52 = "/buffer *52"
+meta-j53 = "/buffer *53"
+meta-j54 = "/buffer *54"
+meta-j55 = "/buffer *55"
+meta-j56 = "/buffer *56"
+meta-j57 = "/buffer *57"
+meta-j58 = "/buffer *58"
+meta-j59 = "/buffer *59"
+meta-j60 = "/buffer *60"
+meta-j61 = "/buffer *61"
+meta-j62 = "/buffer *62"
+meta-j63 = "/buffer *63"
+meta-j64 = "/buffer *64"
+meta-j65 = "/buffer *65"
+meta-j66 = "/buffer *66"
+meta-j67 = "/buffer *67"
+meta-j68 = "/buffer *68"
+meta-j69 = "/buffer *69"
+meta-j70 = "/buffer *70"
+meta-j71 = "/buffer *71"
+meta-j72 = "/buffer *72"
+meta-j73 = "/buffer *73"
+meta-j74 = "/buffer *74"
+meta-j75 = "/buffer *75"
+meta-j76 = "/buffer *76"
+meta-j77 = "/buffer *77"
+meta-j78 = "/buffer *78"
+meta-j79 = "/buffer *79"
+meta-j80 = "/buffer *80"
+meta-j81 = "/buffer *81"
+meta-j82 = "/buffer *82"
+meta-j83 = "/buffer *83"
+meta-j84 = "/buffer *84"
+meta-j85 = "/buffer *85"
+meta-j86 = "/buffer *86"
+meta-j87 = "/buffer *87"
+meta-j88 = "/buffer *88"
+meta-j89 = "/buffer *89"
+meta-j90 = "/buffer *90"
+meta-j91 = "/buffer *91"
+meta-j92 = "/buffer *92"
+meta-j93 = "/buffer *93"
+meta-j94 = "/buffer *94"
+meta-j95 = "/buffer *95"
+meta-j96 = "/buffer *96"
+meta-j97 = "/buffer *97"
+meta-j98 = "/buffer *98"
+meta-j99 = "/buffer *99"
meta-k = "/input grab_key_command"
+meta-l = "/window bare"
meta-m = "/mute mouse toggle"
meta-n = "/window scroll_next_highlight"
meta-o = "/buffer *19"
@@ -630,11 +616,14 @@ meta-z = "/window zoom"
ctrl-_ = "/input undo"
[key_search]
-ctrl-J = "/input search_stop"
-ctrl-M = "/input search_stop"
-ctrl-R = "/input search_switch_case"
+ctrl-I = "/input search_switch_where"
+ctrl-J = "/input search_stop_here"
+ctrl-M = "/input search_stop_here"
+ctrl-Q = "/input search_stop"
+ctrl-R = "/input search_switch_regex"
meta2-A = "/input search_previous"
meta2-B = "/input search_next"
+meta-c = "/input search_switch_case"
[key_cursor]
ctrl-J = "/cursor stop"
@@ -685,6 +674,10 @@ meta2-D = "/cursor move left"
@item(buffers):button2* = "hsignal:buffers_mouse"
@item(buflist):button1* = "hsignal:buflist_mouse"
@item(buflist):button2* = "hsignal:buflist_mouse"
+@item(buflist2):button1* = "hsignal:buflist_mouse"
+@item(buflist2):button2* = "hsignal:buflist_mouse"
+@item(buflist3):button1* = "hsignal:buflist_mouse"
+@item(buflist3):button2* = "hsignal:buflist_mouse"
@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%"
@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%"
@chat:button1 = "/window ${_window_number}"
@@ -692,6 +685,8 @@ meta2-D = "/cursor move left"
@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1"
@chat:button1-gesture-right = "/window ${_window_number};/buffer +1"
@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer"
+@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%"
+@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%"
@chat:wheeldown = "/window scroll_down -window ${_window_number}"
@chat:wheelup = "/window scroll_up -window ${_window_number}"
@*:button3 = "/cursor go ${_x},${_y}"