1
0
mirror of https://github.com/irssi/irssi.git synced 2024-10-06 04:53:38 -04:00
Commit Graph

20 Commits

Author SHA1 Message Date
Sebastian Thorarensen
e6147fb8f2 Properly split long IRC messages
This commit adds handling of long IRC messages to the core. In contrast
to the `splitlong.pl' plugin, multi-byte encoded and recoded messages
are properly split.

To allow for this, a new function has been added to the server struct:
`split_message'. `split_message' returns a string array with the message
splitted to substrings of a length that the server can handle. If a
protocol module doesn't have any limit, it can simply return a singleton
array with a copy of the message.

The `MSG' chat command now calls `split_message' before `send_message',
and emits `message own_public' / `message own_private' with each
substring, so that the string splitting will be visible in the UI.

`split_message' in the IRC module uses `recode_split' which in turn uses
iconv to properly split multi-byte encoded (and recoded) messages.
2014-07-06 23:24:09 +02:00
Emanuele Giaquinta
f053542dcf Extend net_sendbuffer by adding a LINEBUF_REC member and a net_sendbuffer_receive_line
function to read linewise from the associated io channel.
Rewrite irc/dcc/proxy read logic on top of it.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4841 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-05-22 22:38:29 +00:00
Timo Sirainen
217283caea isupport patch by David Leadbeater
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3211 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-01-20 10:57:57 +00:00
Timo Sirainen
7c94cb083f Added target_type to send_message(), -channel and -nick parameters to /MSG
to specify if it's supposed to be to channel/nick. /MSG -channel is used
automatically by irssi when sending messages to channel (the "normal" way
without /msg). This should help with protocols that don't have any channel
name prefixes.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2383 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-02-03 21:53:37 +00:00
Timo Sirainen
6774b4b30f Added reference counting to server record. At least now we don't accidentally
use a destroyed server record when some /command disconnects the server
(shouldn't happen really) or when irc_send_cmd() fails sending data to server
and disconnects the server (I don't know if this ever happens, but if it does,
it very well could have caused crashes)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2243 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-14 01:54:12 +00:00
Timo Sirainen
6be1390303 /UPGRADE broke reconnections to server.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2204 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-06 23:05:54 +00:00
Timo Sirainen
bbbb36cf19 /UPGRADE - upgrade-on-the-fly feature. Currently only moves the active
server connections to the new irssi process, but that should be enough to
never quit from IRC again :)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2070 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-19 01:48:58 +00:00
Timo Sirainen
c6302cd6e7 Lag checking fixes - should work fine again.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2016 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-15 13:47:51 +00:00
Timo Sirainen
850cf993eb Moved rewritten server redirection code from core to irc. This new code
should be able to do the redirecting a lot more error-proof. Changed
lag-checking to use PINGs instead of NOTIFYs. This breaks scripts using
redirection. Hopefully this doesn't break too much things in irssi :)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1980 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-11 18:59:19 +00:00
Timo Sirainen
95b94ed83c server->ischannel(char *) -> server->ischannel(SERVER_REC *, char *). Added
#define server_ischannel(server, data) and it's now used everywhere..


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1954 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-01 22:52:23 +00:00
Timo Sirainen
4eb054f4bb If one server fails because of DNS error, don't stop reconnecting to
entire chatnet.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1361 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-03-07 23:57:19 +00:00
Timo Sirainen
2ae679be08 added "message own_public" and "message own_private" events that are
sent when /msg command is used. this way we don't need to parse the
/msg's options everywhere. also efnet @#channels support works now better.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1041 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-01-01 16:57:25 +00:00
Timo Sirainen
4a33801669 Added/moved several "typedef struct _XXX XXX;" to common.h so that
they're known to all files and I don't need those stupid "void *xxx"
anymore just to avoid useless #include. Header files themselves don't
either include others as often anymore.

Added channel->ownnick to point to our NICK_REC in channel's nicks.
Gives a minor speedup in few places :)

Moved completion specific lastmsgs from channel/server core records to
fe-common/core specific records. Also changed the nick completion logic
a bit so it should work better now. Removed
completion_keep_publics_count setting, but changed the meaning of
completion_keep_publics to same as _count was before. Nick completion
doesn't have any time specific code anymore.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1034 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-01-01 07:45:54 +00:00
Timo Sirainen
1c9f45b4a4 Use GIOChannel instead of sockets directly. Helps porting to win32 :)
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@962 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-12-04 22:57:18 +00:00
Timo Sirainen
8ce36c05ea several fixes to make irssi compile without warnings with MIPSpro
also fixed ctcp_queue_clean() - it might have crashed sometimes..


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@859 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-11-23 21:40:07 +00:00
Timo Sirainen
98060c3185 Moved nick/msg/channel completion to core with some cleanups.
Moved ignore checking to fe-ignore-messages.c.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@750 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-10-14 14:07:31 +00:00
Timo Sirainen
2b8580c8a7 multiprotocol updates. SILC prints channel and private messages now
using the same message formats as IRC.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@699 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-09-30 22:49:48 +00:00
Timo Sirainen
2d1ac3059a /set autocreate_query -> /set autocreate_query_level
fixes to /ircnet, /server and /channel commands
other updates and fixes


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@649 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-09-06 21:30:56 +00:00
Timo Sirainen
28a7908e73 Added chat protocol register. Changed all chat_type fields to use it.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@640 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-09-01 00:26:46 +00:00
Timo Sirainen
e395e87ded Lots of moving stuff around - hopefully I didn't break too much :)
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@632 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-08-26 15:39:44 +00:00