diff options
-rw-r--r-- | net-irc/epic4/Manifest | 70 | ||||
-rw-r--r-- | net-irc/epic4/epic4-1.1.16-r1.ebuild | 74 | ||||
-rw-r--r-- | net-irc/epic4/files/digest-epic4-1.1.16-r1 | 2 | ||||
-rw-r--r-- | net-irc/epic4/files/local | 986 |
4 files changed, 29 insertions, 1103 deletions
diff --git a/net-irc/epic4/Manifest b/net-irc/epic4/Manifest index 5f2e28912053..03e43948bff6 100644 --- a/net-irc/epic4/Manifest +++ b/net-irc/epic4/Manifest @@ -9,57 +9,45 @@ AUX epic-defaultserver.patch 620 RMD160 4bf5e68879cc31e56dda22fba66f7257b9f7fe85 MD5 a0a06abf43f925f0472c026573bf622f files/epic-defaultserver.patch 620 RMD160 4bf5e68879cc31e56dda22fba66f7257b9f7fe85 files/epic-defaultserver.patch 620 SHA256 54d016eb90d1b1aab13d399398ba69450876941f947f53e9b9341d32e24403ea files/epic-defaultserver.patch 620 -AUX local 21043 RMD160 f2b49ea51ef84ac3b5d697ecdde7d0bc1d25ba24 SHA1 de479d3de9ad7f0d77042b3115983f5459a578aa SHA256 e0669e6b18690bc8c1dd0c79efe0adfa4b493acec02838d99c6906998b236ed2 -MD5 1d5075abb862c8b98c2b16df96e37407 files/local 21043 -RMD160 f2b49ea51ef84ac3b5d697ecdde7d0bc1d25ba24 files/local 21043 -SHA256 e0669e6b18690bc8c1dd0c79efe0adfa4b493acec02838d99c6906998b236ed2 files/local 21043 -DIST epic4-1.1.16.tar.bz2 607142 DIST epic4-2.0.tar.bz2 627102 DIST epic4-2.2.tar.bz2 623254 RMD160 8f1f1b446bd3260e665093864f1becc0b625be32 SHA1 88d4140e693b571ceb8148f98d504a5fefa74076 SHA256 7f3f011c2392e19c0f12ae669c28f14e8a730918778809191672300dced76291 DIST epic4-2.4.tar.bz2 624067 RMD160 94b7dd1991349848edc0e5165d4d76b396bb859c SHA1 624134a11e046adf5517ff9474954d292b88ac38 SHA256 b2a7e2465950081feb1f8f438a662a1c41c2d53f9888f07c7a316733871f4125 -DIST epic4-help-20030114.tar.gz 287157 DIST epic4-help-20040801.tar.gz 302562 DIST epic4-help-20050315.tar.gz 332502 RMD160 b4237357e905468ab4fd7710283d6bffee067c5e SHA1 0651d4960b017987a726b4f5fc8ed5e5b130d4a2 SHA256 714afd07348731e6ac82e1f6548acc12e84539b3106ab27fa5d00ed5696256f7 -EBUILD epic4-1.1.16-r1.ebuild 2070 RMD160 1b3de68a359dce02c6467d04e0e0d93c4708f948 SHA1 e8b1fdb26c8eecfcf9905d5193594540135172c3 SHA256 29e6c0bedb984970445d455864b169acedbc5d0c036eda2aae96bac4b6b211a8 -MD5 0482a9daf7e246c66859edbbaffc3d67 epic4-1.1.16-r1.ebuild 2070 -RMD160 1b3de68a359dce02c6467d04e0e0d93c4708f948 epic4-1.1.16-r1.ebuild 2070 -SHA256 29e6c0bedb984970445d455864b169acedbc5d0c036eda2aae96bac4b6b211a8 epic4-1.1.16-r1.ebuild 2070 -EBUILD epic4-2.0-r1.ebuild 2334 RMD160 fd6a14ca535bda04d93e86819bd40d1499794867 SHA1 7ef7ad5b9d66ea2da54b5d87a417c4505d9e0adf SHA256 dcf6a242d48e0b809e718fb9265fc62ffb7403695cc24430576325dffbc3aa1b -MD5 e4c12d859ec24fec1886a4b1ee13325c epic4-2.0-r1.ebuild 2334 -RMD160 fd6a14ca535bda04d93e86819bd40d1499794867 epic4-2.0-r1.ebuild 2334 -SHA256 dcf6a242d48e0b809e718fb9265fc62ffb7403695cc24430576325dffbc3aa1b epic4-2.0-r1.ebuild 2334 -EBUILD epic4-2.2.ebuild 2192 RMD160 12aaf85928cd6bbcc2e965184fb556a6866c9e2c SHA1 b0aad526c97d5796b9944741dc54963384d42b3c SHA256 184dc8e1a263051bcc287aea66af101a6893243a1ab87ae712c0a1a2fb42b54f -MD5 df52c5bf4a161ebab07e071238ab400a epic4-2.2.ebuild 2192 -RMD160 12aaf85928cd6bbcc2e965184fb556a6866c9e2c epic4-2.2.ebuild 2192 -SHA256 184dc8e1a263051bcc287aea66af101a6893243a1ab87ae712c0a1a2fb42b54f epic4-2.2.ebuild 2192 -EBUILD epic4-2.4.ebuild 2188 RMD160 f1723887f91fe4a2cec0937a7b65afc0e09800e1 SHA1 63e8787acf9238935a2bbe2e7b416ee4eeb1c2d3 SHA256 c6f3f75b86798c3beb2a9f0e23268d6a9e8e2822636f20ede19bd90f597f9ab1 -MD5 3870c99d3115fb35e0428c51a422b9cf epic4-2.4.ebuild 2188 -RMD160 f1723887f91fe4a2cec0937a7b65afc0e09800e1 epic4-2.4.ebuild 2188 -SHA256 c6f3f75b86798c3beb2a9f0e23268d6a9e8e2822636f20ede19bd90f597f9ab1 epic4-2.4.ebuild 2188 -MISC ChangeLog 9353 RMD160 d47c423db27332fd2776f4fa8ae1620bc0340fbf SHA1 3bfca226e83aaff159ca9c9a5632e56897045d59 SHA256 749de41ddd891da315330ed71ce9a06b661c362bd1d8d12ee56e1e5e07721333 -MD5 86fd41d24c870a9763697837aaeaf3c8 ChangeLog 9353 -RMD160 d47c423db27332fd2776f4fa8ae1620bc0340fbf ChangeLog 9353 -SHA256 749de41ddd891da315330ed71ce9a06b661c362bd1d8d12ee56e1e5e07721333 ChangeLog 9353 +DIST epic4-local.bz2 6530 RMD160 ed7e0d3f8c9d24794b4a9718ae31982934e4056f SHA1 12e091611f5cc6c50e54516a4f4212ad1901bde4 SHA256 4509ac8e491ac0b75dc5ddcef845b02b3610804dd98de9b5b98d58630be322cd +EBUILD epic4-2.0-r1.ebuild 2374 RMD160 a33e71001153932e28e37f80fb8f4616fa0a64cc SHA1 0c855a9de0c0c47db9f255d1482212a27c3ceb57 SHA256 3a9e1cac5022d8e4ab31c5a1bd526668fd74bec8b39b9afb31916fb5c9825c82 +MD5 64438f236faded4bf71076e1c3454599 epic4-2.0-r1.ebuild 2374 +RMD160 a33e71001153932e28e37f80fb8f4616fa0a64cc epic4-2.0-r1.ebuild 2374 +SHA256 3a9e1cac5022d8e4ab31c5a1bd526668fd74bec8b39b9afb31916fb5c9825c82 epic4-2.0-r1.ebuild 2374 +EBUILD epic4-2.2.ebuild 2865 RMD160 6b8276a8c06777d0caf21054b1aea6c60a25584a SHA1 320e3bf985321f6bcc566f0d0902201a52ed6edf SHA256 8463fededfbcfd05d1a95c9ecc1bb1bde6e92b8ef7a2a0d1bb3bbd7271d179aa +MD5 25291b863bcc85bae579cafa7f645093 epic4-2.2.ebuild 2865 +RMD160 6b8276a8c06777d0caf21054b1aea6c60a25584a epic4-2.2.ebuild 2865 +SHA256 8463fededfbcfd05d1a95c9ecc1bb1bde6e92b8ef7a2a0d1bb3bbd7271d179aa epic4-2.2.ebuild 2865 +EBUILD epic4-2.4.ebuild 2871 RMD160 519edf021335aa2ccf23edb9b1ce091089cd960a SHA1 620f043032f2b66f7fe5ed64c94a76fe2456737e SHA256 abff383905306ec2a3f9202efd36612fb08cfe15a9005b4b78ce8fa1725a3b3e +MD5 fa8cf5851dc5a84174410e8ad8ce169e epic4-2.4.ebuild 2871 +RMD160 519edf021335aa2ccf23edb9b1ce091089cd960a epic4-2.4.ebuild 2871 +SHA256 abff383905306ec2a3f9202efd36612fb08cfe15a9005b4b78ce8fa1725a3b3e epic4-2.4.ebuild 2871 +MISC ChangeLog 9584 RMD160 85bc658ca336d4823b327bf33500801ce2006860 SHA1 2b8eff7e51f032d03737718c79c9b84f0fdc9a27 SHA256 1a200e6194ab44f94ed3b50382d1668ec80796297c370cf83b86059ace7842b4 +MD5 1fafc382ce1b78dee51f34aae5a64590 ChangeLog 9584 +RMD160 85bc658ca336d4823b327bf33500801ce2006860 ChangeLog 9584 +SHA256 1a200e6194ab44f94ed3b50382d1668ec80796297c370cf83b86059ace7842b4 ChangeLog 9584 MISC metadata.xml 160 RMD160 279429d1df694561fc2b163cb81c09387b9d940c SHA1 97da1b72eecc5585c65717da08eaccc9bc1cf7cd SHA256 5e058419199e306612929b80a996e3d16c6b20de674a56bb60558d3d36524fe2 MD5 44c39c6ad372a8e5a5e7ee3311f703a7 metadata.xml 160 RMD160 279429d1df694561fc2b163cb81c09387b9d940c metadata.xml 160 SHA256 5e058419199e306612929b80a996e3d16c6b20de674a56bb60558d3d36524fe2 metadata.xml 160 -MD5 8668b72bb8d4af8c83ddcbb8fc606022 files/digest-epic4-1.1.16-r1 136 -RMD160 4ac7eee23d385d2db87606eee5ec037b9f4982e7 files/digest-epic4-1.1.16-r1 136 -SHA256 984bb2b711f6787f42ba68437be85c910c692c65cb780fded51d931473ab8a59 files/digest-epic4-1.1.16-r1 136 -MD5 cbb9caa10a6573474c6e18ca5e01b85e files/digest-epic4-2.0-r1 133 -RMD160 8050b19aa1c8764a9b0e7bb814e25e3cdb8c36d2 files/digest-epic4-2.0-r1 133 -SHA256 cd3b8a11ad520ff1d20ecc3d96eaf38df3074061caee6becc9e15554d6b2d0de files/digest-epic4-2.0-r1 133 -MD5 b8644e92188ec97bddb4789e3b58c0fb files/digest-epic4-2.2 491 -RMD160 a5314e21de0e2516c1230d758335a2bf60cdc010 files/digest-epic4-2.2 491 -SHA256 f7c79a4b7eee1fe2555738b55e25ed7f2d79c0f492f8e9ce3aa329654604b1ad files/digest-epic4-2.2 491 -MD5 e99605e1b98324f9a129775416b6a1ae files/digest-epic4-2.4 491 -RMD160 7d20ba8ba83b995e2c972e036967b591a2981141 files/digest-epic4-2.4 491 -SHA256 31f9709cf11f2af4e515edcfb19bb56894edb7c1c0d11f55078465f3128e7970 files/digest-epic4-2.4 491 +MD5 3def9b5ca6b3f5a2b94a7768a7f2e64f files/digest-epic4-2.0-r1 353 +RMD160 c5745f004d9bf4ced81d6fd2e510a13bc754e16c files/digest-epic4-2.0-r1 353 +SHA256 ea80db66c17484d16221477ee63f4ca252760655e7ac864dd1998165286e3e2a files/digest-epic4-2.0-r1 353 +MD5 6d46bd3e80135c96c4fb4cf6c66f270f files/digest-epic4-2.2 711 +RMD160 257f4f9a3a665d0c2b40a6c14f4161896f5f2fe6 files/digest-epic4-2.2 711 +SHA256 5782db367d693032729b7c7807301c304de17f355d0764b27ec085371c79cb6a files/digest-epic4-2.2 711 +MD5 ff6a4c1bcfb00a86da3a340a4ea9c587 files/digest-epic4-2.4 711 +RMD160 ad68b4b05c732f1ced85084f4394f4f14c43410f files/digest-epic4-2.4 711 +SHA256 c66b6eaf9c735c795a2cd78659735451e6d781b8bcd62982abcfbf1ec0efd1f3 files/digest-epic4-2.4 711 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) -iD8DBQFE/e7Sz974XjDVpbkRAs66AKCn5u80WiQbxL3K70H1EhNAOPmAIACgvEVC -tuKFmxmDlKSIjqb5sdLXWpE= -=oxOr +iD8DBQFFNpq/z974XjDVpbkRAk/LAJ40tSwE2UHzw7kueNr0WOtFhGmsIACeObu9 +LyoKoNu00AIXMHvMpC8etR8= +=o7pT -----END PGP SIGNATURE----- diff --git a/net-irc/epic4/epic4-1.1.16-r1.ebuild b/net-irc/epic4/epic4-1.1.16-r1.ebuild deleted file mode 100644 index 095422e12669..000000000000 --- a/net-irc/epic4/epic4-1.1.16-r1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/epic4/epic4-1.1.16-r1.ebuild,v 1.8 2005/09/11 14:01:00 swegener Exp $ - -inherit flag-o-matic eutils - -DESCRIPTION="Epic4 IRC Client" -HOMEPAGE="http://epicsol.org/" -SRC_URI="ftp://prbh.org/pub/epic/EPIC4-ALPHA/${P}.tar.bz2 - ftp://prbh.org/pub/epic/EPIC4-PRODUCTION/epic4-help-20030114.tar.gz" - -LICENSE="as-is" -SLOT="0" -KEYWORDS="~x86 ~ppc ia64 ~alpha hppa amd64" -IUSE="ipv6 perl ssl tcltk" - -DEPEND=">=sys-libs/ncurses-5.2 - perl? ( >=dev-lang/perl-5.6.1 ) - ssl? ( >=dev-libs/openssl-0.9.5 ) - tcltk? ( dev-lang/tcl )" - -src_compile() { - replace-flags "-O?" "-O" - - myconf="" - - epatch ${FILESDIR}/epic-defaultserver.patch - - myconf="${myconf} `use_with ipv6`" - myconf="${myconf} `use_with perl`" - myconf="${myconf} `use_with ssl`" - myconf="${myconf} `use_with tcltk`" - - econf \ - --libexecdir=/usr/lib/misc \ - ${myconf} || die "econf failed" - - make || die "make failed" -} - -src_install() { - einstall \ - sharedir=${D}/usr/share \ - libexecdir=${D}/usr/lib/misc || die - - rm -f ${D}/usr/bin/epic - dosym epic-EPIC4-${PV} /usr/bin/epic - - dodoc BUG_FORM COPYRIGHT README KNOWNBUGS VOTES - docinto doc - cd doc - dodoc *.txt colors EPIC* IRCII_VERSIONS local_vars missing new-load - dodoc nicknames outputhelp server_groups SILLINESS TS4 - - dodir /usr/share/epic - tar zxvf ${DISTDIR}/epic4-help-20030114.tar.gz -C ${D}/usr/share/epic - - rm -f ${D}/usr/share/epic/help/Makefile - rm -rf ${D}/usr/share/epic/help/CVS - - chown -R root:root ${D}/usr/share/epic/help -} - -pkg_postinst() { - einfo "If /usr/share/epic/script/local does not exist, I will now" - einfo "create it. If you do not like the look/feel of this file, or" - einfo "if you'd prefer to use your own script, simply remove this" - einfo "file. If you want to prevent this file from being installed" - einfo "in the future, simply create an empty file with this name." - - if [ ! -f ${ROOT}/usr/share/epic/script/local ]; then - cp ${FILESDIR}/local ${ROOT}/usr/share/epic/script/ - fi -} diff --git a/net-irc/epic4/files/digest-epic4-1.1.16-r1 b/net-irc/epic4/files/digest-epic4-1.1.16-r1 deleted file mode 100644 index caa8eccdeac1..000000000000 --- a/net-irc/epic4/files/digest-epic4-1.1.16-r1 +++ /dev/null @@ -1,2 +0,0 @@ -MD5 92f62697a9952b2f4210dd693803d3d0 epic4-1.1.16.tar.bz2 607142 -MD5 f4220b4cf989e320fbbd6051c5117307 epic4-help-20030114.tar.gz 287157 diff --git a/net-irc/epic4/files/local b/net-irc/epic4/files/local deleted file mode 100644 index 5621702142b3..000000000000 --- a/net-irc/epic4/files/local +++ /dev/null @@ -1,986 +0,0 @@ -if (fexist(~/.ircrc) == -1 && fexist(~/.epicrc == -1)) { -# set this if you want logging -# assign win_logdir logs - -# uncomment this if you don't want time stamping -# timestamp off - -# uncomment this if you want ctcp cloaking -# cloak on - -# *** key bindings *** - -bind ^[1 parse_command window swap 1 -bind ^[2 parse_command window swap 2 -bind ^[3 parse_command window swap 3 -bind ^[4 parse_command window swap 4 -bind ^[5 parse_command window swap 5 -bind ^[6 parse_command window swap 6 -bind ^[7 parse_command window swap 7 -bind ^[8 parse_command window swap 8 -bind ^[9 parse_command window swap 9 -bind ^[0 parse_command window swap 10 - - -# *** variable sets *** - -set -continued_line -set dcc_auto_send_rejects off -set dcc_timeout 60 -set dcc_sliding_window 1000 -set auto_rejoin off -set log_rewrite $log_format($1-) -set mangle_logfiles all -set mirc_broken_dcc_resume on -set status_format 16,12%T [%R] %=%@%N%*%#%S%H%B%Q%A%C%+%I%O%M%F%L %D - - -# make sure that our logging directory exists - -if (!(win_logdir == [])) { - @mkdir($win_logdir) -} - - -# create status and msg windows, if necessary - -if (winnam(status) == []) { - window 1 name status level CRAP,PUBLIC,WALLS,WALLOPS,SNOTES,CTCP,USERLOG1,USERLOG2,USERLOG3,USERLOG4 - if (!(win_logdir == [])) { - ^window logfile $win_logdir/status.log log on - } - @ setitem(my_wins 0 blank_item) - @ setitem(my_wins 1 status) -} - -if (winnam(queries) == []) { - window new name queries level msgs,actions,dcc hide - if (!(win_logdir == [])) { - ^window queries logfile $win_logdir/msg.log log on - } - @ setitem(my_wins 2 queries) -} - - -# *** aliases *** - -alias ban { - if ([$0] == []) { - xecho -b Usage: /ban <nickname> - return - } - - userhost $0 -cmd { - @:usr_nick = [$0] - @:usr_id = [$3] - @:usr_host = [$4] - } - - @:re = regcomp(^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\$) - - if (regexec($re $usr_host)) { - @:usr_dom = count(. $usr_host) > 1 ? [*.$after(-2 . $usr_host)] : [*.$usr_host] - } { - @:usr_dom = [$before(-1 . $usr_host).*] - } - - switch ($1) { - (1) { - //mode $C +b $usr_nick!*@* - } - (2) { - //mode $C +b *!*@$usr_host - } - (3) { - //mode $C +b *!*$usr_id@$usr_dom - } - (4) { - //mode $C +b *!*@$usr_dom - } - (*) { - ban $0 2 - } - } -} - -alias bans { if ( [$0] ) { mode $0 +b } { mode $C +b } } - -alias chanserv { quote chanserv $* } - -alias clearall { //clear -all } - -alias client { - ctcp $0 VERSION -} - -alias cloak { - switch ($0) { - (on) { - ^on ctcp_request -"*" - ^on ^ctcp_request "*" - ^on -ctcp_request ^"% % ACTION *" - ^on -ctcp_request ^"% % DCC *" - ^on -ctcp_request ^"% % PING *" - xecho -b -w 1 ctcp cloaking is now on - } - (all) { - ^on ctcp_request -"*" - ^on ^ctcp_request "*" - ^on -ctcp_request ^"% % ACTION *" - ^on -ctcp_request ^"% % DCC *" - xecho -b -w 1 complete ctcp cloaking is now on - } - (off) { - ^on ctcp_request -"*" - } - (*) { - xecho -b -w 1 you must specify on, off, or all - } - - } -} - -alias cs chanserv - -alias ctcpreply { eval notice $0 $chr(1)$1-$chr(1)} - -alias cycle { - @:chan_name = C - @:chan_key = key($C) - - leave * - wait - join $chan_name $chan_key -} - -alias dccallow { quote dccallow $* } - -alias dns { - userhost $0 -cmd { - echo Looking up $4 ... - exec host $4 - } -} - -alias dop { - fe ($*) n1 n2 n3 n4 { - mode $C -oooo $n1 $n2 $n3 $n4 - } -} - -alias dvoice { - fe ($*) n1 n2 n3 n4 { - mode $C -vvvv $n1 $n2 $n3 $n4 - } -} - -alias finger { - ctcp $0 FINGER -} - -alias format_idle_time { - if ( [$0] >= 3600 ) { - return ${[$0] / 3600} hours ${([$0] % 3600) / 60} mins ${[$0] % 60} sec - } - if ( [$0] >= 60 ) { - return ${([$0] % 3600) / 60} mins ${[$0] % 60} sec - } - return ${[$0] % 60} seconds -} - -alias j jnw - -alias jnw { - @:ref_num = matchitem(my_wins $0)) - - if ( (ref_num < 3) || (winnum($ref_num) == -1) ) { - window new hide - window swap last - if (!(win_logdir == [])) { - ^window logfile $win_logdir/$0.log log on - } - @ setitem(my_wins $winnum(0) $0) - } { - window swap $ref_num - } - //join $* -} - -alias join jnw - -alias k { - kick $C $* -} - -alias kb { - ban $0 - k $* -} - -alias log_format { - if ( left(1 $0) == [\(] ) { - return $strftime($time() (%m/%d/%Y %I:%M:%S %P)) $2- - } else { - return $strftime($time() (%m/%d/%Y %I:%M:%S %P)) $0- - } -} - -alias memoserv { quote memoserv $* } - -alias mdop { - fe ($remw($N $chops())) n1 n2 n3 n4 { - mode $C -oooooo $n1 $n2 $n3 $n4 - } -} - -alias mop { - fe ($nochops()) n1 n2 n3 n4 { - mode $C +oooooo $n1 $n2 $n3 $n4 - } -} - -alias names scan - -alias nickserv { quote nickserv $* } - -alias ns nickserv - -alias o onotice - -alias onotice { - quote notice @$C :ops: $* - xecho -c $ts()-> ops: $* -} - -alias op { - fe ($*) n1 n2 n3 n4 { - mode $C +oooo $n1 $n2 $n3 $n4 - } -} - -alias operserv { quote operserv $* } - -alias os operserv - -alias q query - -alias sc scan - -alias scan { - @:num = 0 - - if (ischannel($0)) { - @:chan = [$0] - } { - @:chan = C - } - - - xecho -w $winchan($chan) - xecho -w $winchan($chan) -b 16Users on $chan: - fe ($strip(?. $channel($chan))) n1 n2 n3 n4 - { - xecho -w $winchan($chan) 14| 13$[17]n1 $[17]n2 $[17]n3 $[17]n414 | - if (n4) { - @:num += 4 - } { - if (n3) { - @:num += 3 - } { - if (n2) { - @:num += 2 - } { - @:num++ - } - } - } - } - xecho -w $winchan($chan) Total number of users on $chan: $num - xecho -w $winchan($chan) -} - -# sping from wd's anduril -alias sping (server) { - if (server == []) @:server = builtin_expando(S) - - @a.server.sping #= [$server $utime() ] - quote ping $server $server - xecho -w 1 $ts()$banner Sent PING to $server -} - -# tdiff3 from wd's anduril -alias tdiff3 { - if (![$0]) { - return 0s - } - - @:y=:m=:w=0 - @:t=[$0] - ^local r - - @:y=floor(${t/31536000}) - @:t%=31536000 - @:m=floor(${t/2419200}) - @:t%=2419200 - @:w=floor(${t/604800}) - @:t%=604800 - @:l=tdiff2($t) - - if (y) { - @:r=[${y}y ] - } - if (m) { - @:r#=[${m}m ] - } - if (w) { - @r#=[${w}w ] - } - return $r$l -} - -alias timestamp { - switch ($0) { - (off) { - @time_stamp = [off] - xecho -b -w 1 Time stamping is now off - } - (on) { - @time_stamp = [on] - xecho -b -w 1 Time stamping is now on - } - (*) { - if (time_stamp == [off]) { - xecho -b -w 1 Time stamping is currently off - } { - xecho -b -w 1 Time stamping is currently on - } - } - } -} - -alias ts { - if (time_stamp == [off]) { - return - } { - return 10$strftime($time() (%I:%M:%S %P)) 15 - } -} - -alias untopic { - if (ischannel($0)) { - @:chan = [$0] - } { - @:chan = C - } - - quote TOPIC $chan : -} - -alias ver client - -alias voice { - fe ($*) n1 n2 n3 n4 { - mode $C +vvvv $n1 $n2 $n3 $n4 - } -} - -alias wall { - fe ($remw($N $onchannel())) n1 { - quote notice $n1 :wall: $* - } - xecho -c -> $C/wall: $* -} - -alias wii { whois $0 $0 } - -alias wk { window kill } - -alias wops { - fe ($remw($N $chops())) n1 { - quote notice $n1 :ops: $* - xecho -c -> $n1: ops: $* - } -} - -alias ws { window swap $0 } - - -# *** named on hooks *** - -on ^action "*" { - if (rmatch($1 #* &* +*)) { - if ([$1] == winchan($winchan($1))) { - xecho -w $winchan($1) $ts()* $0 $2- - } { - xecho -w $winchan($1) $ts()* $0/$1 $2- - } - } { - xecho -w queries $ts()* $0 $2- - } -} - -on ^channel_nick "*" { - xecho -w $winchan($0) $ts()$banner 16Nick: 10$1 15is now known as 8$2 -} - -on ^channel_signoff "*" { - xecho -w $winchan($0) $ts()$banner 16Quit: 10$1 15has quit irc \($2-\) -} - -on ^ctcp "*" { - xecho -w 1 $ts()$banner CTCP $2 request from $0 to $1: $3- -} - -on ^ctcp_reply "*" { - xecho -w 1 $ts()$banner CTCP $2 reply from $0 to $1: $3- -} - -on ^dcc_chat "*" { - xecho -w queries $ts()=$0= $1- -} - -on ^dcc_connect "*" { - xecho -w queries $ts()$banner DCC $1 connection with $0[$2:$3] established -} - -on ^dcc_lost "*" { - xecho -w queries $ts()$banner DCC $1 connection with $0 stopped \($2-\) -} - -on ^dcc_request "% CHAT *" { - xecho -w 1 $ts()$banner DCC CHAT request received from $0!$userhost() [$3:$4] -} - -on ^dcc_request "% SEND *" { - xecho -w 1 $ts()$banner DCC SEND \($5 $6\) request received from $0!$userhost() [$3:$4] -} - -on ^exec_exit * # - -on ^general_notice "% @% *" { - xecho -w $winchan($rest($1)) -- $ts()-13$0:$115- $2- -} - -on ^general_notice "% #% *" { - xecho -w $winchan($1) -- $ts()13$0:$115- $2- -} - -on ^invite "*" { - xecho -w 1 $ts()$banner 16Invite: 10$0 15invites you to join $1 -} - -on ^join "*" { - xecho -w $winchan($1) $ts()$banner 16Join: 10$0 15\(10$215\) has joined $1 -} - -on ^kick "*" { - if ( [$0] == N ) { - xecho $ts()$banner 16Kick: 15You have been kicked from $2 by $1 \($3-\) - } { - xecho -w $winchan($2) $ts()$banner 16Kick: 10$0 15has been kicked from $2 by $1 \($3-\) - } -} - -on ^leave "*" { - if ([$0] == N) { - xecho -w $winchan($1) $ts()$banner You have left $1 \($3-\) - } { - xecho -w $winchan($1) $ts()$banner 16Part: 10$0 15has left $1 \($3-\) - } -} - -on ^mode "*" { - if ([$1] == N) { - xecho -w 1 $ts()$banner 16Mode: 11$1 $2- by $0 - } { - xecho -w $winchan($1) $ts()$banner 16Mode: 11$1 $2- by $0 - } -} - -on ^msg "*" { - xecho -w queries $ts()*$0* $1- -} - -on ^msg "% @% %" { - xecho -w $winchan($rest($1)) -- $ts()<-$0:$1\-> $2- -} - - -on ^notice "*" { - xecho -w 1 -- $ts()-13$015- $1- -} - -on ^notify_signoff "*" { - xecho -w 1 $ts()$banner 16Signoff: 10$015 has left -} - -on ^notify_signon "*" { - xecho -w 1 $ts()$banner 16Signon: 10$0 15\(10$115\) is on -} - -# pong on hook from wd's anduril -on ^pong "% % %" { - @:ind = findw($0 $a.server.sping) - if (ind == -1) { - xecho -w 1 $ts()$banner $0\: PONG received from $1 \($2\) - } else { - @:ut = utime() - @:usec = word(${ind + 2} $a.server.sping) - @:sec = word(${ind + 1} $a.server.sping) - @a.server.sping = remw($0 $remw($sec $remw($usec $a.server.sping))) - @:sec = word(0 $ut) - sec - @:usec = word(1 $ut) - usec - - if (usec < 0) { - @:usec += 1000000 , sec-- - } - @:sec = tdiff3($sec) - if (pass(s $sec) == []) { - @:sec = [${sec}0.$left(3 $usec)s] - } else { - @:sec = [$before(s $sec).$left(3 $usec)s] - } - xecho -w 1 $ts()$banner PONG received from $1 in $sec - } -} - -on ^public "*" { - xecho -w $winchan($1) $ts()14<15$014> 15$2- -} - -on ^public_msg "*" { - xecho -w $winchan($1) $ts()14<15$0:$114> 15$2- -} - -on ^public_other "*" { - xecho -w $winchan($1) $ts()14<15$0:$114> 15$2- -} - -on ^send_action "*" { - if (rmatch($0 #* &* +*) ) { - xecho -w $winchan($0) $ts()* $N $1- - } { - xecho -w queries $ts()*> $0: $N $1- - } -} - -on ^send_dcc_chat "*" { - xecho -w queries $ts()=$0=> $1- -} - -on ^send_msg "*" { - xecho -w queries $ts()*$0*> $1- -} - -on ^send_notice "*" { - xecho -w 1 -- $ts()-> $0: $1- -} - -on ^send_notice "#% *" { - xecho -w $winchan($rest($0)) -- $ts()-> $0: $1- -} - -on ^send_public "*" { - if ([$0] == C) { - xecho -w $winchan($0) $ts()14<15$N14> 15$1- - } { - xecho -w $winchan($0) $ts()14<15$N:$014> 15$1- - } -} - -on ^topic "*" { - xecho -w $winchan($1) $ts()$banner 16Topic: 10$0 15has changed the topic on $1 to: $2- -} - -on ^window "% % SWAP: Window % is not hidden!" - -on ^window "% % SWAP: No such window: %" - -on ^yell "*" { - xecho -w 1 $ts()$banner $* -} - -on ^yell ^"Defaulting % to CHANMODE type D" - - -# *** numeric hooks *** - -on ^317 "*" { - xecho -w 1 $banner $1 has been idle $format_idle_time($2), Signon $strftime($3 %c) -} - -on ^331 "*" { - xecho -w $winchan($1) $ts()$banner $1- -} - -on ^332 "*" { - xecho -w $winchan($1) $ts()$banner Topic for $1: $2- -} - -on ^333 "*" { - xecho -w $winchan($1) $ts()$banner Topic set by $2 $strftime($3 %c) -} - -on ^353 "*" { - xecho -w $winchan($2) - xecho -w $winchan($2) -b 16Users on $2: - fe ($3-) n1 n2 n3 n4 { - xecho -w $winchan($2) 14| 13$[17]n1 $[17]n2 $[17]n3 $[17]n414 | - if (n4) { - @total_nicks += 4 - } { - if (n3) { - @total_nicks += 3 - } { - if (n2) { - @total_nicks += 2 - } { - @total_nicks++ - } - } - } - } -} - -on ^366 "*" { - xecho -w $winchan($1) Total number of users on $1: $total_nicks - xecho -w $winchan($1) - @total_nicks = 0 -} - -on ^367 "*" { - xecho -w 1 $banner $1 $2 $3 $strftime($4 %c) -} -# tabkey.jm: a full-featured tab key module for epic -# -# written by nsx -# -# -# Here's the plan: -# -# First off, the word fragment (which may not be a fragment at all, but -# rather, a complete word, though we have no way of knowing this yet) that -# we're going to attempt to complete is determined. If the current word -# pointed to by the input line cursor is quoted, then that word becomes the -# word fragment we'll attempt to complete. If the word is not quoted, then all -# characters from the beginning of the word pointed to by the input line cursor -# to the cursor itself become the fragment we'll try to complete. -# -# We now analyze the input line to see if it matches certain patterns, and -# determine which method of completion we'll use based on which pattern it -# matches. -# -# If our input line matches "/msg <word><space>", we recall the item in our -# nickname history pointed to by our nickname history index. We then type out -# the command "/msg <nick><space>", where <nick> is that nickname we recalled -# from the history. If there are no nicknames in the history, nothing at all -# is done. -# -# If our input line matches "/dcc <word>", then dcc command completion is -# attempted. This matches the word fragment against all known dcc commands. -# -# If our input line begins with "/dcc send <word1> <word2>" or "/load", we -# attempt file name completion. This matches the word fragment against any -# local path name that exists. -# -# If our input line matches "/<word>" we attempt command completion. This -# matches the word fragment against both internal commands and aliases. -# -# If our input line is empty, we attempt nickname history cycling as described -# above. -# -# If our input line matches none of the above, we analyze the first character -# of the fragment. If it begins with a '#' or a '&', channel name completion -# is attempted. This matches the word fragment against all channels we're -# currently on. -# -# If our fragment does not begin with '#' or '&', nickname completion is -# attempted. This matches the word fragment against all nicknames in the -# current channel. If no matches are found, we then match the word fragment -# against all nicknames in all other channels we're on and nicknames in our -# notify list that are presently online. -# -# If there was multiple matches for the word fragment, we replace the word -# fragment with the common prefix for these matches, if any. We also display -# all of the possible matches on the screen, unless they're the same list of -# possible matches we displayed less than 5 seconds ago. This way, we hope to -# avoid unnecessary repetition. -# -# If there was only one match for the word fragment, we replace the word -# fragment with that match. We also append a space unless nickname completion -# took place, and the completed word is the only word in the input line. Most -# of the time this occurs, I assume people are trying to address somebody. I -# do this so that the optional colon can be appended after the nickname, -# without having to backspace. -# -# If we perform file name completion and the completed path name is a -# directory, we treat the completed word as if it's a partial completion (in -# that no space is appended), since we cannot be certain whether or not the -# path name is complete, unless it's a file. -# -# If the completed word (partial or complete) needs to be enclosed in -# quotation marks, we meet this provision. If the completed word is partial, -# we place the cursor on the enclosing quotation mark, so that further -# completion can take place without having to manually reposition the cursor. -# -# For each outgoing msg or outgoing DCC CHAT message, we add the recipient -# to our nickname history. -# -# For each incoming msg or incoming DCC CHAT message, we add the sender to -# our nickname history. -# -# For each DCC CHAT connection that takes place, we add the other party to -# our nickname history. -# -# For each notify signon, we add the nickname that signed on to our nickname -# history. -# -# Each time a nickname is added to our nickname history, we first remove any -# prior occurrences of the nickname that may exist. We then check to see if -# our nickname history is at its capacity (10 nicknames). If it is, the oldest -# nickname in our history is discarded. Next, we add the nickname to the -# history. Lastly, we set our nickname index to point to the nickname that was -# just added. - - -# *** global variables *** - - -# nickname history array -@delarray(nick_hist) - -# nickname history index -@nick_index = -1 - -# the matches from the last tab key press -@last_matches = [] - -# how far the cursor is from the end of the word fragment -@end_offset = 0 - -# whether or not the word fragment needs to be quoted (0 or 1) -@word_fragq = 0 - - -bind ^I parse_command do_tabkey - -alias do_tabkey { - @:cur_pos = curpos() - @:cur_word = word($indextoword($cur_pos $L ) $L ) - @:frag_start = wordtoindex($indextoword($cur_pos $L ) $L ) - - if (index("$chr($jot(32 1))" $cur_word) == -1) { - @word_fragq = 0 - @end_offset = 0 - @:word_frag = mid($frag_start ${cur_pos - frag_start} $L) - } { - @word_fragq = 1 - @end_offset = (frag_start + @cur_word - cur_pos) + 2 - @:word_frag = cur_word - - if (end_offset < 0) { - return - } - } - - if (leftw(1 $L) == [/msg] && #L == 2 && mid(${@L - 1} 1 $L) == [ ]) { - @msg_cycle() - return - } - - switch ($L) { - (/dcc %) { - @dcc_complete($word_frag) - } - (/dcc send % *) - (/load *) { - @file_complete($word_frag) - } - (/%) { - @command_complete($right(${@L - 1} $L)) - } - () { - @msg_cycle() - } - (*) { - @:firstc = left(1 $word_frag) - if (firstc == [#] || firstc == [&]) { - @chan_complete($word_frag) - } { - @nick_complete($word_frag) - } - } - } -} - -# replace_fragment (frag_len, matches...) -# -# This function replaces the word fragment. If given a single match, the word -# fragment is replaced with that match. If multiple matches are given, the -# common prefix for those matches replaces the word fragment. If no matches -# are given, this function does nothing. -# -# It expects the fragment length (so it can know how many times to backspace) -# to be its first argument, and all matches for the word fragment to be the -# rest of its arguments. This function also expects the global variable -# end_offset to be set, so that it can position the cursor after the word -# fragment, if needed, before backspacing to clear it. This needs to be done, -# for example, when the tab key was pressed while the cursor was in the middle -# of a quoted word. - -alias replace_fragment { - @:matches = [$1-] - @:match_pfx = prefix($1-) - @:frag_len = word_fragq ? [$0] + 2 : [$0] - - if (#matches && #match_pfx) { - repeat $end_offset parsekey forward_character - repeat $frag_len parsekey backspace - - if (index("$chr($jot(32 1))" $match_pfx) != -1) { - @:match_pfx = ["$match_pfx"] - @word_fragq = 1 - } - - if (#matches > 1) { - unless (matches == last_matches) { - xecho -c Possible matches: - xecho -c $matches - xecho -c - @last_matches = matches - timer 5 @last_matches = [] - } - - xtype -l $match_pfx - - if (word_fragq) { - parsekey backward_character - } - } { - xtype -l $matches$chr(32) - } - } -} - -alias chan_complete { - @:word_frag = [$*] - @:frag_matches = pattern("$word_frag*" $mychannels()) - - @replace_fragment($@word_frag $frag_matches) -} - -alias command_complete { - @:word_frag = [$*] - @:frag_matches = getcommands($word_frag*) - - @push(frag_matches $aliasctl(alias pmatch $word_frag*)) - - @replace_fragment($@word_frag $frag_matches) -} - -alias dcc_complete { - @:word_frag = [$*] - @:dcc_cmds = [chat close closeall get list raw rename resume send] - @:frag_matches = pattern($word_frag% $dcc_cmds) - - @replace_fragment($@word_frag $frag_matches) -} - -alias file_complete { - @:word_frag = [$*] - @:frag_matches = glob("$word_frag*") - - @replace_fragment($@word_frag $frag_matches) - - if (#frag_matches == 1) { - @:stat_ret = stat($frag_matches) - - if (left(1 $word(2 $stat_ret)) == 4) { - parsekey backspace - if (word_fragq) { - parsekey backward_character - } - } - } -} - -alias nick_complete { - @:word_frag = [$*] - @:frag_matches = pattern("$word_frag*" $onchannel()) - - if (frag_matches == []) { - ^local nick_list - - fe ($remw($C $mychannels())) nick_name { - @push(nick_list $onchannel($nick_name)) - } - - fe ($notify(on)) nick_name { - @push(nick_list $nick_name) - } - - @:nick_list = uniq($nick_list) - @:frag_matches = pattern($word_frag% $nick_list) - } - - @replace_fragment($@word_frag $frag_matches) - - if (#L == 1 && #frag_matches == 1) { - parsekey backspace - } -} - -alias add_nickname { - @:nick_items = numitems(nick_hist) - @:prev_oc = finditem(nick_hist $0) - - if (prev_oc > -1) { - @delitem(nick_hist $prev_oc) - @:nick_items-- - } - - if (nick_items > 9) { - @delitem(nick_hist 0) - @:nick_items-- - } - - @setitem(nick_hist $nick_items $0) - @nick_index = nick_items -} - -alias msg_cycle { - @:nick_items = numitems(nick_hist) - - if (!(nick_items)) { - return - } - - parsekey erase_line - xtype -l /msg $getitem(nick_hist $nick_index)$chr(32) - @nick_index = nick_index == 0 ? nick_items - 1 : nick_index - 1 -} - -on #^dcc_chat 10 "*" { - @add_nickname(=$0) -} - -on #^dcc_connect 10 "% CHAT *" { - @add_nickname(=$0) -} - -on #^msg 10 "*" { - @add_nickname($0) -} - -on #^notify_signon 10 "*" { - @add_nickname($0) -} - -on #^send_dcc_chat 10 "*" { - @add_nickname(=$0) -} - -on #^send_msg 10 "*" { - @add_nickname($0) -} -} |