#compdef irssi
local expl
_irssi_servers() {
local a
a=( $(grep "\(^[{ ]*address\)\|\([{ ]address\)[ ]*=" ~/.irssi/config | sed -e "s,^.*address *= *\"\([^\"]\+\).*,\1 ,g") )
_wanted irc-servers expl 'irc server' compadd "$@" -a - a
}
_irssi_ports() {
local a
a=( $(grep "\(^[{ ]*port\)\|\([{ ]port\)[ ]*=" ~/.irssi/config | sed -e "s,^.*port *= *\"\([^\"]\+\).*,\1,g") )
_wanted ports expl 'port' compadd "$@" -a - a
}
_irssi_nick() {
local a
a=( $(grep "\(^[{ ]*nick\)\|\([{ ]nick\)\|\([{ ]alternate_nick\)\|\(^[{ ]*alternate_nick\)[ ]*=" ~/.irssi/config | sed -e "s,^.*nick *= *\"\([^\"]\+\).*,\1,g") )
_wanted nicknames expl 'nick' compadd "$@" -a - a
}
_arguments -s \
'--config=[config file]:config:_files' \
'--home=[home dir location]:home:_dir_list' \
'(-c --connect)'{-c,--connect=}'[connect to servers]:irc server:_irssi_servers' \
'(-w --password)'{-w,--password=}'[password]:password' \
'(-p --port)'{-p,--port=}'[specify a port]:port:_irssi_ports' \
'-![disable autoconnect]' \
'--noconnect[disable autoconnect]' \
'(-n --nick)'{-n,--nick=}'[set nick name]:nick:_irssi_nick' \
'(-h --hostname)'{-h,--hostname=}'[specify hostname]:hostname:_hosts' \
'(-)'{-v,--version}'[display version information]' \
'(-)'{-\?,--help}'[display help information]' \
'(-)--usage[display usage]'
Copyright 2K16 - 2K18 Indonesian Hacker Rulez