Exemplo n.º 1
0
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));
}
Exemplo n.º 2
0
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));
}
Exemplo n.º 3
0
static VALUE
rg_match_clear_all(VALUE self)
{
    vte_terminal_match_clear_all(_SELF(self));
    return self;
}
Exemplo n.º 4
0
static VALUE
term_match_clear_all(VALUE self)
{
    vte_terminal_match_clear_all(RVAL2TERM(self));
    return Qnil;
}
Exemplo n.º 5
0
static VALUE
rg_match_clear_all(VALUE self)
{
    vte_terminal_match_clear_all(RVAL2TERM(self));
    return self;
}