#compdef irssi

typeset -A opt_args

local expl

_irssi_servers() {
		local a
		a=($(grep "\(^[{ 	]*address\)\|\([{ 	]address\)[ 	]*=" ~/.irssi/config | sed -e "s,^.*address *= *\"\([^\"]\+\).*,\1 ,g"))
		compadd -x 'use "--help" to get descriptions' $a[@]
		}

_irssi_ports() {
		local a
		a=($(grep "\(^[{ 	]*port\)\|\([{ 	]port\)[ 	]*=" ~/.irssi/config | sed -e "s,^.*port *= *\"\([^\"]\+\).*,\1,g"))
		compadd -x 'use "--help" to get descriptions' $a[@]
		}

_irssi_nick() {
		local a
		a=($(grep "\(^[{ 	]*nick\)\|\([{ 	]nick\)\|\([{ 	]alternate_nick\)\|\(^[{ 	]*alternate_nick\)[ 	]*=" ~/.irssi/config | sed -e "s,^.*nick *= *\"\([^\"]\+\).*,\1,g"))
		compadd -x 'use "--help" to get descriptions' $a[@]
		}

_arguments -C -s \
	"--config=[config file]:config:_files" \
	"--home=[home dir location]:home:_dir_list" \
	"-c[connect to servers]:irc servers: _irssi_servers" \
	"--connect=[connect to servers]:irc servers: _irssi_servers" \
	'-w[password]' \
	'--password=[password]' \
	"-p[specify a port]:port: _irssi_ports" \
	"--port=[specify a port]:port: _irssi_ports" \
	'-![disable autoconnect]' \
	'--noconnect[disable autoconnect]' \
	"-n[set nick name]:nick: _irssi_nick" \
	"--nick=[set nick name]:nick: _irssi_nick" \
	'-h[hostname]' \
	'--hostname=[hostname]' \
	'-v[version]' \
	'--version[version]' \
	'-?[help message]' \
	'--help[help message]' \
	'--usage[display usage]' \

