summaryrefslogtreecommitdiff
path: root/src/fe-text
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2004-08-20 00:03:40 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2004-08-20 00:03:40 +0000
commit226a567562cf1f9a95ea08383838e11c20fb98c3 (patch)
tree484a82b46cf0ae9e93002b567c8dd43e70fefaf8 /src/fe-text
parent924ac8f91f87d9034dedb711ec33fe714f91a860 (diff)
downloadirssi-226a567562cf1f9a95ea08383838e11c20fb98c3.zip
Recode patch by decadix/senneth
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3283 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/fe-text')
-rw-r--r--src/fe-text/statusbar.c13
-rw-r--r--src/fe-text/term.c4
2 files changed, 12 insertions, 5 deletions
diff --git a/src/fe-text/statusbar.c b/src/fe-text/statusbar.c
index 689e4f9b..0de19e00 100644
--- a/src/fe-text/statusbar.c
+++ b/src/fe-text/statusbar.c
@@ -21,6 +21,7 @@
#include "module.h"
#include "signals.h"
#include "expandos.h"
+#include "recode.h"
#include "special-vars.h"
#include "themes.h"
@@ -684,8 +685,10 @@ void statusbar_item_default_handler(SBAR_ITEM_REC *item, int get_size_only,
int escape_vars)
{
SERVER_REC *server;
- WI_ITEM_REC *wiitem;
- char *tmpstr, *tmpstr2;
+ WI_ITEM_REC *wiitem;
+ char *tmpstr, *tmpstr2;
+ const char *target;
+ char *recoded;
int len;
if (str == NULL)
@@ -724,7 +727,11 @@ void statusbar_item_default_handler(SBAR_ITEM_REC *item, int get_size_only,
tmpstr2 = reverse_controls(tmpstr);
g_free(tmpstr);
- tmpstr = tmpstr2;
+ target = wiitem ? window_item_get_target(wiitem) : NULL;
+ recoded = recode_in(tmpstr2, target);
+ g_free(tmpstr2);
+
+ tmpstr = recoded;
if (get_size_only) {
item->min_size = item->max_size = format_get_length(tmpstr);
} else {
diff --git a/src/fe-text/term.c b/src/fe-text/term.c
index aa6200a1..5e62ce5d 100644
--- a/src/fe-text/term.c
+++ b/src/fe-text/term.c
@@ -119,7 +119,7 @@ static void read_settings(void)
term_auto_detach(settings_get_bool("term_auto_detach"));
/* set terminal type */
- str = settings_get_str("term_type");
+ str = settings_get_str("term_charset");
if (g_strcasecmp(str, "utf-8") == 0)
term_type = TERM_TYPE_UTF8;
else if (g_strcasecmp(str, "big5") == 0)
@@ -152,7 +152,7 @@ void term_common_init(void)
settings_add_bool("lookandfeel", "term_force_colors", FALSE);
settings_add_bool("lookandfeel", "term_auto_detach", FALSE);
settings_add_bool("lookandfeel", "mirc_blink_fix", FALSE);
- settings_add_str("lookandfeel", "term_type", "8bit");
+ settings_add_str("lookandfeel", "term_charset", "ISO8859-1");
force_colors = FALSE;
term_use_colors = term_has_colors() && settings_get_bool("colors");