vte3 2.2.5 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,51 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2006-2011 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #include "rbvte3private.h"
22
-
23
- #define RG_TARGET_NAMESPACE mVte
24
-
25
- void Init_vte3(void);
26
-
27
- void
28
- Init_vte3(void)
29
- {
30
- VALUE RG_TARGET_NAMESPACE;
31
-
32
- RG_TARGET_NAMESPACE = rb_define_module("Vte");
33
-
34
- rb_define_const(RG_TARGET_NAMESPACE, "BUILD_VERSION",
35
- rb_ary_new3(3,
36
- INT2FIX(VTE_MAJOR_VERSION),
37
- INT2FIX(VTE_MINOR_VERSION),
38
- INT2FIX(VTE_MICRO_VERSION)));
39
-
40
- G_DEF_CLASS(VTE_TYPE_TERMINAL_ANTI_ALIAS, "TerminalAntiAlias", RG_TARGET_NAMESPACE);
41
- G_DEF_CLASS(VTE_TYPE_TERMINAL_ERASE_BINDING, "TerminalEraseBinding", RG_TARGET_NAMESPACE);
42
- G_DEF_CLASS(VTE_TYPE_TERMINAL_CURSOR_BLINK_MODE, "TerminalCursorBlinkMode", RG_TARGET_NAMESPACE);
43
- G_DEF_CLASS(VTE_TYPE_TERMINAL_CURSOR_SHAPE, "TerminalCursorShape", RG_TARGET_NAMESPACE);
44
- G_DEF_CLASS(VTE_TYPE_TERMINAL_WRITE_FLAGS, "TerminalWriteFlags", RG_TARGET_NAMESPACE);
45
-
46
- Init_vte_access(RG_TARGET_NAMESPACE);
47
- Init_vte_reaper(RG_TARGET_NAMESPACE);
48
- Init_vte_terminal(RG_TARGET_NAMESPACE);
49
- Init_vte_charattributes(RG_TARGET_NAMESPACE);
50
- Init_vte_pty(RG_TARGET_NAMESPACE);
51
- }
@@ -1,54 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011-2014 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #ifndef __RBVTE3CONVERSIONS_H__
22
- #define __RBVTE3CONVERSIONS_H__
23
-
24
- #define RVAL2VTEPTY(o) (VTE_PTY(RVAL2GOBJ(o)))
25
- #define RVAL2VTETERMINAL(o) (VTE_TERMINAL(RVAL2GOBJ(o)))
26
-
27
- #define RVAL2VTETERMINALCURSORBLINKMODE(o) (RVAL2GENUM(o, VTE_TYPE_TERMINAL_CURSOR_BLINK_MODE))
28
- #define VTETERMINALCURSORBLINKMODE2RVAL(o) (GENUM2RVAL(o, VTE_TYPE_TERMINAL_CURSOR_BLINK_MODE))
29
- #define RVAL2VTETERMINALCURSORSHAPE(o) (RVAL2GENUM(o, VTE_TYPE_TERMINAL_CURSOR_SHAPE))
30
- #define VTETERMINALCURSORSHAPE2RVAL(o) (GENUM2RVAL(o, VTE_TYPE_TERMINAL_CURSOR_SHAPE))
31
- #define RVAL2VTETERMINALERASEBINDING(o) (RVAL2GENUM(o, VTE_TYPE_TERMINAL_ERASE_BINDING))
32
- #define VTETERMINALERASEBINDING2RVAL(o) (GENUM2RVAL(o, VTE_TYPE_TERMINAL_ERASE_BINDING))
33
- #define RVAL2VTETERMINALWRITEFLAGS(o) (RVAL2GENUM(o, VTE_TYPE_TERMINAL_WRITE_FLAGS))
34
- #define VTETERMINALWRITEFLAGS2RVAL(o) (GENUM2RVAL(o, VTE_TYPE_TERMINAL_WRITE_FLAGS))
35
-
36
- #define RVAL2VTEPTYFLAGS(o) (RVAL2GFLAGS(o, VTE_TYPE_PTY_FLAGS))
37
- #define VTEPTYFLAGS2RVAL(o) (GFLAGS2RVAL(o, VTE_TYPE_PTY_FLAGS))
38
-
39
- /* For GIO. They are temporary. They will be needless after Ruby/GDK3
40
- * is based on Ruby/GObjectIntrospection.
41
- */
42
- #define RVAL2GCANCELLABLE(o) (G_CANCELLABLE(RVAL2GOBJ(o)))
43
- #define RVAL2GOUTPUTSTREAM(o) (G_OUTPUT_STREAM(RVAL2GOBJ(o)))
44
-
45
- /* For GDK3. They are temporary. They will be needless after Ruby/GDK3
46
- * is based on Ruby/GObjectIntrospection.
47
- */
48
- #define RVAL2GDKPIXBUF(o) (GDK_PIXBUF(RVAL2GOBJ(o)))
49
- #define RVAL2GDKCOLOR(o) ((GdkColor*)RVAL2BOXED(o, GDK_TYPE_COLOR))
50
- #define GDKCOLOR2RVAL(o) (BOXED2RVAL(o, GDK_TYPE_COLOR))
51
- #define RVAL2GDKCURSOR(o) ((GdkCursor*)RVAL2BOXED(o, GDK_TYPE_CURSOR))
52
- #define RVAL2GDKCURSORTYPE(o) (RVAL2GENUM(o, GDK_TYPE_CURSOR_TYPE))
53
-
54
- #endif /* __RBVTE3CONVERSIONS_H__ */
@@ -1,22 +0,0 @@
1
- #ifndef __RBVTE3PRIVATE_H__
2
- #define __RBVTE3PRIVATE_H__
3
-
4
- #include <vte/vte.h>
5
- #include <vte/vteaccess.h>
6
- #include <vte/reaper.h>
7
-
8
- #include <ruby.h>
9
- #include <rbpango.h>
10
- #include <rbgtk3.h>
11
- #include "rbvte3conversions.h"
12
- #ifndef VTE_CHECK_VERSION
13
- # include "rbvteversion.h"
14
- #endif
15
-
16
- G_GNUC_INTERNAL void Init_vte_access(VALUE mVte);
17
- G_GNUC_INTERNAL void Init_vte_reaper(VALUE mVte);
18
- G_GNUC_INTERNAL void Init_vte_terminal(VALUE mVte);
19
- G_GNUC_INTERNAL void Init_vte_charattributes(VALUE mVte);
20
- G_GNUC_INTERNAL void Init_vte_pty(VALUE mVte);
21
-
22
- #endif
@@ -1,76 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2006-2011 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #include "rbvte3private.h"
22
-
23
- #define RG_TARGET_NAMESPACE cCharAttributes
24
-
25
- static ID id_row, id_column, id_fore, id_back, id_underline, id_strikethrough;
26
-
27
- static VALUE
28
- rg_initialize(VALUE self, VALUE row, VALUE column, VALUE fore, VALUE back,
29
- VALUE underline, VALUE strikethrough)
30
- {
31
- rb_ivar_set(self, id_row, row);
32
- rb_ivar_set(self, id_column, column);
33
- rb_ivar_set(self, id_fore, fore);
34
- rb_ivar_set(self, id_back, back);
35
- rb_ivar_set(self, id_underline, underline);
36
- rb_ivar_set(self, id_strikethrough, strikethrough);
37
- return Qnil;
38
- }
39
-
40
- static VALUE
41
- rg_underline_p(VALUE self)
42
- {
43
- return rb_ivar_get(self, id_underline);
44
- }
45
-
46
- static VALUE
47
- rg_strikethrough_p(VALUE self)
48
- {
49
- return rb_ivar_get(self, id_strikethrough);
50
- }
51
-
52
- void
53
- Init_vte_charattributes(VALUE mVte)
54
- {
55
- VALUE RG_TARGET_NAMESPACE;
56
-
57
- id_row = rb_intern("@row");
58
- id_column = rb_intern("@column");
59
- id_fore = rb_intern("@fore");
60
- id_back = rb_intern("@back");
61
- id_underline = rb_intern("@underline");
62
- id_strikethrough = rb_intern("@strikethrough");
63
-
64
- RG_TARGET_NAMESPACE = rb_define_class_under(mVte, "CharAttributes", rb_cObject);
65
-
66
- RG_DEF_METHOD(initialize, 6);
67
- RG_DEF_ATTR("row", TRUE, FALSE, TRUE);
68
- RG_DEF_ATTR("column", TRUE, FALSE, TRUE);
69
- RG_DEF_ATTR("fore", TRUE, FALSE, TRUE);
70
- RG_DEF_ATTR("back", TRUE, FALSE, TRUE);
71
- RG_DEF_ALIAS("foreground", "fore");
72
- RG_DEF_ALIAS("background", "back");
73
- RG_DEF_METHOD_P(underline, 0);
74
- RG_DEF_METHOD_P(strikethrough, 0);
75
- }
76
-
@@ -1,114 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #include "rbvte3private.h"
22
-
23
- #define RG_TARGET_NAMESPACE cPty
24
- #define _SELF(s) (RVAL2VTEPTY(s))
25
-
26
- static VALUE
27
- rg_initialize(VALUE self, VALUE flags_or_fd)
28
- {
29
- VtePty *pty = NULL;
30
- GError *error = NULL;
31
-
32
- if (TYPE(flags_or_fd) == T_FIXNUM) {
33
- pty = vte_pty_new_foreign(NUM2INT(flags_or_fd), &error);
34
- } else {
35
- pty = vte_pty_new(RVAL2VTEPTYFLAGS(flags_or_fd), &error);
36
- }
37
- if (error)
38
- RAISE_GERROR(error);
39
-
40
- G_INITIALIZE(self, pty);
41
-
42
- return Qnil;
43
- }
44
-
45
- static VALUE
46
- rg_child_setup(VALUE self)
47
- {
48
- vte_pty_child_setup(_SELF(self));
49
-
50
- return self;
51
- }
52
-
53
- static VALUE
54
- rg_close(VALUE self)
55
- {
56
- vte_pty_close(_SELF(self));
57
-
58
- return self;
59
- }
60
-
61
- static VALUE
62
- rg_size(VALUE self)
63
- {
64
- int rows, columns;
65
- gboolean result;
66
- GError *error = NULL;
67
-
68
- result = vte_pty_get_size(_SELF(self), &rows, &columns, &error);
69
- if (error)
70
- RAISE_GERROR(error);
71
-
72
- return rb_ary_new3(2, INT2NUM(rows), INT2NUM(columns));
73
- }
74
-
75
- static VALUE
76
- rg_set_size(VALUE self, VALUE rows, VALUE columns)
77
- {
78
- gboolean result;
79
- GError *error = NULL;
80
-
81
- result = vte_pty_set_size(_SELF(self), NUM2INT(rows), NUM2INT(columns), &error);
82
- if (error)
83
- RAISE_GERROR(error);
84
-
85
- return self;
86
- }
87
-
88
- static VALUE
89
- rg_set_utf8(VALUE self, VALUE utf8)
90
- {
91
- gboolean result;
92
- GError *error = NULL;
93
-
94
- result = vte_pty_set_utf8(_SELF(self), RVAL2CBOOL(utf8), &error);
95
- if (error)
96
- RAISE_GERROR(error);
97
-
98
- return self;
99
- }
100
-
101
- void
102
- Init_vte_pty(VALUE mVte)
103
- {
104
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(VTE_TYPE_PTY, "Pty", mVte);
105
- G_DEF_CLASS(VTE_TYPE_PTY_ERROR, "Error", RG_TARGET_NAMESPACE);
106
- G_DEF_CLASS(VTE_TYPE_PTY_FLAGS, "Flags", RG_TARGET_NAMESPACE);
107
-
108
- RG_DEF_METHOD(initialize, 1);
109
- RG_DEF_METHOD(child_setup, 0);
110
- RG_DEF_METHOD(close, 0);
111
- RG_DEF_METHOD(size, 0);
112
- RG_DEF_METHOD(set_size, 2);
113
- RG_DEF_METHOD(set_utf8, 1);
114
- }
@@ -1,39 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2006-2011 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #include "rbvte3private.h"
22
-
23
- #define RG_TARGET_NAMESPACE cReaper
24
-
25
- static VALUE
26
- rg_s_get(G_GNUC_UNUSED VALUE self)
27
- {
28
- return GOBJ2RVAL(vte_reaper_get());
29
- }
30
-
31
- void
32
- Init_vte_reaper(VALUE mVte)
33
- {
34
- VALUE RG_TARGET_NAMESPACE;
35
-
36
- RG_TARGET_NAMESPACE = G_DEF_CLASS(VTE_TYPE_REAPER, "Reaper", mVte);
37
-
38
- RG_DEF_SMETHOD(get, 0);
39
- }
@@ -1,984 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2006-2011 Ruby-GNOME2 Project Team
4
- *
5
- * This library is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU Lesser General Public
7
- * License as published by the Free Software Foundation; either
8
- * version 2.1 of the License, or (at your option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * Lesser General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library; if not, write to the Free Software
17
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
- * MA 02110-1301 USA
19
- */
20
-
21
- #include "rbvte3private.h"
22
-
23
- #include <stdarg.h>
24
- #include <pwd.h>
25
-
26
- #define RG_TARGET_NAMESPACE cTerminal
27
- #define _SELF(s) (RVAL2VTETERMINAL(s))
28
-
29
- static ID id_new, id_call;
30
-
31
- static char **
32
- rval2cstrary(VALUE ary)
33
- {
34
- long i, len;
35
- char **result;
36
-
37
- if (NIL_P(ary))
38
- return NULL;
39
-
40
- len = RARRAY_LEN(ary);
41
- result = ALLOC_N(char *, len + 1);
42
- for (i = 0; i < len; i++) {
43
- result[i] = g_strdup(RVAL2CSTR(RARRAY_PTR(ary)[i]));
44
- }
45
- result[i] = NULL;
46
-
47
- return result;
48
- }
49
-
50
- static void
51
- free_cstrary(char **ary)
52
- {
53
- long i;
54
-
55
- if (!ary) return;
56
-
57
- for (i = 0; ary[i] != NULL; i++) {
58
- g_free(ary[i]);
59
- }
60
- g_free(ary);
61
- }
62
-
63
- static VALUE
64
- attrary2rval(GArray *attrs)
65
- {
66
- long i, len;
67
- VALUE rb_attrs, rb_class;
68
-
69
- len = attrs->len;
70
- rb_attrs = rb_ary_new2(len);
71
- rb_class = rb_const_get(rb_const_get(rb_cObject, rb_intern("Vte")), rb_intern("CharAttributes"));
72
-
73
- for (i = 0; i < len; i++) {
74
- VteCharAttributes *attr;
75
- attr = &g_array_index(attrs, VteCharAttributes, i);
76
- rb_ary_push(rb_attrs, rb_funcall(rb_class, id_new, 6,
77
- LONG2NUM(attr->row),
78
- LONG2NUM(attr->column),
79
- GDKCOLOR2RVAL(&(attr->fore)),
80
- GDKCOLOR2RVAL(&(attr->back)),
81
- CBOOL2RVAL(attr->underline),
82
- CBOOL2RVAL(attr->strikethrough)));
83
- }
84
-
85
- return rb_attrs;
86
- }
87
-
88
- static VALUE
89
- rg_initialize(VALUE self)
90
- {
91
- RBGTK_INITIALIZE(self, vte_terminal_new());
92
- return Qnil;
93
- }
94
-
95
- static VALUE
96
- fork_command_default_argv(void)
97
- {
98
- struct passwd *pwd;
99
- const char *shell = NULL;
100
-
101
- pwd = getpwuid(getuid());
102
- if (pwd != NULL)
103
- shell = pwd->pw_shell;
104
- if (shell == NULL)
105
- shell = g_getenv("SHELL") ? g_getenv("SHELL") : "/bin/sh";
106
-
107
- return rb_ary_new3(1, CSTR2RVAL(shell));
108
- }
109
-
110
- static VALUE
111
- rg_fork_command(int argc, VALUE *argv, VALUE self)
112
- {
113
- VALUE options, rb_pty_flags, rb_working_directory, rb_command_argv, rb_envv, rb_spawn_flags;
114
- int pty_flags, spawn_flags;
115
- char *working_directory;
116
- char **command_argv;
117
- char **envv;
118
- GPid child_pid;
119
- gboolean result;
120
- GError *error = NULL;
121
-
122
- rb_scan_args(argc, argv, "01", &options);
123
- rbg_scan_options(options,
124
- "pty_flags", &rb_pty_flags,
125
- "working_directory", &rb_working_directory,
126
- "argv", &rb_command_argv,
127
- "envv", &rb_envv,
128
- "spawn_flags", &rb_spawn_flags,
129
- NULL);
130
- pty_flags = NIL_P(rb_pty_flags) ?
131
- VTE_PTY_DEFAULT :
132
- RVAL2VTEPTYFLAGS(rb_pty_flags);
133
- working_directory = RVAL2CSTR_ACCEPT_NIL(rb_working_directory);
134
- command_argv = rval2cstrary(NIL_P(rb_command_argv) ? fork_command_default_argv() : rb_command_argv);
135
- envv = rval2cstrary(rb_envv);
136
- spawn_flags = NIL_P(rb_spawn_flags) ?
137
- G_SPAWN_CHILD_INHERITS_STDIN | G_SPAWN_SEARCH_PATH :
138
- NUM2INT(rb_spawn_flags);
139
-
140
- result = vte_terminal_fork_command_full(_SELF(self),
141
- pty_flags,
142
- working_directory,
143
- command_argv,
144
- envv,
145
- spawn_flags,
146
- NULL,
147
- NULL,
148
- &child_pid,
149
- &error);
150
- free_cstrary(command_argv);
151
- free_cstrary(envv);
152
- if (error)
153
- RAISE_GERROR(error);
154
-
155
- return INT2NUM(child_pid);
156
- }
157
-
158
- static VALUE
159
- rg_feed(VALUE self, VALUE data)
160
- {
161
- glong length;
162
-
163
- length = RSTRING_LEN(data);
164
-
165
- if (length > 0) {
166
- vte_terminal_feed(_SELF(self), RSTRING_PTR(data), length);
167
- }
168
-
169
- return self;
170
- }
171
-
172
- static VALUE
173
- rg_feed_child(VALUE self, VALUE data)
174
- {
175
- glong length;
176
-
177
- length = RSTRING_LEN(data);
178
-
179
- if (length > 0) {
180
- vte_terminal_feed_child(_SELF(self), RSTRING_PTR(data), length);
181
- }
182
-
183
- return self;
184
- }
185
-
186
- static VALUE
187
- rg_feed_child_binary(VALUE self, VALUE data)
188
- {
189
- glong length;
190
-
191
- length = RSTRING_LEN(data);
192
-
193
- if (length > 0) {
194
- vte_terminal_feed_child_binary(_SELF(self),
195
- RSTRING_PTR(data), length);
196
- }
197
-
198
- return self;
199
- }
200
-
201
- static VALUE
202
- rg_copy_clipboard(VALUE self)
203
- {
204
- vte_terminal_copy_clipboard(_SELF(self));
205
- return self;
206
- }
207
-
208
- static VALUE
209
- rg_paste_clipboard(VALUE self)
210
- {
211
- vte_terminal_paste_clipboard(_SELF(self));
212
- return self;
213
- }
214
-
215
- static VALUE
216
- rg_copy_primary(VALUE self)
217
- {
218
- vte_terminal_copy_primary(_SELF(self));
219
- return self;
220
- }
221
-
222
- static VALUE
223
- rg_paste_primary(VALUE self)
224
- {
225
- vte_terminal_paste_primary(_SELF(self));
226
- return self;
227
- }
228
-
229
- static VALUE
230
- rg_set_size(VALUE self, VALUE columns, VALUE rows)
231
- {
232
- vte_terminal_set_size(_SELF(self), NUM2LONG(columns), NUM2LONG(rows));
233
- return self;
234
- }
235
-
236
- static VALUE
237
- rg_set_audible_bell(VALUE self, VALUE is_audible)
238
- {
239
- vte_terminal_set_audible_bell(_SELF(self), RVAL2CBOOL(is_audible));
240
- return self;
241
- }
242
-
243
- static VALUE
244
- rg_audible_bell_p(VALUE self)
245
- {
246
- return CBOOL2RVAL(vte_terminal_get_audible_bell(_SELF(self)));
247
- }
248
-
249
- static VALUE
250
- rg_set_visible_bell(VALUE self, VALUE is_visible)
251
- {
252
- vte_terminal_set_visible_bell(_SELF(self), RVAL2CBOOL(is_visible));
253
- return self;
254
- }
255
-
256
- static VALUE
257
- rg_visible_bell_p(VALUE self)
258
- {
259
- return CBOOL2RVAL(vte_terminal_get_visible_bell(_SELF(self)));
260
- }
261
-
262
- static VALUE
263
- rg_set_scroll_background(VALUE self, VALUE scroll)
264
- {
265
- vte_terminal_set_scroll_background(_SELF(self), RVAL2CBOOL(scroll));
266
- return self;
267
- }
268
-
269
- static VALUE
270
- rg_set_scroll_on_output(VALUE self, VALUE scroll)
271
- {
272
- vte_terminal_set_scroll_on_output(_SELF(self), RVAL2CBOOL(scroll));
273
- return self;
274
- }
275
-
276
- static VALUE
277
- rg_set_scroll_on_keystroke(VALUE self, VALUE scroll)
278
- {
279
- vte_terminal_set_scroll_on_keystroke(_SELF(self), RVAL2CBOOL(scroll));
280
- return self;
281
- }
282
-
283
- #if VTE_CHECK_VERSION(0, 36, 0)
284
- static VALUE
285
- rg_rewrap_on_resize_p(VALUE self)
286
- {
287
- return CBOOL2RVAL(vte_terminal_get_rewrap_on_resize(_SELF(self)));
288
- }
289
-
290
- static VALUE
291
- rg_set_rewrap_on_resize(VALUE self, VALUE rewrap)
292
- {
293
- vte_terminal_set_rewrap_on_resize(_SELF(self), RVAL2CBOOL(rewrap));
294
- return self;
295
- }
296
- #endif
297
-
298
- static VALUE
299
- rg_set_color_dim(VALUE self, VALUE dim)
300
- {
301
- vte_terminal_set_color_dim(_SELF(self), RVAL2GDKCOLOR(dim));
302
- return self;
303
- }
304
-
305
- static VALUE
306
- rg_set_color_bold(VALUE self, VALUE bold)
307
- {
308
- vte_terminal_set_color_bold(_SELF(self), RVAL2GDKCOLOR(bold));
309
- return self;
310
- }
311
-
312
- static VALUE
313
- rg_set_color_foreground(VALUE self, VALUE foreground)
314
- {
315
- vte_terminal_set_color_foreground(_SELF(self), RVAL2GDKCOLOR(foreground));
316
- return self;
317
- }
318
-
319
- static VALUE
320
- rg_set_color_background(VALUE self, VALUE background)
321
- {
322
- vte_terminal_set_color_background(_SELF(self), RVAL2GDKCOLOR(background));
323
- return self;
324
- }
325
-
326
- static VALUE
327
- rg_set_color_cursor(VALUE self, VALUE cursor)
328
- {
329
- vte_terminal_set_color_cursor(_SELF(self),
330
- NIL_P(cursor) ? NULL : RVAL2GDKCOLOR(cursor));
331
- return self;
332
- }
333
-
334
- static VALUE
335
- rg_set_color_highlight(VALUE self, VALUE highlight)
336
- {
337
- vte_terminal_set_color_highlight(_SELF(self),
338
- NIL_P(highlight) ?
339
- NULL : RVAL2GDKCOLOR(highlight));
340
- return self;
341
- }
342
-
343
- static VALUE
344
- rg_set_colors(VALUE self, VALUE foreground, VALUE background,
345
- VALUE rb_palette)
346
- {
347
- glong i, len;
348
- GdkColor *palette;
349
-
350
- len = RARRAY_LEN(rb_palette);
351
-
352
- if (!(len == 0 || len == 8 || len == 16 || len == 24)) {
353
- char *inspect;
354
- inspect = RVAL2CSTR(rb_palette);
355
- rb_raise(rb_eArgError, "palette size must be 0, 8, 16 or 24: %s",
356
- inspect);
357
- }
358
-
359
- palette = ALLOCA_N(GdkColor, len);
360
- for (i = 0; i < len; i++) {
361
- GdkColor *color;
362
- color = RVAL2GDKCOLOR(RARRAY_PTR(rb_palette)[i]);
363
- palette[i] = *color;
364
- }
365
-
366
- vte_terminal_set_colors(_SELF(self), RVAL2GDKCOLOR(foreground),
367
- RVAL2GDKCOLOR(background), palette, len);
368
- return self;
369
- }
370
-
371
- static VALUE
372
- rg_set_default_colors(VALUE self)
373
- {
374
- vte_terminal_set_default_colors(_SELF(self));
375
- return self;
376
- }
377
-
378
- static VALUE
379
- rg_set_background_image(VALUE self, VALUE image_or_path)
380
- {
381
- if (RVAL2CBOOL(rb_obj_is_kind_of(image_or_path, rb_cString))) {
382
- vte_terminal_set_background_image_file(_SELF(self),
383
- RVAL2CSTR(image_or_path));
384
- } else {
385
- vte_terminal_set_background_image(_SELF(self),
386
- RVAL2GDKPIXBUF(image_or_path));
387
- }
388
-
389
- return self;
390
- }
391
-
392
- static VALUE
393
- rg_set_background_tint_color(VALUE self, VALUE color)
394
- {
395
- vte_terminal_set_background_tint_color(_SELF(self), RVAL2GDKCOLOR(color));
396
- return self;
397
- }
398
-
399
- static VALUE
400
- rg_set_background_saturation(VALUE self, VALUE saturation)
401
- {
402
- vte_terminal_set_background_saturation(_SELF(self),
403
- NUM2DBL(saturation));
404
- return self;
405
- }
406
-
407
- static VALUE
408
- rg_set_background_transparent(VALUE self, VALUE transparent)
409
- {
410
- vte_terminal_set_background_transparent(_SELF(self),
411
- RVAL2CBOOL(transparent));
412
- return self;
413
- }
414
-
415
- static VALUE
416
- rg_set_cursor_blinks(VALUE self, VALUE blink)
417
- {
418
- VteTerminalCursorBlinkMode mode;
419
-
420
- mode = RVAL2CBOOL(blink) ? VTE_CURSOR_BLINK_ON : VTE_CURSOR_BLINK_OFF;
421
- vte_terminal_set_cursor_blink_mode(_SELF(self), mode);
422
- return self;
423
- }
424
-
425
- static VALUE
426
- rg_set_cursor_blink_mode(VALUE self, VALUE rb_mode)
427
- {
428
- VteTerminalCursorBlinkMode mode;
429
-
430
- mode = RVAL2VTETERMINALCURSORBLINKMODE(rb_mode);
431
- vte_terminal_set_cursor_blink_mode(_SELF(self), mode);
432
- return self;
433
- }
434
-
435
- static VALUE
436
- rg_cursor_blink_mode(VALUE self)
437
- {
438
- VteTerminalCursorBlinkMode mode;
439
-
440
- mode = vte_terminal_get_cursor_blink_mode(_SELF(self));
441
- return VTETERMINALCURSORBLINKMODE2RVAL(mode);
442
- }
443
-
444
- static VALUE
445
- rg_set_cursor_shape(VALUE self, VALUE rb_shape)
446
- {
447
- VteTerminalCursorShape shape;
448
-
449
- shape = RVAL2VTETERMINALCURSORSHAPE(rb_shape);
450
- vte_terminal_set_cursor_shape(_SELF(self), shape);
451
- return self;
452
- }
453
-
454
- static VALUE
455
- rg_cursor_shape(VALUE self)
456
- {
457
- VteTerminalCursorShape shape;
458
-
459
- shape = vte_terminal_get_cursor_shape(_SELF(self));
460
- return VTETERMINALCURSORSHAPE2RVAL(shape);
461
- }
462
-
463
- static VALUE
464
- rg_child_exit_status(VALUE self)
465
- {
466
- return INT2NUM(vte_terminal_get_child_exit_status(_SELF(self)));
467
- }
468
-
469
- static VALUE
470
- rg_set_scrollback_lines(VALUE self, VALUE lines)
471
- {
472
- vte_terminal_set_scrollback_lines(_SELF(self), NUM2LONG(lines));
473
- return self;
474
- }
475
-
476
- static VALUE
477
- rg_im_append_menuitems(VALUE self, VALUE menushell)
478
- {
479
- vte_terminal_im_append_menuitems(_SELF(self), RVAL2GTKMENUSHELL(menushell));
480
- return self;
481
- }
482
-
483
- static VALUE
484
- rg_set_font(VALUE self, VALUE desc_or_name)
485
- {
486
- if (rb_obj_is_kind_of(desc_or_name, rb_cString)) {
487
- vte_terminal_set_font_from_string(_SELF(self), RVAL2CSTR(desc_or_name));
488
- } else {
489
- vte_terminal_set_font(_SELF(self), RVAL2PANGOFONTDESCRIPTION(desc_or_name));
490
- }
491
-
492
- return self;
493
- }
494
-
495
- static VALUE
496
- rg_font(VALUE self)
497
- {
498
- PangoFontDescription *font_desc;
499
- font_desc = (PangoFontDescription *)vte_terminal_get_font(_SELF(self));
500
- return PANGOFONTDESCRIPTION2RVAL(font_desc);
501
- }
502
-
503
- static VALUE
504
- rg_set_allow_bold(VALUE self, VALUE allow_bold)
505
- {
506
- vte_terminal_set_allow_bold(_SELF(self), RVAL2CBOOL(allow_bold));
507
- return self;
508
- }
509
-
510
- static VALUE
511
- rg_allow_bold_p(VALUE self)
512
- {
513
- return CBOOL2RVAL(vte_terminal_get_allow_bold(_SELF(self)));
514
- }
515
-
516
- static VALUE
517
- rg_has_selection_p(VALUE self)
518
- {
519
- return CBOOL2RVAL(vte_terminal_get_has_selection(_SELF(self)));
520
- }
521
-
522
- static VALUE
523
- rg_set_word_chars(VALUE self, VALUE word_chars)
524
- {
525
- vte_terminal_set_word_chars(_SELF(self), RVAL2CSTR_ACCEPT_NIL(word_chars));
526
- return self;
527
- }
528
-
529
- static VALUE
530
- rg_word_char_p(VALUE self, VALUE c)
531
- {
532
- return CBOOL2RVAL(vte_terminal_is_word_char(_SELF(self), NUM2UINT(c)));
533
- }
534
-
535
- static VALUE
536
- rg_set_backspace_binding(VALUE self, VALUE binding)
537
- {
538
- vte_terminal_set_backspace_binding(_SELF(self), RVAL2VTETERMINALERASEBINDING(binding));
539
- return self;
540
- }
541
-
542
- static VALUE
543
- rg_set_delete_binding(VALUE self, VALUE binding)
544
- {
545
- vte_terminal_set_delete_binding(_SELF(self), RVAL2VTETERMINALERASEBINDING(binding));
546
- return self;
547
- }
548
-
549
- static VALUE
550
- rg_mouse_autohide_p(VALUE self)
551
- {
552
- return CBOOL2RVAL(vte_terminal_get_mouse_autohide(_SELF(self)));
553
- }
554
-
555
- static VALUE
556
- rg_set_mouse_autohide(VALUE self, VALUE setting)
557
- {
558
- vte_terminal_set_mouse_autohide(_SELF(self), RVAL2CBOOL(setting));
559
- return self;
560
- }
561
-
562
- static VALUE
563
- rg_reset(VALUE self, VALUE full, VALUE clear_history)
564
- {
565
- vte_terminal_reset(_SELF(self), RVAL2CBOOL(full),
566
- RVAL2CBOOL(clear_history));
567
- return self;
568
- }
569
-
570
- static gboolean
571
- term_is_selected_cb(VteTerminal *terminal, glong column, glong row,
572
- gpointer data)
573
- {
574
- gboolean result = TRUE;
575
- VALUE callback = (VALUE)data;
576
-
577
- if (!NIL_P(callback)) {
578
- VALUE rb_result;
579
- rb_result = rb_funcall(callback, id_call, 3, GOBJ2RVAL(terminal),
580
- LONG2NUM(column), LONG2NUM(row));
581
- result = RVAL2CBOOL(rb_result);
582
- }
583
-
584
- return result;
585
- }
586
-
587
- static VALUE
588
- rg_get_text(int argc, VALUE *argv, VALUE self)
589
- {
590
- VALUE get_attrs, include_trailing_spaces, proc, rb_text;
591
- GArray *attrs = NULL;
592
- char *text;
593
-
594
- rb_scan_args(argc, argv, "02&", &get_attrs,
595
- &include_trailing_spaces, &proc);
596
-
597
- if (get_attrs != Qfalse)
598
- attrs = g_array_new(FALSE, TRUE, sizeof(VteCharAttributes));
599
-
600
- if (RVAL2CBOOL(include_trailing_spaces)) {
601
- text = vte_terminal_get_text_include_trailing_spaces(
602
- _SELF(self), term_is_selected_cb, (gpointer)proc, attrs);
603
- } else {
604
- text = vte_terminal_get_text(_SELF(self), term_is_selected_cb,
605
- (gpointer)proc, attrs);
606
- }
607
- rb_text = CSTR2RVAL(text);
608
- free(text);
609
-
610
- if (attrs) {
611
- VALUE rb_attrs;
612
- rb_attrs = attrary2rval(attrs);
613
- g_array_free(attrs, TRUE);
614
- return rb_ary_new3(2, rb_text, rb_attrs);
615
- } else {
616
- return rb_text;
617
- }
618
- }
619
-
620
- static VALUE
621
- rg_get_text_range(int argc, VALUE *argv, VALUE self)
622
- {
623
- VALUE start_row, start_col, end_row, end_col, get_attrs, proc, rb_text;
624
- GArray *attrs = NULL;
625
- char *text;
626
-
627
- rb_scan_args(argc, argv, "41&", &start_row, &start_col,
628
- &end_row, &end_col, &get_attrs, &proc);
629
-
630
- if (get_attrs != Qfalse)
631
- attrs = g_array_new(FALSE, TRUE, sizeof(VteCharAttributes));
632
-
633
- text = vte_terminal_get_text_range(_SELF(self),
634
- NUM2LONG(start_row),
635
- NUM2LONG(start_col),
636
- NUM2LONG(end_row),
637
- NUM2LONG(end_col),
638
- term_is_selected_cb,
639
- (gpointer)proc,
640
- attrs);
641
- rb_text = CSTR2RVAL(text);
642
- free(text);
643
-
644
- if (attrs) {
645
- VALUE rb_attrs;
646
- rb_attrs = attrary2rval(attrs);
647
- g_array_free(attrs, TRUE);
648
- return rb_ary_new3(2, rb_text, rb_attrs);
649
- } else {
650
- return rb_text;
651
- }
652
- }
653
-
654
- static VALUE
655
- rg_cursor_position(VALUE self)
656
- {
657
- glong column, row;
658
- vte_terminal_get_cursor_position(_SELF(self), &column, &row);
659
- return rb_ary_new3(2, LONG2NUM(column), LONG2NUM(row));
660
- }
661
-
662
- static VALUE
663
- rg_match_clear_all(VALUE self)
664
- {
665
- vte_terminal_match_clear_all(_SELF(self));
666
- return self;
667
- }
668
-
669
- static VALUE
670
- rg_match_add(VALUE self, VALUE match)
671
- {
672
- return INT2NUM(vte_terminal_match_add(_SELF(self), RVAL2CSTR(match)));
673
- }
674
-
675
- static VALUE
676
- rg_match_set_cursor(VALUE self, VALUE tag, VALUE cursor)
677
- {
678
- if (NIL_P(cursor) || RVAL2GTYPE(cursor) == GDK_TYPE_CURSOR) {
679
- vte_terminal_match_set_cursor(_SELF(self), NUM2INT(tag), RVAL2GDKCURSOR(cursor));
680
- } else if (RVAL2GTYPE(cursor) == GDK_TYPE_CURSOR_TYPE) {
681
- vte_terminal_match_set_cursor_type(_SELF(self), NUM2INT(tag), RVAL2GDKCURSORTYPE(cursor));
682
- } else {
683
- vte_terminal_match_set_cursor_name(_SELF(self), NUM2INT(tag), RVAL2CSTR(cursor));
684
- }
685
-
686
- return self;
687
- }
688
-
689
- static VALUE
690
- rg_match_remove(VALUE self, VALUE tag)
691
- {
692
- vte_terminal_match_remove(_SELF(self), NUM2INT(tag));
693
- return self;
694
- }
695
-
696
- static VALUE
697
- rg_match_check(VALUE self, VALUE column, VALUE row)
698
- {
699
- char *string;
700
- int tag;
701
-
702
- string = vte_terminal_match_check(_SELF(self), NUM2LONG(column),
703
- NUM2LONG(row), &tag);
704
- if (string) {
705
- VALUE rb_string;
706
- rb_string = CSTR2RVAL(string);
707
- free(string);
708
- return rb_ary_new3(2, rb_string, INT2NUM(tag));
709
- } else {
710
- return Qnil;
711
- }
712
- }
713
-
714
- static VALUE
715
- rg_default_emulation(VALUE self)
716
- {
717
- return CSTR2RVAL(vte_terminal_get_default_emulation(_SELF(self)));
718
- }
719
-
720
- static VALUE
721
- rg_status_line(VALUE self)
722
- {
723
- return CSTR2RVAL(vte_terminal_get_status_line(_SELF(self)));
724
- }
725
-
726
- static VALUE
727
- rg_adjustment(VALUE self)
728
- {
729
- return GOBJ2RVAL(vte_terminal_get_adjustment(_SELF(self)));
730
- }
731
-
732
- static VALUE
733
- rg_char_width(VALUE self)
734
- {
735
- return LONG2NUM(vte_terminal_get_char_width(_SELF(self)));
736
- }
737
-
738
- static VALUE
739
- rg_char_height(VALUE self)
740
- {
741
- return LONG2NUM(vte_terminal_get_char_height(_SELF(self)));
742
- }
743
-
744
- static VALUE
745
- rg_row_count(VALUE self)
746
- {
747
- return LONG2NUM(vte_terminal_get_row_count(_SELF(self)));
748
- }
749
-
750
- static VALUE
751
- rg_column_count(VALUE self)
752
- {
753
- return LONG2NUM(vte_terminal_get_column_count(_SELF(self)));
754
- }
755
-
756
- static VALUE
757
- rg_window_title(VALUE self)
758
- {
759
- return CSTR2RVAL(vte_terminal_get_window_title(_SELF(self)));
760
- }
761
-
762
- static VALUE
763
- rg_icon_title(VALUE self)
764
- {
765
- return CSTR2RVAL(vte_terminal_get_icon_title(_SELF(self)));
766
- }
767
-
768
- static VALUE
769
- rg_pty_new(VALUE self, VALUE flags)
770
- {
771
- VtePty *result;
772
- GError *error = NULL;
773
-
774
- result = vte_terminal_pty_new(_SELF(self), RVAL2VTEPTYFLAGS(flags), &error);
775
- if (error)
776
- RAISE_GERROR(error);
777
-
778
- return GOBJ2RVAL(result);
779
- }
780
-
781
- static VALUE
782
- rg_search_find_next(VALUE self)
783
- {
784
- gboolean result;
785
-
786
- result = vte_terminal_search_find_next(_SELF(self));
787
-
788
- return CBOOL2RVAL(result);
789
- }
790
-
791
- static VALUE
792
- rg_search_find_previous(VALUE self)
793
- {
794
- gboolean result;
795
-
796
- result = vte_terminal_search_find_previous(_SELF(self));
797
-
798
- return CBOOL2RVAL(result);
799
- }
800
-
801
- static VALUE
802
- rg_search_get_wrap_around_p(VALUE self)
803
- {
804
- gboolean result;
805
-
806
- result = vte_terminal_search_get_wrap_around(_SELF(self));
807
-
808
- return CBOOL2RVAL(result);
809
- }
810
-
811
- static VALUE
812
- rg_search_set_wrap_around(VALUE self, VALUE wrap_around)
813
- {
814
- vte_terminal_search_set_wrap_around(_SELF(self), RVAL2CBOOL(wrap_around));
815
-
816
- return self;
817
- }
818
-
819
- static VALUE
820
- rg_select_all(VALUE self)
821
- {
822
- vte_terminal_select_all(_SELF(self));
823
-
824
- return self;
825
- }
826
-
827
- static VALUE
828
- rg_select_none(VALUE self)
829
- {
830
- vte_terminal_select_none(_SELF(self));
831
-
832
- return self;
833
- }
834
-
835
- static VALUE
836
- rg_set_opacity(VALUE self, VALUE opacity)
837
- {
838
- vte_terminal_set_opacity(_SELF(self), NUM2UINT(opacity));
839
-
840
- return self;
841
- }
842
-
843
- static VALUE
844
- rg_watch_child(VALUE self, VALUE child_pid)
845
- {
846
- vte_terminal_watch_child(_SELF(self), NUM2INT(child_pid));
847
-
848
- return self;
849
- }
850
-
851
- static VALUE
852
- rg_write_contents(int argc, VALUE *argv, VALUE self)
853
- {
854
- VALUE stream, flags, rb_cancellable;
855
- GCancellable *cancellable;
856
- gboolean result;
857
- GError *error = NULL;
858
-
859
- rb_scan_args(argc, argv, "21", &stream, &flags, &rb_cancellable);
860
- cancellable = NIL_P(rb_cancellable) ? NULL : RVAL2GCANCELLABLE(rb_cancellable);
861
-
862
- result = vte_terminal_write_contents(_SELF(self),
863
- RVAL2GOUTPUTSTREAM(stream),
864
- RVAL2VTETERMINALWRITEFLAGS(flags),
865
- cancellable,
866
- &error);
867
- if (error)
868
- RAISE_GERROR(error);
869
-
870
- return CBOOL2RVAL(result);
871
- }
872
-
873
- void
874
- Init_vte_terminal(VALUE mVte)
875
- {
876
- VALUE RG_TARGET_NAMESPACE;
877
-
878
- id_new = rb_intern("new");
879
- id_call = rb_intern("call");
880
-
881
- RG_TARGET_NAMESPACE = G_DEF_CLASS(VTE_TYPE_TERMINAL, "Terminal", mVte);
882
-
883
- G_DEF_CLASS(VTE_TYPE_TERMINAL_ERASE_BINDING, "EraseBinding", RG_TARGET_NAMESPACE);
884
- G_DEF_CLASS(VTE_TYPE_TERMINAL_CURSOR_BLINK_MODE, "CursorBlinkMode", RG_TARGET_NAMESPACE);
885
- G_DEF_CLASS(VTE_TYPE_TERMINAL_CURSOR_SHAPE, "CursorShape", RG_TARGET_NAMESPACE);
886
- G_DEF_CLASS(VTE_TYPE_TERMINAL_WRITE_FLAGS, "WriteFlags", RG_TARGET_NAMESPACE);
887
-
888
- RG_DEF_METHOD(initialize, 0);
889
-
890
- RG_DEF_METHOD(fork_command, -1);
891
-
892
- RG_DEF_METHOD(feed, 1);
893
- RG_DEF_METHOD(feed_child, 1);
894
- RG_DEF_METHOD(feed_child_binary, 1);
895
-
896
- RG_DEF_METHOD(copy_clipboard, 0);
897
- RG_DEF_METHOD(paste_clipboard, 0);
898
- RG_DEF_METHOD(copy_primary, 0);
899
- RG_DEF_METHOD(paste_primary, 0);
900
-
901
- RG_DEF_METHOD(set_size, 2);
902
-
903
- RG_DEF_METHOD(set_audible_bell, 1);
904
- RG_DEF_METHOD_P(audible_bell, 0);
905
- RG_DEF_METHOD(set_visible_bell, 1);
906
- RG_DEF_METHOD_P(visible_bell, 0);
907
-
908
- RG_DEF_METHOD(set_scroll_background, 1);
909
- RG_DEF_METHOD(set_scroll_on_output, 1);
910
- RG_DEF_METHOD(set_scroll_on_keystroke, 1);
911
-
912
- #if VTE_CHECK_VERSION(0, 36, 0)
913
- RG_DEF_METHOD_P(rewrap_on_resize, 0);
914
- RG_REPLACE_SET_PROPERTY(rewrap_on_resize, 1);
915
- #endif
916
-
917
- RG_DEF_METHOD(set_color_dim, 1);
918
- RG_DEF_METHOD(set_color_bold, 1);
919
- RG_DEF_METHOD(set_color_foreground, 1);
920
- RG_DEF_METHOD(set_color_background, 1);
921
- RG_DEF_METHOD(set_color_cursor, 1);
922
- RG_DEF_METHOD(set_color_highlight, 1);
923
- RG_DEF_METHOD(set_colors, 3);
924
- RG_DEF_METHOD(set_default_colors, 0);
925
- RG_DEF_METHOD(set_background_image, 1);
926
- RG_DEF_METHOD(set_background_tint_color, 1);
927
- RG_DEF_METHOD(set_background_saturation, 1);
928
- RG_DEF_METHOD(set_background_transparent, 1);
929
- RG_DEF_METHOD(set_cursor_blinks, 1);
930
- RG_DEF_METHOD(set_cursor_blink_mode, 1);
931
- RG_DEF_METHOD(cursor_blink_mode, 0);
932
- RG_DEF_METHOD(set_cursor_shape, 1);
933
- RG_DEF_METHOD(cursor_shape, 0);
934
- RG_DEF_METHOD(child_exit_status, 0);
935
- RG_DEF_METHOD(set_scrollback_lines, 1);
936
-
937
- RG_DEF_METHOD(im_append_menuitems, 1);
938
-
939
- RG_DEF_METHOD(set_font, 1);
940
- RG_DEF_METHOD(font, 0);
941
- RG_DEF_METHOD(set_allow_bold, 1);
942
- RG_DEF_METHOD_P(allow_bold, 0);
943
- RG_DEF_METHOD_P(has_selection, 0);
944
- RG_DEF_ALIAS("have_selection?", "has_selection?");
945
- RG_DEF_METHOD(set_word_chars, 1);
946
- RG_DEF_METHOD_P(word_char, 1);
947
- RG_DEF_METHOD(set_backspace_binding, 1);
948
- RG_DEF_METHOD(set_delete_binding, 1);
949
- RG_DEF_METHOD_P(mouse_autohide, 0);
950
- RG_DEF_METHOD(set_mouse_autohide, 1);
951
-
952
- RG_DEF_METHOD(reset, 2);
953
-
954
- RG_DEF_METHOD(get_text, -1);
955
- RG_DEF_METHOD(get_text_range, -1);
956
-
957
- RG_DEF_METHOD(cursor_position, 0);
958
-
959
- RG_DEF_METHOD(match_clear_all, 0);
960
- RG_DEF_METHOD(match_add, 1);
961
- RG_DEF_METHOD(match_set_cursor, 2);
962
- RG_DEF_METHOD(match_remove, 1);
963
- RG_DEF_METHOD(match_check, 2);
964
- RG_DEF_METHOD(default_emulation, 0);
965
- RG_DEF_METHOD(status_line, 0);
966
- RG_DEF_METHOD(adjustment, 0);
967
- RG_DEF_METHOD(char_width, 0);
968
- RG_DEF_METHOD(char_height, 0);
969
- RG_DEF_METHOD(row_count, 0);
970
- RG_DEF_METHOD(column_count, 0);
971
- RG_DEF_METHOD(window_title, 0);
972
- RG_DEF_METHOD(icon_title, 0);
973
- RG_DEF_METHOD(pty_new, 1);
974
- RG_DEF_METHOD(search_find_next, 0);
975
- RG_DEF_METHOD(search_find_previous, 0);
976
- RG_DEF_METHOD_P(search_get_wrap_around, 0);
977
- RG_DEF_METHOD(search_set_wrap_around, 1);
978
- RG_DEF_ALIAS("search_wrap_around=", "search_set_wrap_around");
979
- RG_DEF_METHOD(select_all, 0);
980
- RG_DEF_METHOD(select_none, 0);
981
- RG_DEF_METHOD(set_opacity, 1);
982
- RG_DEF_METHOD(watch_child, 1);
983
- RG_DEF_METHOD(write_contents, -1);
984
- }