Permalink
Browse files

Sorry for a big update - I still don't have internet connection at home

and this is what I've been doing a few weeks now.. :) You really shouldn't
upgrade to this version without keeping a backup of the working one, since
this will break everything and at least notify list is broken - probably
something else too.

* On the way to 0.8.0 .. Major rewriting/rearranging code. There's
  some changes in behaviour because I'm trying to make Irssi a bit
  more compatible with EPIC.

* libPropList isn't needed anymore - I'm using my own configuration
  library. This is mostly because different proplists worked a bit
  differently everywhere and several people had problems with it.
  It's also yet another extra library that you needed to compile
  Irssi. New configuration library has several advantages:

  You can add comments to configuration file and they also stay
  there when it's saved.

  It's not nearly as vulnerable as proplist. If some error occurs,
  instead of just not reading anything it will try to continue if
  possible. Also the error messages are written to irssi's text
  window instead of stdout.

  It can be managed more easily than proplist - setting/getting the
  configuration is a lot more easier.

* Coding style changes - I'm not using gint, gchar etc. anymore,
  they're just extra pain when moving code to non-glib projects and
  syntax hilighting doesn't work by default with most editors ;)

  Indentation style was also changed to K&R because of some political
  reasons ;) And I'm already starting to like it.. :) It forces me
  to split code to different functions more often and the result is
  that the code gets more readable.

  And finally I'm also using nst' all over the place.

+ /EVAL <commands> - Expand all the special variables from string and
  run it. Commands can be split with ; character. See
  docs/SPECIAL_VARS for more info.
+ Aliases are parsed just like /EVAL - arguments are in $0..$9.
+ Text formats are also parsed like /EVAL, arguments used to be in
  $1..$9, now they're in $0..$8 so it messes up existing themes..
+ /SET [key [value]] - no more the '=' character. Boolean values
  also need to be changed with ON/OFF/TOGGLE values (not yes/no).
  Settings aren't saved to disk until you use /SAVE.
+ /TOGGLE <key> [ON/OFF] - same as /SET <key> TOGGLE


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@163 dbcabf3a-b0e7-0310-adc4-f8d773084564
  • Loading branch information...
Timo Sirainen cras
Timo Sirainen authored and cras committed Apr 14, 2000
1 parent 5fb98c2 commit 53b248f6deafb553aae133792659a8412bc00925
View
45 NEWS
@@ -1,3 +1,48 @@
v0.7.90 2000-04-xx Timo Sirainen <tss@iki.fi>
* On the way to 0.8.0 .. Major rewriting/rearranging code. There's
some changes in behaviour because I'm trying to make Irssi a bit
more compatible with EPIC.
* libPropList isn't needed anymore - I'm using my own configuration
library. This is mostly because different proplists worked a bit
differently everywhere and several people had problems with it.
It's also yet another extra library that you needed to compile
Irssi. New configuration library has several advantages:
You can add comments to configuration file and they also stay
there when it's saved.
It's not nearly as vulnerable as proplist. If some error occurs,
instead of just not reading anything it will try to continue if
possible. Also the error messages are written to irssi's text
window instead of stdout.
It can be managed more easily than proplist - setting/getting the
configuration is a lot more easier.
* Coding style changes - I'm not using gint, gchar etc. anymore,
they're just extra pain when moving code to non-glib projects and
syntax hilighting doesn't work by default with most editors ;)
Indentation style was also changed to K&R because of some political
reasons ;) And I'm already starting to like it.. :) It forces me
to split code to different functions more often and the result is
that the code gets more readable.
And finally I'm also using `const' all over the place.
+ /EVAL <commands> - Expand all the special variables from string and
run it. Commands can be split with ; character. See
docs/SPECIAL_VARS for more info.
+ Aliases are parsed just like /EVAL - arguments are in $0..$9.
+ Text formats are also parsed like /EVAL, arguments used to be in
$1..$9, now they're in $0..$8 so it messes up existing themes..
+ /SET [key [value]] - no more the '=' character. Boolean values
also need to be changed with ON/OFF/TOGGLE values (not yes/no).
Settings aren't saved to disk until you use /SAVE.
+ /TOGGLE <key> [ON/OFF] - same as /SET <key> TOGGLE
v0.7.28 2000-03-11 Timo Sirainen <tss@iki.fi>
+ irssi-text: New improved "text widget". It takes less memory and
View
1 README
@@ -68,7 +68,6 @@ make install
Configure can use these parameters (all of these defaults to yes):
--with-proplist=dir Specify libPropList directory
--with-servertest Build test irc server which you can use to try crash
irc clients
--with-socks Build with socks library
View
38 TODO
@@ -1,3 +1,41 @@
- notifylist ei toimi, /ALIAS, /IGNORE
- g_strndup() !!!!! auttaa varmaan vaikka miss�
- server-specific source_host
- curses sijainti jotain rikkoo
Day changed to 30-26 2000
[00:10] .. [00:20]
- "away mode changed"
- dcc on s�rki
- /server +blah tekis uuden ikkunan.
[17:37] -!- Magi [^magi@magi.yok.utu.fi] has quit IRC [Killed (Uni-Stuttgart.DE ((^magi@magi.yok.utu.fi)GMD.DE <- (.@vipek-IV.vip.net.pl)*.pl[ircd@hub.irc.pl]))]
:Magi!^magi@magi.yok.utu.fi QUIT :
Kalled (gart.DE ((^magi@magi.yok.utu.fi)GMD.DE <- (.@vipek-IV.vip.net.pl)*.pl[ircd@hub.irc.pl]))
~cras@0:0:0:0:0:ffff:
-teemoihin tee jotain pient� selityst� edes!
- alt+left/right vaihtaa kanavaa..
- checkkaa miten ne autojoin_channelsit nyt meni.. ett� vapautetaan ym.
- raiseta ikkuna jossa on teksti� mut ei over aktiivisen p��lle
- line-split.c: varmista ett� se 64k limitti toimii eik� esim. kaada!
- vaihda /set nimet j�rkevimmiksi
- optio ett� vaihtaa automaagisesti sinne autocreatettuun ikkunaan. tyhjenn�
entry (laita historyyn) ettei uusi rivi mene query ikkunaan suoraan vahingossa.
- "�l� n�yt� n. sekunttia pienemp�� lagia"
- cmd line switchi source hostille
- autojoinikaan ei tunnu oikein pelaavan..? vain kun vaihtuu serveri
- quit n�ytett�isiin vaan yhdess� ikkunassa.
- /exec
- optionaalisesti voisi niit� logeja ajella siin� toisessa irssisessiossa
- msg:iss� kun tulee sit� away viesti� n�ytt�isi vaan kerran..
- logrotate
- ignoroida tietyt ctcpt. regexpit. ignorettaa teksti� ..
egopallo/#tv.fi CANAL|MAFIA|...
- autorun.ircnet
- flood protectionia paremmaksi
- bottipluginiin tms. .. channel not available tms. rejoini
*** Bugs
View
138 config
@@ -1,72 +1,70 @@
{
setupservers = (
{server = irc.funet.fi;ircnet = IRCNet;port = 6667;autoconnect = No;},
{server = irc.efnet.net;ircnet = EFNet;port = 6667;autoconnect = No;},
{server = irc.undernet.net;ircnet = Undernet;port = 6667;autoconnect = No;},
{server = irc.dal.net;ircnet = DALNet;port = 6667;autoconnect = No;},
{server = irc.openprojects.net;ircnet = OPN;port = 6667;autoconnect = No;},
{server = irc.ptlink.net;ircnet = PTlink;port = 6667;autoconnect = No;},
{server = irc.multichat.org;ircnet = Multichat;port = 6667;autoconnect = No;}
);
setupservers = (
{server = "irc.funet.fi"; ircnet = IRCNet; port = 6667; autoconnect = No;},
{server = "irc.efnet.net"; ircnet = EFNet; port = 6667; autoconnect = No;},
{server = "irc.undernet.net"; ircnet = Undernet; port = 6667; autoconnect = No;},
{server = "irc.dal.net"; ircnet = DALNet; port = 6667; autoconnect = No;},
{server = "irc.openprojects.net"; ircnet = OPN; port = 6667; autoconnect = No;},
{server = "irc.ptlink.net"; ircnet = PTlink; port = 6667; autoconnect = No;},
{server = "irc.multichat.org"; ircnet = Multichat; port = 6667; autoconnect = No;}
);
ircnets = (
{name = IRCNet;max_kicks = 4;max_modes = 3;max_msgs = 3;},
{name = EFNet;max_kicks = 4;max_modes = 4;max_msgs = 3;},
{name = Undernet;max_kicks = 4;max_modes = 3;max_msgs = 3;},
{name = DALNet;max_kicks = 4;max_modes = 6;max_msgs = 3;},
{name = OPN;max_kicks = 1;max_modes = 6;max_msgs = 100;},
{name = PTlink;max_kicks = 1;max_modes = 6;max_msgs = 100;},
{name = Multichat;max_kicks = 1;max_modes = 6;max_msgs = 100;}
);
ircnets = (
{name = IRCNet; max_kicks = 4; max_modes = 3; max_msgs = 5;},
{name = EFNet; max_kicks = 4; max_modes = 4; max_msgs = 3;},
{name = Undernet; max_kicks = 4; max_modes = 3; max_msgs = 3;},
{name = DALNet; max_kicks = 4; max_modes = 6; max_msgs = 3;},
{name = OPN; max_kicks = 1; max_modes = 6; max_msgs = 100;},
{name = PTlink; max_kicks = 1; max_modes = 6; max_msgs = 100;},
{name = Multichat; max_kicks = 1; max_modes = 6; max_msgs = 100;}
);
channels = (
{
name = "#irssi";
ircnet = ircnet;
autojoin = No;
}
);
aliases = (
{alias = J;command = "/join &1";},
{alias = LEAVE;command = "/part &1";},
{alias = BYE;command = "/quit &1";},
{alias = WI;command = "/whois &1";},
{alias = WII;command = "/whois %1 %1";},
{alias = WW;command = "/whowas &1";},
{alias = W;command = "/who *";},
{alias = N;command = "/names *";},
{alias = M;command = "/msg &1";},
{alias = T;command = "/topic &1";},
{alias = C;command = "/clear";},
{alias = CL;command = "/clear";},
{alias = K;command = "/kick &1";},
{alias = KB;command = "/kickban &1";},
{alias = KN;command = "/knockout &1";},
{alias = B;command = "/ban &1";},
{alias = UB;command = "/unban &1";},
{alias = IG;command = "/ignore &1";},
{alias = UNIG;command = "/unignore &1";},
{alias = SB;command = "/scrollback &1";},
{alias = UMODE;command = "/mode %n &1";}
);
popups = (
{label = "<MULTICOMMA>Whois";command = "/whois %s";},
{label = "DCC Send File";command = "/dcc send %s";},
{label = "Open DCC Chat";command = "/dcc chat %s";},
{label = Query;command = "/query %s";},
{label = "<MENU><OP>";command = "Op";},
{label = "<MULTI>Op";command = "/op %s";},
{label = "<MULTI>Deop";command = "/deop %s";},
{label = "<MULTI>Voice";command = "/voice %s";},
{label = "<MULTI>Devoice";command = "/devoice %s";},
{label = "<KICK>Kick";command = "/kick %s %s";},
{label = "<MULTI>Ban";command = "/ban %s";},
{label = "<KICK>Kick+ban";command = "/kickban %s %s";},
{label = "<KICK>Knockout";command = "/knockout %s %s";},
{label = "</MENU>";command = "";},
{label = "<MENU>";command = "CTCP";},
{label = Ping;command = "/ping %s";},
{label = Version;command = "/ver %s";},
{label = "</MENU>";command = "";}
);
}
channels = (
{
name = "#irssi";
ircnet = ircnet;
autojoin = No;
}
);
aliases = (
{alias = J; command = "join";},
{alias = LEAVE; command = "part";},
{alias = BYE; command = "quit";},
{alias = WI; command = "whois";},
{alias = WII; command = "whois $0 $0";},
{alias = WW; command = "whowas";},
{alias = W; command = "who $C";},
{alias = N; command = "names $C";},
{alias = M; command = "msg";},
{alias = T; command = "topic";},
{alias = C; command = "clear";},
{alias = CL; command = "clear";},
{alias = K; command = "kick";},
{alias = KB; command = "kickban";},
{alias = KN; command = "knockout";},
{alias = B; command = "ban";},
{alias = UB; command = "unban";},
{alias = IG; command = "ignore";},
{alias = UNIG; command = "unignore";},
{alias = SB; command = "scrollback";},
{alias = UMODE; command = "mode $N";}
);
popups = (
{label = "<MULTICOMMA>Whois"; command = "/whois %s";},
{label = "DCC Send File"; command = "/dcc send %s";},
{label = "Open DCC Chat"; command = "/dcc chat %s";},
{label = Query; command = "/query %s";},
{label = "<MENU><OP>"; command = "Op";},
{label = "<MULTI>Op"; command = "/op %s";},
{label = "<MULTI>Deop"; command = "/deop %s";},
{label = "<MULTI>Voice"; command = "/voice %s";},
{label = "<MULTI>Devoice"; command = "/devoice %s";},
{label = "<KICK>Kick"; command = "/kick %s %s";},
{label = "<MULTI>Ban"; command = "/ban %s";},
{label = "<KICK>Kick+ban"; command = "/kickban %s %s";},
{label = "<KICK>Knockout"; command = "/knockout %s %s";},
{label = "</MENU>"; command = "";},
{label = "<MENU>"; command = "CTCP";},
{label = Ping; command = "/ping %s";},
{label = Version; command = "/ver %s";},
{label = "</MENU>"; command = "";}
);
View
@@ -19,10 +19,6 @@ AC_CHECK_HEADERS(string.h stdlib.h unistd.h dirent.h sys/ioctl.h libintl.h)
GNOME_INIT
GNOME_SUPPORT_CHECKS
AC_ARG_WITH(proplist,
[ --with-proplist Specify libPropList location],
proplist_dir=$withval)
AC_ARG_WITH(socks,
[ --with-socks Build with socks support],
if test x$withval = xyes; then
@@ -228,29 +224,6 @@ AC_DEFINE(socklen_t, int, Define to 'int' if <sys/socket.h> doesn't define.)
fi
AC_MSG_RESULT($irssi_cv_type_socklen_t)
dnl **
dnl ** check for libPropList
dnl **
if test "x$proplist_dir" = "x"; then
proplib=
else
proplib=-L$proplist_dir/lib
fi
AC_CHECK_LIB(PropList, PLSave, [
PROG_LIBS="$PROG_LIBS $proplib -lPropList"
if test "x$proplist_dir" != "x"; then
CFLAGS="$CFLAGS -I$proplist_dir/include"
fi
], [
echo "ERROR: Irssi needs libPropList for configuration file handling."
echo "Go get it from http://xlife.dhs.org/irssi/download.php"
AC_ERROR(["libPropList not found"])
], $PROG_LIBS $proplib -lPropList)
dnl **
dnl ** check for socks
dnl **
View
@@ -318,20 +318,24 @@ LAST [-pub -msgs...] <text>
** Configuration
SET [key [=value / [key [key..]]
SET [key [value]]
Get/set configuration
Get/set configuration. Boolean values also need to be changed
with ON/OFF/TOGGLE values (not yes/no). Settings aren't saved
to disk until you use /SAVE.
ALIAS, UNALIAS <alias> [command]
TOGGLE key [ON|OFF]
Set/remove alias, /unalias is the same as /alias without command
Same as /SET <key> TOGGLE, or if ON or OFF parameter is given
it will work just like /SET.
SAVE
These codes are extracted in commands:
%0 : name of alias
%1, %2, %3 .. : %th word
&1, &2, &3 .. : &th word + the rest of the text after it
%c : channel name
Save configuration to disk.
ALIAS, UNALIAS <alias> [command]
Set/remove alias, /unalias is the same as /alias without command
Typing extra / before /command (//command) ignores any aliases
IGNORE, UNIGNORE <mask> [level [level..]]
View
@@ -14,13 +14,6 @@
%8 Reverse on/off
%9 %_ Bold on/off
%: Insert newline
%| Marks the indentation position
%% A single %
parameter handling:
$[30]1 prints parameter 1 cut/padded to 30 chars
$[!30]1 prints parameter 1 padded to min. 30 chars
$[-30]1 prints parameter 1 right aligned
$[30?]1 prints parameter 1 padded with '?' characters
$[30.0]1 prints parameter 1 padded with '0' characters
%| marks the indentation position.
View
@@ -243,7 +243,7 @@ Server server_find_tag(tag)
Server server_find_ircnet(ircnet)
Find first server that is in `ircnet'
Channel channel_find_any(channel)
Channel channel_find(channel)
Find `channel' from any server
Channel Server::channel_find_level(level)
@@ -436,6 +436,7 @@ Nick::values()
"nick" - Plain nick
"host" - Host (blah@there.org)
"name" - Real name
"hops" - Hop count to the server nick is using
"op", "voice", "gone", "ircop" - 1 or 0
"last_check" - timestamp when last checked gone/ircop status.
"send_massjoin" - Waiting to be sent in a "massjoin" signal - 1 or 0
View
@@ -42,7 +42,7 @@ channels.c:
"channel destroyed", CHANNEL_REC
"channel name changed", CHANNEL_REC
"channel topic changed", CHANNEL_REC
"channel server changed", CHANNEL_REC
"channel server changed", CHANNEL_REC, SERVER_REC *oldserver
"channel query", CHANNEL_REC
"channel wholist", CHANNEL_REC
Oops, something went wrong.

0 comments on commit 53b248f

Please sign in to comment.