void set_hyprelink(struct Window *win_data, struct Page *page_data) { #ifdef DETAIL g_debug("! Launch set_hyprelink() with win_data = %p, page_data = %p", win_data, page_data); #endif #ifdef DEFENSIVE if ((win_data==NULL) || (page_data==NULL) || (page_data->vte==NULL)) return; #endif if (win_data->enable_hyperlink && win_data->enable_key_binding) { gint i; for (i=0; i<COMMAND; i++) { #ifdef USE_NEW_VTE_MATCH_ADD_GREGEX GRegex *regex = g_regex_new (command[i].match, G_REGEX_CASELESS | G_REGEX_OPTIMIZE, 0, NULL); page_data->tag[i] = vte_terminal_match_add_gregex (VTE_TERMINAL(page_data->vte), regex, 0); g_regex_unref (regex); #else page_data->tag[i] = vte_terminal_match_add (VTE_TERMINAL(page_data->vte), command[i].match); #endif vte_terminal_match_set_cursor_type(VTE_TERMINAL(page_data->vte), page_data->tag[i], GDK_HAND2); } } else vte_terminal_match_clear_all(VTE_TERMINAL(page_data->vte)); }
void set_hyprelink(struct Window *win_data, struct Page *page_data) { #ifdef DETAIL g_debug("! Launch set_hyprelink() with win_data = %p, page_data = %p", win_data, page_data); #endif #ifdef SAFEMODE if ((win_data==NULL) || (page_data==NULL) || (page_data->vte==NULL)) return; #endif if (win_data->enable_hyperlink && win_data->enable_key_binding) { gint i; for (i=0; i<COMMAND; i++) { gchar *match = (win_data->user_command[i].match_regex_orig)? win_data->user_command[i].match_regex_orig: win_data->user_command[i].match_regex; if ((match == NULL) || (match[0] == '\0')) match = command[i].match; // gchar *regex_str = convert_escape_sequence_to_string(match); // g_debug("set_hyprelink(): match = %s", regex_str); // g_free(regex_str); #ifdef USE_NEW_VTE_MATCH_ADD_GREGEX GRegex *regex = g_regex_new (match, G_REGEX_CASELESS | G_REGEX_OPTIMIZE, 0, NULL); page_data->tag[i] = vte_terminal_match_add_gregex (VTE_TERMINAL(page_data->vte), regex, 0); g_regex_unref (regex); #else page_data->tag[i] = vte_terminal_match_add (VTE_TERMINAL(page_data->vte), match); #endif vte_terminal_match_set_cursor_type(VTE_TERMINAL(page_data->vte), page_data->tag[i], GDK_HAND2); } } else vte_terminal_match_clear_all(VTE_TERMINAL(page_data->vte)); }
static VALUE rg_match_clear_all(VALUE self) { vte_terminal_match_clear_all(_SELF(self)); return self; }
static VALUE term_match_clear_all(VALUE self) { vte_terminal_match_clear_all(RVAL2TERM(self)); return Qnil; }
static VALUE rg_match_clear_all(VALUE self) { vte_terminal_match_clear_all(RVAL2TERM(self)); return self; }