void termit_config_trace() { #ifdef DEBUG TRACE_MSG(""); TRACE(" default_window_title = %s", configs.default_window_title); TRACE(" default_tab_name = %s", configs.default_tab_name); TRACE(" default_encoding = %s", configs.default_encoding); TRACE(" default_word_chars = %s", configs.default_word_chars); TRACE(" show_scrollbar = %d", configs.show_scrollbar); TRACE(" hide_menubar = %d", configs.hide_menubar); TRACE(" fill_tabbar = %d", configs.fill_tabbar); TRACE(" hide_single_tab = %d", configs.hide_single_tab); TRACE(" scrollback_lines = %d", configs.scrollback_lines); TRACE(" cols x rows = %d x %d", configs.cols, configs.rows); TRACE(" backspace = %s", termit_erase_binding_to_string(configs.default_bksp)); TRACE(" delete = %s", termit_erase_binding_to_string(configs.default_delete)); TRACE(" allow_changing_title = %d", configs.allow_changing_title); TRACE(" audible_bell = %d", configs.audible_bell); TRACE(" visible_bell = %d", configs.visible_bell); TRACE(" blink_cursor = %d", configs.blink_cursor); TRACE(" get_window_title_callback= %d", configs.get_window_title_callback); TRACE(" get_tab_title_callback = %d", configs.get_tab_title_callback); TRACE(" get_statusbar_callback = %d", configs.get_statusbar_callback); TRACE(" style:"); TRACE(" font_name = %s", configs.style.font_name); if (configs.style.foreground_color) { gchar* tmpStr = gdk_color_to_string(configs.style.foreground_color); TRACE(" foreground_color = %s", tmpStr); g_free(tmpStr); } if (configs.style.background_color) { gchar* tmpStr = gdk_color_to_string(configs.style.background_color); TRACE(" background_color = %s", tmpStr); g_free(tmpStr); } TRACE(" transparency = %f", configs.style.transparency); TRACE(" image_file = %s", configs.style.image_file); TRACE_MSG(""); #endif }
int termit_lua_fill_tab(int tab_index, lua_State* ls) { TERMIT_GET_TAB_BY_INDEX(pTab, tab_index, return 0); lua_newtable(ls); TERMIT_TAB_ADD_STRING("title", pTab->title); TERMIT_TAB_ADD_STRING("command", pTab->argv[0]); TERMIT_TAB_ADD_STRING("argv", ""); // FIXME: add argv TERMIT_TAB_ADD_STRING("encoding", pTab->encoding); gchar* working_dir = termit_get_pid_dir(pTab->pid); TERMIT_TAB_ADD_STRING("workingDir", working_dir); g_free(working_dir); TERMIT_TAB_ADD_NUMBER("pid", pTab->pid); TERMIT_TAB_ADD_STRING("font", pTab->style.font_name); TERMIT_TAB_ADD_NUMBER("fontSize", pango_font_description_get_size(pTab->style.font)/PANGO_SCALE); TERMIT_TAB_ADD_STRING("backspaceBinding", termit_erase_binding_to_string(pTab->bksp_binding)); TERMIT_TAB_ADD_STRING("deleteBinding", termit_erase_binding_to_string(pTab->delete_binding)); return 1; } static int termit_lua_tabs_index(lua_State* ls) { if (lua_isnumber(ls, 1)) { TRACE_MSG("index is not number: skipping"); return 0; } int tab_index = lua_tointeger(ls, -1); TRACE("tab_index:%d", tab_index); return termit_lua_fill_tab(tab_index - 1, ls); }