1e7a0d8531
EPIC4-2.2 *** News -- 11/09/2004 -- Changes to way spaces are handled *** IMPORTANT *** Up until this point, the technical definition of what is a "space" (the term used for an Internal Field Separator (IFS), that is, the thing that separates one word from another word) EPIC has always had three sets of IFSs 1) Character 32 only ("space") 2) Characters 9, 10, 11, 12, 13, and 32 ("my_isspace()") 3) Whatever your locale says is a space ("isspace") In the C locale (the default for unix users), sets #2 and #3 are exactly the same. I don't know about other locales. Now we are going to only use set #3. Changing Set #2 to Set #3 is easy, and nobody should notice any difference there. The one that is going to cause pain is Set #1. Consider this situation: One<tab>Two Is this one word, or two words? In some places in epic, it is one word, and in other places it is two words. As a result of this change, it will now always be two words every place. Here is a list of the places that were using Set #1 that will change to use Set #3, and you should be on the lookout for changes! *) /AWAY separated the end of its flags with spaces. This means /AWAY -ALL<tab>Hi there! will now work properly. *) $pop(....) removes the last word from the argument list. Whereas $pop(one two<tab>three) used to return "two<tab>three" is will now only return "three" *) Commands are separated from the argument list by a "space". Whereas /one<tab>two blah blah blah parsed "one<tab>two" as the command, now "one" is the command and "two" is part of the argument list. *) In expressions, a variable name may be separated from an operator with a space. Whereas things like @var<tab> =foo might have failed because <tab> is not a valid character in a variable name, it will now treat <tab> the same as a space. *) Places that expect a number did not accept a string that contained a <tab> so that things like <tab><tab>9 was not accepted as a number. Now it will be. *) The /IGNORE command used to consider a string containing a <tab> to not be empty. This means that /IGNORE <tab> would not list the ignorance list, but rather would try to show the ban value for an ignore matching <tab> which isn't reasonable. *) The % wildcard pattern stopped matching only when it saw char 32. Now it will stop whenever it seems a Set 3 type space. So whereas before "%" matched "one<tab>two" now it won't, because "one<tab>two" is two words, not one word. *) In /xdebug extractw mode, tabs before or after double quotes were not considered to start or end a double quoted word. So previously this string: one <tab>"two three" four contained four words, because the <tab> before "two nullified the double quoting. Now that <tab> is treated like any other space, the above word has three words, not four. Places that use Set 1 and will NOT be changing to Set 3, because they are parsing IRC protocol data, which stipulates that the IFS MUST be a space solely: *) CTCP requests and replies are formatted only with spaces *) Words in protocol messages are separated only with spaces *** News -- 11/09/2004 -- You may now mangle ALT_CHAR characters And ALT_CHAR mangling is included in ALL. This was an oversight that was fixed in epic5. *** News -- 11/02/2004 -- Mangling "ALL,-BOLD" no longer mangles "ALL_OFF" In general, if you use ANSI (ALL includes ANSI), the mangled string has its six attributes (COLOR, REVERSE, UNDERLINE, BOLD, BLINK, ALT_CHAR) rewritten into canonical form. This will add some ALL_OFFs to your string that weren't there originally. So if you strip all of the attributes (as ALL does), then epic will strip ALL_OFF off as well. This retains backwards compatability with ALL. But if you use ANSI and don't want to strip all 6 of the attributes, then it's important that ALL_OFFs are not removed, otherwise your string will not appear as it should (the ANSInator uses ALL_OFFs to turn off attributes). So EPIC automatically will not strip ALL_OFFs if you use ANSI and do not mangle one of the 6 attributes. Examples: $stripcrap(ALL this is ^B^_bold underline^_ not bold) will strip everything as it has always done. $stripcrap(ALL,-BOLD this is ^B^_bold underline^_^B not bold) will strip everything but not bold and all_offs, because if all_offs are stripped, then "not bold" will be in bold! The entire point of this is to allow /set mangle_logfile ALL to work the way it has always worked, and $stripcrap(ALL,-BOLD ...) to work the way it *should* work. *** News -- 10/06/2004 -- Support for +e and +I numerics from efnet EFNet has +e and +I channel modes, which act like +b does. These numerics are now handled by epic like +b is. *** News -- 10/06/2004 -- New status bar expandos, %{2}W and %{3}W These two new expandos expand to the same value as %W. %W Expands on each input window on each screen that has two or more visible windows. %{2}W Expands on all visible windows on all screens. %{3}W Expands on each input window on each screen, even on screens that have only one visible window. *** News -- 10/06/2004 -- Support for ircnet's "numeric nick" feature On ircnet, each user is given a unique numeric identifier, which is their one true nickname. In addition to this numeric id, they can have a rfc1459 nickname, but they are not required to have one. Further, the special numeric id 0 is reserved and refers to the user's own numeric id. EPIC now fully supports all of this, particularly in the following ways: /NICK <unique id> /NICK 0 To turn off your rfc1459 nickname. $serverctl(GET <refnum> UNIQUE_ID) $serverctl(SET <refnum> UNIQUE_ID) To retrieve and change your unique nickname. Changing your unique id is probably a bad idea. /USERHOST <unique id> You may USERHOST unique id's now. 'epic 0' You may now use the nickname 0 on the epic command line if you don't want to use an rfc1459 nickname on an ircnet server. Using unique numeric id's on non-ircnet servers is probably fraught with peril. Try to avoid that. *** News -- 10/06/2004 -- /SET INDENT maxes out at 1/3 screen width Previously, if you did /set indent on, and the width of the first word on the first line was > 1/3 of the screen's width, then the second (and subsequent) lines were not indented at all. This was the historical ircII behavior. It seems more sensible to cap the indent level at 1/3 of the screen's width and indent it to there. EPIC4-2.0 *** News -- 02/03/2004 -- ERASE_LINE behavior slightly modified The ERASE_LINE input function has been modified to not overwrite the input buffer when it is called on an empty input line. EPIC4-1.2.9 *** News -- 01/25/2004 -- Slight changes to /ON SSL_SERVER_CERT |Rain| pointed out that /ON SSL_SERVER_CERT was not terribly useful because $1 (cert subject) and $2 (cert issuer) could contain spaces, and so you couldn't really use $1 and $2 to fetch them. He proposed that we hook a url-encoded version of the subject and issuer (so they won't contain any spaces) and you can use $urldecode($1) to get the subject and $urldecode($2) to get the issuer. EPIC4-1.2.7 *** News -- 01/18/2004 -- New functions $cofilter() and $corfilter(). These are compliments of $copattern(). *** News -- 12/27/2003 -- New $dccctl() modes. Added $dccctl(get [ref] writable) and $dccctl(writables). This is useful for sending lots of data out on a raw or chat dcc. Epic will (iirc) normally drop the data in such cases rather than blocking or buffering. This isn't a complete solution. Writable means that a certain amount of data can be written, so data can still be lost. *** News -- 12/27/2003 -- Added /SET DCC_DEQUOTE_FILENAMES This turns the double quoted space decoding feature added recently for received DCC SEND requests on and off. *** News -- 12/27/2003 -- $rest() also removes chars from the right. Using a negative first arg causes $rest() to strip chars from the right hand side of the string. This makes it a compliment to $right() as well as $left(), but if a script relies on it returning the original string the way it did before, it may now cause compatibility problems. If it does, talk to CrazyEddy on #epic efnet. *** News -- 12/27/2003 -- Added $splicec() in functions script. This works much the same way as $splice(), but on characters, not words. It won't work seemlessly on local vars though. EPIC4-1.2.5 *** News -- 12/13/2003 -- Default of AUTO_REJOIN is now OFF Per the poll taken on the epic mailing list, the preponderance of opinion being in favor of changing the default value of AUTO_REJOIN to OFF, as of commit 672, the default value is changed. You will want to put /SET AUTO_REJOIN ON in your ~/.epicrc to get the old value. *** News -- 12/11/2003 -- Command parser ignores spaces after semicolons Since the dawn of the modern ircII syntax, the following syntax has caused consternation with scripters: /eval {two; three} because it runs the /two alias, and then outputs the text "three" to the current target (channel-or-query). This is because the command parser does not ignore spaces after semicolons; a leading space results in ircII assuming you are wanting to run the empty command (yes, there is actually an empty command), which just happens to be the /say command. Well, enough is enough. I'm putting a stop to this. If you depend on this horrifically broken behavior, then the time has come to switch to using /SAY. The rest of us will enjoy not having to freak out about spaces after semicolons. *** News -- 12/11/2003 -- New /WINDOW verb, /WINDOW SCROLLADJ [ON|OFF] When the default value of ON is used, when you "GROW" a window, or otherwise cause the size of a window to be increased, the top of the scrollable view is moved back so you can see more of the lines that have recently scrolled off the screen. If you change this to OFF, the behavior is more like ircII, where when something scrolls off the window, nothing will bring it back unless you go into scrollback mode. *** News -- 12/11/2003 -- New /ON, /ON WINDOW_BEFOREKILL The value of $* is the window refnum (number) of the window that is about to be killed. You cannot stop the kill from happening, but you do get this opportunity to save any information about the window that you might want. *DANGER*DANGER*DANGER* EPIC does not try to stop you from doing something really dumb in this /ON, and if you try to change the window being killed, or you affect the visibility or invisibility of any window, you run the definite chance of confusing EPIC and causing a panic. This is not a bug, this is just your peril if you ignore this warning. Use /DEFER to run commands safely from within /ONs. EPIC4-1.2.3 *** News -- 12/05/2003 -- New built in function $numlines() (fudd) The first argument to $numlines() is the width of a line (which you can get from $geom() if you want to use that), and the rest of the text is some text. The return value is the number of screen lines that will be taken up if you were to /echo the text to a window of the given number of columns. *** News -- 12/03/2003 -- New command line arguments, -o and -O POSIX termios allowed systems to define "extended characters" (IEXTEN) which are interpreted by the kernel and are not passed onto the application. In 4.4BSD in particular, these "extended characters" are ^V and ^O. This means that by default, you cannot use these two characters in a binding. By using the -o option, you ask EPIC to specifically turn these extended characters on, and by using the -O option, you ask epic to specifically turn these extended characters OFF. If you do not specify either option, epic does not change the current default value. EPIC4-1.2.2 *** News -- 12/03/2003 -- New /WINDOW verb, /WINDOW SWAPPABLE [ON|OFF] You may now control whether your windows are "swappable". The default (backwards-compatable) value is ON. If you set this to OFF on a visible window, then that visible window cannot be made hidden, via /WINDOW HIDE or /WINDOW SWAP. If you set this to OFF on a hidden window, then that hidden window cannot be made visible, via /WINDOW SHOW, /WINDOW SWAP, /WINDOW BACK or /WINDOW NEXT. You must reset this value back to ON before you try to swap the window back in or out. *** News -- 12/03/2003 -- New /SET, /SET STATUS_NOSWAP Whenever a window has /WINDOW SWAPPABLE OFF, the %{1}W status expando will expand to the value of this /SET *** News -- 12/03/2003 -- SWAPPABLE accessable via $windowctl() You can now $windowctl(GET <refnum> SWAPPABLE) to get the window <refnum>'s current swappable status.
108 lines
2.7 KiB
Text
108 lines
2.7 KiB
Text
@comment $NetBSD: PLIST,v 1.7 2005/04/04 08:56:54 wiz Exp $
|
|
bin/epic
|
|
bin/epic-EPIC4-${PKGVERSION}
|
|
libexec/wserv4
|
|
man/man1/epic.1
|
|
share/epic/script/2.8script
|
|
share/epic/script/alias
|
|
share/epic/script/altchan
|
|
share/epic/script/altchan.bj
|
|
share/epic/script/autoget
|
|
share/epic/script/autokick
|
|
share/epic/script/autoop
|
|
share/epic/script/away
|
|
share/epic/script/basical
|
|
share/epic/script/columns
|
|
share/epic/script/commandqueues
|
|
share/epic/script/country
|
|
share/epic/script/data_array
|
|
share/epic/script/data_struct
|
|
share/epic/script/dcc_spacefix
|
|
share/epic/script/dcc_timeout
|
|
share/epic/script/deban
|
|
share/epic/script/debug.irc
|
|
share/epic/script/dig
|
|
share/epic/script/dns
|
|
share/epic/script/edit
|
|
share/epic/script/edit_topic
|
|
share/epic/script/efnext
|
|
share/epic/script/environment
|
|
share/epic/script/epic-crypt-gpg
|
|
share/epic/script/epic-crypt-gpg-aa
|
|
share/epic/script/events
|
|
share/epic/script/events.hop
|
|
share/epic/script/fake-dcc
|
|
share/epic/script/fe
|
|
share/epic/script/fe.pf
|
|
share/epic/script/files
|
|
share/epic/script/functions
|
|
share/epic/script/genalias
|
|
share/epic/script/global
|
|
share/epic/script/grep
|
|
share/epic/script/guh
|
|
share/epic/script/help
|
|
share/epic/script/hold_mode
|
|
share/epic/script/hybrid6
|
|
share/epic/script/imap
|
|
share/epic/script/ip-to-int
|
|
share/epic/script/ircprimer
|
|
share/epic/script/keybinds
|
|
share/epic/script/killpath
|
|
share/epic/script/kpstat
|
|
share/epic/script/langtrans
|
|
share/epic/script/less
|
|
share/epic/script/less-pipe
|
|
share/epic/script/list
|
|
share/epic/script/local.examp
|
|
share/epic/script/ls
|
|
share/epic/script/mail
|
|
share/epic/script/man
|
|
share/epic/script/map
|
|
share/epic/script/meta
|
|
share/epic/script/meta-compat
|
|
share/epic/script/mkpdir
|
|
share/epic/script/more
|
|
share/epic/script/motd
|
|
share/epic/script/mudirc
|
|
share/epic/script/netsplit
|
|
share/epic/script/netsplit.env
|
|
share/epic/script/newaway
|
|
share/epic/script/newformat
|
|
share/epic/script/nicks
|
|
share/epic/script/nopaste
|
|
share/epic/script/notify
|
|
share/epic/script/old-dcc
|
|
share/epic/script/paste
|
|
share/epic/script/pipe
|
|
share/epic/script/prefix
|
|
share/epic/script/recursion
|
|
share/epic/script/repeat
|
|
share/epic/script/revdcc
|
|
share/epic/script/scan
|
|
share/epic/script/scandir
|
|
share/epic/script/screen
|
|
share/epic/script/sdiff
|
|
share/epic/script/setmail
|
|
share/epic/script/silent
|
|
share/epic/script/sound
|
|
share/epic/script/sping
|
|
share/epic/script/starutils
|
|
share/epic/script/stat
|
|
share/epic/script/status_lag
|
|
share/epic/script/suppressmotd
|
|
share/epic/script/tabkey
|
|
share/epic/script/tabkey.ce
|
|
share/epic/script/tabkey.jm
|
|
share/epic/script/tabkey.th
|
|
share/epic/script/tc
|
|
share/epic/script/time
|
|
share/epic/script/tls
|
|
share/epic/script/urlgrab
|
|
share/epic/script/utime
|
|
share/epic/script/vi-binds
|
|
share/epic/script/webster
|
|
share/epic/script/window
|
|
@dirrm share/epic/script
|
|
@exec ${MKDIR} %D/share/epic/help
|
|
@dirrm share/epic/help
|
|
@dirrm share/epic
|