comparison mcabber/src/screen.c @ 1176:547a8ca7c1a8

Move init_bindings() to screen.c, with a few updates - Move the function init_bindings() to screen.c scr_init_bindings() - Get rid of the malloc/free - Add two key bindings: Meta-a, Meta-b - Put the comments on the same line when it is possible, in order to save some space.
author Mikael Berthe <mikael@lilotux.net>
date Wed, 04 Apr 2007 22:03:49 +0200
parents 960f34ec22a2
children 10733d7de004
comparison
equal deleted inserted replaced
1175:4b4fa9d685b8 1176:547a8ca7c1a8
305 // Konsole Linux 305 // Konsole Linux
306 add_keyseq("[1~", MKEY_EQUIV, KEY_HOME); // Home 306 add_keyseq("[1~", MKEY_EQUIV, KEY_HOME); // Home
307 add_keyseq("[4~", MKEY_EQUIV, KEY_END); // End 307 add_keyseq("[4~", MKEY_EQUIV, KEY_END); // End
308 } 308 }
309 309
310 // scr_init_bindings()
311 // Create default key bindings
312 // Return 0 if error and 1 if none
313 void scr_init_bindings(void)
314 {
315 GString *sbuf = g_string_new("");
316
317 // Common backspace key codes: 8, 127
318 settings_set(SETTINGS_TYPE_BINDING, "8", "iline char_bdel"); // Ctrl-h
319 settings_set(SETTINGS_TYPE_BINDING, "127", "iline char_bdel");
320 g_string_printf(sbuf, "%d", KEY_BACKSPACE);
321 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline char_bdel");
322 g_string_printf(sbuf, "%d", KEY_DC);
323 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline char_fdel");
324 g_string_printf(sbuf, "%d", KEY_LEFT);
325 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline bchar");
326 g_string_printf(sbuf, "%d", KEY_RIGHT);
327 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline fchar");
328 settings_set(SETTINGS_TYPE_BINDING, "7", "iline compl_cancel"); // Ctrl-g
329 g_string_printf(sbuf, "%d", KEY_UP);
330 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline hist_prev");
331 g_string_printf(sbuf, "%d", KEY_DOWN);
332 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline hist_next");
333 g_string_printf(sbuf, "%d", KEY_PPAGE);
334 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "roster up");
335 g_string_printf(sbuf, "%d", KEY_NPAGE);
336 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "roster down");
337 g_string_printf(sbuf, "%d", KEY_HOME);
338 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline iline_start");
339 settings_set(SETTINGS_TYPE_BINDING, "1", "iline iline_start"); // Ctrl-a
340 g_string_printf(sbuf, "%d", KEY_END);
341 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline iline_end");
342 settings_set(SETTINGS_TYPE_BINDING, "5", "iline iline_end"); // Ctrl-e
343 // Ctrl-o (accept-line-and-down-history):
344 settings_set(SETTINGS_TYPE_BINDING, "15", "iline iline_accept_down_hist");
345 settings_set(SETTINGS_TYPE_BINDING, "21", "iline iline_bdel"); // Ctrl-u
346 g_string_printf(sbuf, "%d", KEY_EOL);
347 settings_set(SETTINGS_TYPE_BINDING, sbuf->str, "iline iline_fdel");
348 settings_set(SETTINGS_TYPE_BINDING, "11", "iline iline_fdel"); // Ctrl-k
349 settings_set(SETTINGS_TYPE_BINDING, "16", "buffer up"); // Ctrl-p
350 settings_set(SETTINGS_TYPE_BINDING, "14", "buffer down"); // Ctrl-n
351 settings_set(SETTINGS_TYPE_BINDING, "20", "iline char_swap"); // Ctrl-t
352 settings_set(SETTINGS_TYPE_BINDING, "23", "iline word_bdel"); // Ctrl-w
353 settings_set(SETTINGS_TYPE_BINDING, "M98", "iline bword"); // Meta-b
354 settings_set(SETTINGS_TYPE_BINDING, "M102", "iline fword"); // Meta-f
355 // Ctrl-Left (2 codes):
356 settings_set(SETTINGS_TYPE_BINDING, "515", "iline bword");
357 settings_set(SETTINGS_TYPE_BINDING, "516", "iline bword");
358 // Ctrl-Right (2 codes):
359 settings_set(SETTINGS_TYPE_BINDING, "517", "iline fword");
360 settings_set(SETTINGS_TYPE_BINDING, "518", "iline fword");
361 settings_set(SETTINGS_TYPE_BINDING, "12", "screen_refresh"); // Ctrl-l
362 settings_set(SETTINGS_TYPE_BINDING, "27", "chat_disable"); // Esc
363 settings_set(SETTINGS_TYPE_BINDING, "4", "iline send_multiline"); // Ctrl-d
364 settings_set(SETTINGS_TYPE_BINDING, "M117", "iline word_upcase"); // Meta-u
365 settings_set(SETTINGS_TYPE_BINDING, "M108", "iline word_downcase"); // Meta-l
366 settings_set(SETTINGS_TYPE_BINDING, "M99", "iline word_capit"); // Meta-c
367
368 g_string_free(sbuf, TRUE);
369 }
370
310 void scr_InitLocaleCharSet(void) 371 void scr_InitLocaleCharSet(void)
311 { 372 {
312 setlocale(LC_CTYPE, ""); 373 setlocale(LC_CTYPE, "");
313 LocaleCharSet = nl_langinfo(CODESET); 374 LocaleCharSet = nl_langinfo(CODESET);
314 utf8_mode = (strcmp(LocaleCharSet, "UTF-8") == 0); 375 utf8_mode = (strcmp(LocaleCharSet, "UTF-8") == 0);