comparison mcabber/src/main.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 0f7e0346d9cb
comparison
equal deleted inserted replaced
1175:4b4fa9d685b8 1176:547a8ca7c1a8
288 #else /* not HAVE_GPGME */ 288 #else /* not HAVE_GPGME */
289 scr_LogPrint(LPRINT_LOGNORM, "WARNING: not compiled with PGP support"); 289 scr_LogPrint(LPRINT_LOGNORM, "WARNING: not compiled with PGP support");
290 #endif /* HAVE_GPGME */ 290 #endif /* HAVE_GPGME */
291 } 291 }
292 292
293 // Create default bindings
294 // Return 0 if error and 1 if none
295 int init_bindings(void)
296 {
297 char *tmp;
298
299 if ( !(tmp = (char*)malloc(10)) ) {
300 scr_LogPrint(LPRINT_LOGNORM, "Not enough memory!");
301 fprintf(stderr, "Not enough memory!");
302 return 0;
303 }
304
305 // Ctrl-h
306 settings_set(SETTINGS_TYPE_BINDING, "8", "iline char_bdel");
307 settings_set(SETTINGS_TYPE_BINDING, "127", "iline char_bdel");
308 sprintf(tmp, "%d", KEY_BACKSPACE);
309 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline char_bdel");
310 sprintf(tmp, "%d", KEY_DC);
311 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline char_fdel");
312 sprintf(tmp, "%d", KEY_LEFT);
313 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline bchar");
314 sprintf(tmp, "%d", KEY_RIGHT);
315 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline fchar");
316 // Ctrl-g
317 settings_set(SETTINGS_TYPE_BINDING, "7", "iline compl_cancel");
318 sprintf(tmp, "%d", KEY_UP);
319 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline hist_prev");
320 sprintf(tmp, "%d", KEY_DOWN);
321 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline hist_next");
322 sprintf(tmp, "%d", KEY_PPAGE);
323 settings_set(SETTINGS_TYPE_BINDING, tmp, "roster up");
324 sprintf(tmp, "%d", KEY_NPAGE);
325 settings_set(SETTINGS_TYPE_BINDING, tmp, "roster down");
326 sprintf(tmp, "%d", KEY_HOME);
327 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline iline_start");
328 // Ctrl-a
329 settings_set(SETTINGS_TYPE_BINDING, "1", "iline iline_start");
330 sprintf(tmp, "%d", KEY_END);
331 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline iline_end");
332 // Ctrl-e
333 settings_set(SETTINGS_TYPE_BINDING, "5", "iline iline_end");
334 // Ctrl-o
335 settings_set(SETTINGS_TYPE_BINDING, "15", "iline iline_accept_down_hist");
336 // Ctrl-u
337 settings_set(SETTINGS_TYPE_BINDING, "21", "iline iline_bdel");
338 sprintf(tmp, "%d", KEY_EOL);
339 settings_set(SETTINGS_TYPE_BINDING, tmp, "iline iline_fdel");
340 // Ctrl-k
341 settings_set(SETTINGS_TYPE_BINDING, "11", "iline iline_fdel");
342 // Ctrl-p
343 settings_set(SETTINGS_TYPE_BINDING, "16", "buffer up");
344 // Ctrl-n
345 settings_set(SETTINGS_TYPE_BINDING, "14", "buffer down");
346 // Ctrl-t
347 settings_set(SETTINGS_TYPE_BINDING, "20", "iline char_swap");
348 // Ctrl-w
349 settings_set(SETTINGS_TYPE_BINDING, "23", "iline word_bdel");
350 // Ctrl-Left (2 codes)
351 settings_set(SETTINGS_TYPE_BINDING, "515", "iline bword");
352 settings_set(SETTINGS_TYPE_BINDING, "516", "iline bword");
353 // Ctrl-Right (2 codes)
354 settings_set(SETTINGS_TYPE_BINDING, "517", "iline fword");
355 settings_set(SETTINGS_TYPE_BINDING, "518", "iline fword");
356 // Ctrl-l
357 settings_set(SETTINGS_TYPE_BINDING, "12", "screen_repaint");
358 // Esc
359 settings_set(SETTINGS_TYPE_BINDING, "27", "chat_disable");
360 // Ctrl-d
361 settings_set(SETTINGS_TYPE_BINDING, "4", "iline send_multiline");
362 // Meta-u
363 settings_set(SETTINGS_TYPE_BINDING, "M117", "iline word_upcase");
364 // Meta-l
365 settings_set(SETTINGS_TYPE_BINDING, "M108", "iline word_downcase");
366 // Meta-c
367 settings_set(SETTINGS_TYPE_BINDING, "M99", "iline word_capit");
368
369 free(tmp);
370 return 1;
371 }
372
373 int main(int argc, char **argv) 293 int main(int argc, char **argv)
374 { 294 {
375 char *configFile = NULL; 295 char *configFile = NULL;
376 const char *optstring; 296 const char *optstring;
377 int optval, optval2; 297 int optval, optval2;
401 configFile = g_strdup(optarg); 321 configFile = g_strdup(optarg);
402 break; 322 break;
403 } 323 }
404 } 324 }
405 325
406 /* Initialize commands system and roster */ 326 /* Initialize command system, roster and default key bindings */
407 cmd_init(); 327 cmd_init();
408 roster_init(); 328 roster_init();
409 settings_init(); 329 settings_init();
330 scr_init_bindings();
410 /* Initialize charset */ 331 /* Initialize charset */
411 scr_InitLocaleCharSet(); 332 scr_InitLocaleCharSet();
412
413 /* Creating default bindings */
414 if (!init_bindings()) exit(EXIT_FAILURE);
415 333
416 /* Parsing config file... */ 334 /* Parsing config file... */
417 ret = cfg_read_file(configFile); 335 ret = cfg_read_file(configFile);
418 /* free() configFile if it has been allocated during options parsing */ 336 /* free() configFile if it has been allocated during options parsing */
419 g_free(configFile); 337 g_free(configFile);