Joseph Bisch
0840eaec7b
Make split functions return an array with NULL instead of NULL
...
This avoids undefined behavior in functions that call these split
functions and expect an array back instead of just a NULL pointer.
2017-10-20 15:22:32 +02:00
Sebastian Thorarensen
f81a54b937
Try to split long lines on spaces
...
Try to split long lines on spaces to avoid words being splitted. This
can be turned off with the option `split_line_on_space'. The code
assumes that the terminal encoding has ASCII spaces.
2014-10-19 17:03:20 +02:00
Sebastian Thorarensen
1c73bde239
Fix minor coding style issues in message splitting
2014-07-06 23:24:10 +02:00
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
a8680fb7da
Amend fix for bug #392 , assume utf-8 encoding for an ascii string in
...
which no escape character occurs.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4928 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-29 10:45:58 +00:00
Emanuele Giaquinta
d6be6b9cff
Factor code to check if a string is ascii only into a function.
...
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4926 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-11-28 23:01:45 +00:00
Emanuele Giaquinta
21abb51130
Cache charset related data rather than computing it everytime recode_{in,out}
...
is called.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4862 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-06-10 22:49:00 +00:00
Emanuele Giaquinta
e2362f7884
Partly revert r4796, it is not a bug but by design that
...
recode_fallback is honored only when the terminal encoding is utf-8.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4799 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-04-05 17:07:37 +00:00
Emanuele Giaquinta
68763eb4e8
Cosmetics.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4797 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-04-05 13:11:22 +00:00
Emanuele Giaquinta
76fb9b6ac2
Fix logic in recode_in:
...
Honour recode_fallback also when the terminal encoding is not utf-8.
Return the string as it is when the terminal encoding is utf-8, the
string is valid utf-8, and the first conversion failed, rather than
trying again the same conversion.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4796 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-04-05 13:07:26 +00:00
Emanuele Giaquinta
7df46597e1
Use g_ascii_str{,n}casecmp for case insensitive comparison with
...
ascii only strings.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4738 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-03-09 12:01:16 +00:00
Emanuele Giaquinta
ffe5bd6930
Remove trailing whitespace.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4705 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-02-04 15:30:38 +00:00
Emanuele Giaquinta
cce9683658
Simplify is_valid_charset by just checking with g_iconv_open that the
...
conversion is supported.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4665 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-12-09 16:10:07 +00:00
Emanuele Giaquinta
afa4292466
Farewell glib-1.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4509 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-20 23:13:29 +00:00
Emanuele Giaquinta
9dc678e1d3
Factor common code in recode_{in,out}.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4499 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-18 14:41:44 +00:00
Wouter Coekaerts
9c2d621cc6
Oops. Update address correctly now.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4490 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:41:10 +00:00
Wouter Coekaerts
023026e12b
Update FSF address
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4489 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:16:58 +00:00
Emanuele Giaquinta
2b2b904ada
Do not call iconfig_get_str when target is NULL.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4487 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-06 16:22:09 +00:00
Emanuele Giaquinta
ef0cc3feca
Reindent.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4405 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-01-06 16:08:29 +00:00
Emanuele Giaquinta
646e3ecb5d
Remove the target != NULL constraint in recode_out.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4404 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-01-06 16:00:45 +00:00
Emanuele Giaquinta
721650c300
Simplify.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4403 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-01-06 15:52:22 +00:00
Emanuele Giaquinta
66ae6d0876
Cosmetic.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4372 dbcabf3a-b0e7-0310-adc4-f8d773084564
2006-09-20 23:47:20 +00:00
Emanuele Giaquinta
a7b0e6b3f2
Make compilation of is_translit conditional on glib-2.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4369 dbcabf3a-b0e7-0310-adc4-f8d773084564
2006-09-20 23:11:17 +00:00
Emanuele Giaquinta
3cdf50170f
Add public is_utf8 function by refactoring existing code.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4368 dbcabf3a-b0e7-0310-adc4-f8d773084564
2006-09-20 23:04:40 +00:00
Valentin Batz
da965109ed
Don't assume that 7bit ascii strings are encoded in UTF-8, only validate the strings when they contain octest with highest bit set. (patch by Mikko Rauhala)
...
fixes http://bugs.irssi.org/index.php?do=details&id=392
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4300 dbcabf3a-b0e7-0310-adc4-f8d773084564
2006-07-25 11:02:10 +00:00
Timo Sirainen
342141fcb2
If transliterations don't work in the system (eg. Solaris), don't allow
...
recode_transliterate setting to be enabled.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4082 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-11-19 18:13:18 +00:00
Timo Sirainen
2e75479637
Default recode_transliterate to yes
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4079 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-11-19 16:15:55 +00:00
Valentin Batz
68e4516d0b
changed recode_fallback to CP1252
...
added recode_autodetect_utf8, it's on by default
removed settings_remove calls from recode_deinit since I don't see any other internal module doing it
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4067 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-11-07 19:06:42 +00:00
Valentin Batz
0b8a23ad63
fixed a bug in recode when target is NULL and really use the recoded string for printing
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4042 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-10-16 11:16:33 +00:00
Wouter Coekaerts
c701330433
Don't crash with /me in dcc, or dcc message on disconnected server, with recode (Bug 330)
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4033 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-10-10 10:04:51 +00:00
Valentin Batz
240a7df160
Forgot to add the additional parameter to g_convert_with_fallback (This always happens when I'm applying patches manually :( )
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3882 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-07-24 20:01:06 +00:00
Valentin Batz
56041a3144
Added an option to specify a charset for a whole network. For example /recode add IRCnet iso-8859-1 ( http://bugs.irssi.org/index.php?do=details&id=284 ) Patch by Sergey Safonov. Replaced g_convert by g_convert_with_fallback in recode_in ( http://bugs.irssi.org/index.php?do=details&id=241 ) Patch by Kuang-che Wu.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3881 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-07-24 19:16:14 +00:00
Valentin Batz
eefd999fa4
Added a new boolean setting 'recode' to provide an opportunity to turn off recode completely
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3805 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-06-29 07:47:45 +00:00
Valentin Batz
b5f93b6164
call setlocale(LC_ALL, ) once in fe-text/irssi.c and not everytime recode_get_charset() is called in recode.c
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3703 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-01-12 16:40:44 +00:00
Valentin Batz
f4c1b605ed
call setlocale(LC_ALL, ) before g_get_charset to properly return the user's charset
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3702 dbcabf3a-b0e7-0310-adc4-f8d773084564
2005-01-12 12:10:48 +00:00
Valentin Batz
8b772ff6ec
Fixed target handling in recode_out
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3693 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-12-20 15:06:29 +00:00
Valentin Batz
7be7dd374c
Added <tag>/<target> support for recode.
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3692 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-12-20 13:59:15 +00:00
Valentin Batz
a26038c664
Changed the order of recode_out_default_charset, it doesn't override /recode add anymore. The string returned by nl_langinfo(CODESET) may be empty, use ISO8859-1 in this case
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3306 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-09-20 12:45:49 +00:00
Valentin Batz
19ca0eb059
Forgot g_free(translit_to); in recode_in
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3304 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-09-18 03:42:59 +00:00
Valentin Batz
8ea717b676
Fixed memleak in recode.c, fixed typo in special_vars.txt, fixed bug 105, fixed bug 106
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3295 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-09-15 12:11:43 +00:00
Timo Sirainen
82052118a7
Bug #104 recode treats multibyte jp characters as utf8. Patch by Valentin
...
Batz
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3285 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-08-21 07:05:16 +00:00
Timo Sirainen
df9f46cf4d
forgot to add
...
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3284 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-08-20 00:27:05 +00:00