Added termite and vte with termite-patch from eroen

This commit is contained in:
Austen Adler 2016-02-11 14:04:59 -05:00
parent f8ec54d146
commit 0b3752f290
23 changed files with 1335 additions and 0 deletions

6
x11-libs/vte/Manifest Normal file
View File

@ -0,0 +1,6 @@
DIST vte-0.34.2.tar.xz 981688 SHA256 f40f9fe0bcc6d65bc44b2fab5469b56a9f0631132c6b90e06053e421711159cf SHA512 4a89f149e9c101ed31b76086de1a05287d9c2a750ee098792fa9508b8712fa065a63e60d50cfb4a060991c2f6f182ddb91d3f21d4c7baf61337f08dc1a960a35 WHIRLPOOL b630b71cc873b933ec7ffd842b2a346092f3086936626ec4dcfadb7eaa8c474f3a9539e3932f16aa7f900f5e9cbdc8e8ceaed6fbac2247aebabd73451748d236
DIST vte-0.34.9.tar.xz 996756 SHA256 6f38c5edf57d0a5b870c4e5e210731cccfb4899d0856ba7a3dc599f2ba6e23e1 SHA512 57fff7d5916bcd8a8a13e3cf050f85ed78e9154fdf2510a6d6f594f938c6d56f512089c6bc3e06c9123d35d17f2eb3b3814a5407635027ec0116c25f73034688 WHIRLPOOL 2caf90fdbce7baaf6038c0fda674577724ace354e63b8a6977e46b7f2cea8860f1a687cf34d4e10c4b08eeb666f6c62c42c0f5cfb0c55498fcc44cf44c9570d8
DIST vte-0.36.2.tar.xz 1009160 SHA256 f45eed3aed823068c7563345ea947be0e6ddb3dacd74646e6d7d26a921e04345 SHA512 fafd368b95918024e6324c81f4fa6c35ad15138ad44af2f92164492d9773b127202d11824c9def4a26e17de44336f42e9c8906330dd300795c280ca068381632 WHIRLPOOL 034b6879131d2535e21a8a97e571753e250f98e01ef334d639038a0638fc0a6d214a267267f11822c30919629edaabc6f6a66a366a9b506ae57e2d4674efa724
DIST vte-0.36.3.tar.xz 1013412 SHA256 54e5b07be3c0f7b158302f54ee79d4de1cb002f4259b6642b79b1e0e314a959c SHA512 9e0c4e60c5a271720d7b480c9618069752faec6c310cc2477e67cdb1c3e961f6981d39c9116716739390dc8e4bab9bf06cf6c5d7d2546062e48523f85d731c77 WHIRLPOOL 0c582f50a07b9a55e8e7b16ae371b913348e8f93fc50ff734ea04a481a5e1ca30ebf3c3781dcd20fd340f50b34cd8f516de76ca59093f3952f23b99a5b30ddca
DIST vte-0.36.4.tar.xz 1012848 SHA256 aa549b114c80e18791b57031e5c1714aeb4a104405e3ba78dfd4ac374a71e2a1 SHA512 97bb226abaf2100a21856040039640005809eae647432c03a33eb691c8b0a29c13bd8cf824790c2a6360356c8c5d1b61c48b4a7893c7f0a8d3678b1a0914aa31 WHIRLPOOL d1294540c67e3253b166dc351b68534d9f36b1306449e2a319705cafe0317452e3bbe1768fdc30523f85270c2b949b9d9cf606695989968da4a099355413904c
DIST vte-0.40.2.tar.xz 923852 SHA256 9b68fbc16b27f2d79e6271f2b0708808594ac5acf979d0fccea118608199fd2d SHA512 06d1c9a34e8e82e1bd54810d245d908ebb837538ba19fbaabe683cdf3b96b7cb1630516ddeabf18b0294922b8d98d2b9a2f5028c171fac2ad913974d94555eb2 WHIRLPOOL 2499e01c2b0d38645b61d4c0a1814d7a3196df6d300577380f1e622c06a974a4cd0d9799fff35f1b0680603aa3a0be38730991ace83df90bfb265009873c5858

View File

@ -0,0 +1,74 @@
From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Tue, 15 Nov 2011 03:06:40 -0500
Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2
compatibility
Also, since VTE_META_MASK is now a mask with multiple bits set, code that
compares gdk key modifiers to VTE_META_MASK by numerical equality is no
longer guaranteed to work. Therefore, for such comparisons a new function,
vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits
matching matching VTE_META_MASK are set, then all are set.
https://bugzilla.gnome.org/show_bug.cgi?id=663779
---
src/keymap.c | 15 +++++++++++++--
src/keymap.h | 2 +-
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/src/keymap.c b/src/keymap.c
index 9a21669..95b4c5b 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -990,6 +990,17 @@ static const struct _vte_keymap_group {
{GDK_KEY (F35), _vte_keymap_GDK_F35},
};
+/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK,
+ * despite being a compound mask, is treated as indivisible. */
+GdkModifierType
+_vte_keymap_fixup_modifiers(GdkModifierType modifiers,
+ GdkModifierType mask)
+{
+ if (modifiers & VTE_META_MASK)
+ modifiers |= VTE_META_MASK;
+ return modifiers & mask;
+}
+
/* Map the specified keyval/modifier setup, dependent on the mode, to either
* a literal string or a capability name. */
void
@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval,
} else {
fkey_mode = fkey_default;
}
- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
+ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
/* Search for the conditions. */
for (i = 0; entries[i].normal_length || entries[i].special[0]; i++)
@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval,
return;
}
- switch (modifiers & significant_modifiers) {
+ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) {
case 0:
modifier = 0;
break;
diff --git a/src/keymap.h b/src/keymap.h
index 243e22e..21d9b8e 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -27,7 +27,7 @@
G_BEGIN_DECLS
-#define VTE_META_MASK GDK_META_MASK
+#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK)
#define VTE_NUMLOCK_MASK GDK_MOD2_MASK
/* Map the specified keyval/modifier setup, dependent on the mode, to either
--
1.7.8.rc3

View File

@ -0,0 +1,214 @@
diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
--- vte-0.32.2-old/src/vte.c 2012-07-13 21:09:04.003969877 -0400
+++ vte-0.32.2/src/vte.c 2012-08-30 04:30:04.285924831 -0400
@@ -129,7 +129,6 @@
gpointer data,
GArray *attributes,
gboolean include_trailing_spaces);
-static void _vte_terminal_disconnect_pty_read(VteTerminal *terminal);
static void _vte_terminal_disconnect_pty_write(VteTerminal *terminal);
static void vte_terminal_stop_processing (VteTerminal *terminal);
@@ -3508,8 +3507,8 @@
_vte_debug_print (VTE_DEBUG_IO, "removed poll of vte_terminal_io_read\n");
terminal->pvt->pty_input_source = 0;
}
-static void
-_vte_terminal_connect_pty_read(VteTerminal *terminal)
+void
+vte_terminal_connect_pty_read(VteTerminal *terminal)
{
if (terminal->pvt->pty_channel == NULL) {
return;
@@ -3560,8 +3559,8 @@
}
}
-static void
-_vte_terminal_disconnect_pty_read(VteTerminal *terminal)
+void
+vte_terminal_disconnect_pty_read(VteTerminal *terminal)
{
if (terminal->pvt->pty_input_source != 0) {
_vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n");
@@ -3708,8 +3707,8 @@
return NULL;
}
-static char *
-_vte_terminal_get_user_shell_with_fallback (void)
+char *
+vte_terminal_get_user_shell_with_fallback (void)
{
char *command;
const gchar *env;
@@ -3744,7 +3743,7 @@
char **argv2;
char *shell = NULL;
- argv2 = __vte_pty_get_argv(command ? command : (shell = _vte_terminal_get_user_shell_with_fallback ()),
+ argv2 = __vte_pty_get_argv(command ? command : (shell = vte_terminal_get_user_shell_with_fallback ()),
argv,
flags);
g_free(shell);
@@ -6545,6 +6544,28 @@
}
}
+/**
+ * vte_terminal_set_cursor_position:
+ * @terminal: a #VteTerminal
+ * @column: the new cursor column
+ * @row: the new cursor row
+ *
+ * Set the location of the cursor.
+ */
+void
+vte_terminal_set_cursor_position(VteTerminal *terminal,
+ long column, long row)
+{
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
+
+ _vte_invalidate_cursor_once(terminal, FALSE);
+ terminal->pvt->screen->cursor_current.col = column;
+ terminal->pvt->screen->cursor_current.row = row;
+ _vte_invalidate_cursor_once(terminal, FALSE);
+ _vte_check_cursor_blink(terminal);
+ vte_terminal_queue_cursor_moved(terminal);
+}
+
static GtkClipboard *
vte_terminal_clipboard_get(VteTerminal *terminal, GdkAtom board)
{
@@ -6676,7 +6697,7 @@
terminal->pvt->selection_start.row);
/* Temporarily stop caring about input from the child. */
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
}
static gboolean
@@ -6693,7 +6714,7 @@
terminal->pvt->selecting = FALSE;
/* Reconnect to input from the child if we paused it. */
- _vte_terminal_connect_pty_read(terminal);
+ vte_terminal_connect_pty_read(terminal);
return TRUE;
}
@@ -8994,7 +9015,7 @@
#endif
kill(terminal->pvt->pty_pid, SIGHUP);
}
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
_vte_terminal_disconnect_pty_write(terminal);
if (terminal->pvt->pty_channel != NULL) {
g_io_channel_unref (terminal->pvt->pty_channel);
@@ -14384,7 +14405,7 @@
g_object_freeze_notify(object);
if (pvt->pty != NULL) {
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
_vte_terminal_disconnect_pty_write(terminal);
if (terminal->pvt->pty_channel != NULL) {
@@ -14440,7 +14461,7 @@
_vte_terminal_setup_utf8 (terminal);
/* Open channels to listen for input on. */
- _vte_terminal_connect_pty_read (terminal);
+ vte_terminal_connect_pty_read (terminal);
g_object_notify(object, "pty");
g_object_notify(object, "pty-object");
@@ -14567,6 +14588,50 @@
}
}
+/**
+ * vte_terminal_get_selection_block_mode:
+ * @terminal: a #VteTerminal
+ *
+ * Checks whether or not block selection is enabled.
+ *
+ * Returns: %TRUE if block selection is enabled, %FALSE if not
+ */
+gboolean
+vte_terminal_get_selection_block_mode(VteTerminal *terminal) {
+ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), FALSE);
+ return terminal->pvt->selection_block_mode;
+}
+
+/**
+ * vte_terminal_set_selection_block_mode:
+ * @terminal: a #VteTerminal
+ * @block_mode: whether block selection is enabled
+ *
+ * Sets whether or not block selection is enabled.
+ */
+void
+vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode) {
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
+ terminal->pvt->selection_block_mode = block_mode;
+}
+
+/**
+ * vte_terminal_select_text:
+ * @terminal: a #VteTerminal
+ * @start_col: the starting column for the selection
+ * @start_row: the starting row for the selection
+ * @end_col: the end column for the selection
+ * @end_row: the end row for the selection
+ *
+ * Sets the current selection region.
+ */
+void
+vte_terminal_select_text(VteTerminal *terminal,
+ long start_col, long start_row,
+ long end_col, long end_row) {
+ _vte_terminal_select_text(terminal, start_col, start_row, end_col, end_row, 0, 0);
+}
+
void
_vte_terminal_select_text(VteTerminal *terminal,
long start_col, long start_row,
diff -aur vte-0.32.2-old/src/vte.h vte-0.32.2/src/vte.h
--- vte-0.32.2-old/src/vte.h 2012-07-13 21:09:04.003969877 -0400
+++ vte-0.32.2/src/vte.h 2012-08-30 04:30:09.695999432 -0400
@@ -296,6 +296,15 @@
/* simple manipulation of selection */
void vte_terminal_select_all(VteTerminal *terminal);
void vte_terminal_select_none(VteTerminal *terminal);
+gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal);
+void vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode);
+void vte_terminal_select_text(VteTerminal *terminal,
+ long start_col, long start_row,
+ long end_col, long end_row);
+
+/* pause and unpause output */
+void vte_terminal_disconnect_pty_read(VteTerminal *vte);
+void vte_terminal_connect_pty_read(VteTerminal *vte);
/* Set the terminal's size. */
void vte_terminal_set_size(VteTerminal *terminal,
@@ -435,6 +444,8 @@
GArray *attributes);
void vte_terminal_get_cursor_position(VteTerminal *terminal,
glong *column, glong *row);
+void vte_terminal_set_cursor_position(VteTerminal *terminal,
+ long column, long row);
/* Display string matching: clear all matching expressions. */
void vte_terminal_match_clear_all(VteTerminal *terminal);
@@ -484,6 +495,7 @@
VtePty *vte_terminal_get_pty_object(VteTerminal *terminal);
char *vte_get_user_shell (void);
+char *vte_terminal_get_user_shell_with_fallback(void);
/* Accessors for bindings. */
#if !GTK_CHECK_VERSION (2, 91, 2)

View File

@ -0,0 +1,108 @@
From d5a1fd1bdc75c5b16e093699cfd0cf005acaba43 Mon Sep 17 00:00:00 2001
From: Daniel Micay <danielmicay@gmail.com>
Date: Sun, 21 Jun 2015 09:50:26 -0400
Subject: [PATCH] expose functions for pausing/unpausing output
---
src/vte.c | 21 +++++++++++----------
src/vteterminal.h | 4 ++++
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/src/vte.c b/src/vte.c
index 68f7167..efa65dc 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -123,7 +123,6 @@ static char *vte_terminal_get_text_maybe_wrapped(VteTerminal *terminal,
gpointer data,
GArray *attributes,
gboolean include_trailing_spaces);
-static void _vte_terminal_disconnect_pty_read(VteTerminal *terminal);
static void _vte_terminal_disconnect_pty_write(VteTerminal *terminal);
static void vte_terminal_stop_processing (VteTerminal *terminal);
@@ -3344,9 +3343,10 @@ static void mark_input_source_invalid(VteTerminal *terminal)
_vte_debug_print (VTE_DEBUG_IO, "removed poll of vte_terminal_io_read\n");
terminal->pvt->pty_input_source = 0;
}
-static void
-_vte_terminal_connect_pty_read(VteTerminal *terminal)
+void
+vte_terminal_connect_pty_read(VteTerminal *terminal)
{
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
if (terminal->pvt->pty_channel == NULL) {
return;
}
@@ -3398,9 +3398,10 @@ _vte_terminal_connect_pty_write(VteTerminal *terminal)
}
}
-static void
-_vte_terminal_disconnect_pty_read(VteTerminal *terminal)
+void
+vte_terminal_disconnect_pty_read(VteTerminal *terminal)
{
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
if (terminal->pvt->pty_input_source != 0) {
_vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n");
g_source_remove(terminal->pvt->pty_input_source);
@@ -6465,7 +6466,7 @@ vte_terminal_start_selection(VteTerminal *terminal, long x, long y,
vte_terminal_extend_selection(terminal, x, y, FALSE, TRUE);
/* Temporarily stop caring about input from the child. */
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
}
static gboolean
@@ -6482,7 +6483,7 @@ _vte_terminal_maybe_end_selection (VteTerminal *terminal)
terminal->pvt->selecting = FALSE;
/* Reconnect to input from the child if we paused it. */
- _vte_terminal_connect_pty_read(terminal);
+ vte_terminal_connect_pty_read(terminal);
return TRUE;
}
@@ -8631,7 +8632,7 @@ vte_terminal_finalize(GObject *object)
#endif
kill(terminal->pvt->pty_pid, SIGHUP);
}
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
_vte_terminal_disconnect_pty_write(terminal);
if (terminal->pvt->pty_channel != NULL) {
g_io_channel_unref (terminal->pvt->pty_channel);
@@ -12188,7 +12189,7 @@ vte_terminal_set_pty(VteTerminal *terminal,
g_object_freeze_notify(object);
if (pvt->pty != NULL) {
- _vte_terminal_disconnect_pty_read(terminal);
+ vte_terminal_disconnect_pty_read(terminal);
_vte_terminal_disconnect_pty_write(terminal);
if (terminal->pvt->pty_channel != NULL) {
@@ -12243,7 +12244,7 @@ vte_terminal_set_pty(VteTerminal *terminal,
_vte_terminal_setup_utf8 (terminal);
/* Open channels to listen for input on. */
- _vte_terminal_connect_pty_read (terminal);
+ vte_terminal_connect_pty_read (terminal);
g_object_notify(object, "pty");
diff --git a/src/vteterminal.h b/src/vteterminal.h
index b7b5277..d5d5871 100644
--- a/src/vteterminal.h
+++ b/src/vteterminal.h
@@ -170,6 +170,10 @@ void vte_terminal_paste_primary(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+/* pause and unpause output */
+void vte_terminal_disconnect_pty_read(VteTerminal *vte);
+void vte_terminal_connect_pty_read(VteTerminal *vte);
+
/* By-word selection */
void vte_terminal_set_word_char_exceptions(VteTerminal *terminal,
const char *exceptions) _VTE_GNUC_NONNULL(1);

View File

@ -0,0 +1,56 @@
From e06d88d4d8174746602f9408438f2271bdbbc3bd Mon Sep 17 00:00:00 2001
From: Daniel Micay <danielmicay@gmail.com>
Date: Sun, 21 Jun 2015 09:57:38 -0400
Subject: [PATCH] expose function for setting the cursor position
---
src/vte.c | 22 ++++++++++++++++++++++
src/vteterminal.h | 2 ++
2 files changed, 24 insertions(+)
diff --git a/src/vte.c b/src/vte.c
index efa65dc..91c2a3a 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -6303,6 +6303,28 @@ vte_terminal_get_cursor_position(VteTerminal *terminal,
}
}
+/**
+ * vte_terminal_set_cursor_position:
+ * @terminal: a #VteTerminal
+ * @column: the new cursor column
+ * @row: the new cursor row
+ *
+ * Set the location of the cursor.
+ */
+void
+vte_terminal_set_cursor_position(VteTerminal *terminal,
+ long column, long row)
+{
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
+
+ _vte_invalidate_cursor_once(terminal, FALSE);
+ terminal->pvt->cursor.col = column;
+ terminal->pvt->cursor.row = row;
+ _vte_invalidate_cursor_once(terminal, FALSE);
+ _vte_check_cursor_blink(terminal);
+ vte_terminal_queue_cursor_moved(terminal);
+}
+
static GtkClipboard *
vte_terminal_clipboard_get(VteTerminal *terminal, GdkAtom board)
{
diff --git a/src/vteterminal.h b/src/vteterminal.h
index d5d5871..a056b06 100644
--- a/src/vteterminal.h
+++ b/src/vteterminal.h
@@ -284,6 +284,8 @@ char *vte_terminal_get_text_range(VteTerminal *terminal,
void vte_terminal_get_cursor_position(VteTerminal *terminal,
glong *column,
glong *row) _VTE_GNUC_NONNULL(1);
+void vte_terminal_set_cursor_position(VteTerminal *terminal,
+ long column, long row) _VTE_GNUC_NONNULL(1);
/* Add a matching expression, returning the tag the widget assigns to that
* expression. */

View File

@ -0,0 +1,53 @@
From 1dae60049dec98a36ba08677d6732cb613fe796c Mon Sep 17 00:00:00 2001
From: Daniel Micay <danielmicay@gmail.com>
Date: Sun, 21 Jun 2015 09:59:05 -0400
Subject: [PATCH] add function for setting the text selection
---
src/vte.c | 18 ++++++++++++++++++
src/vteterminal.h | 3 +++
2 files changed, 21 insertions(+)
diff --git a/src/vte.c b/src/vte.c
index 91c2a3a..b5c4b52 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -7005,6 +7005,24 @@ vte_terminal_unselect_all(VteTerminal *terminal)
vte_terminal_deselect_all (terminal);
}
+
+/**
+ * vte_terminal_select_text:
+ * @terminal: a #VteTerminal
+ * @start_col: the starting column for the selection
+ * @start_row: the starting row for the selection
+ * @end_col: the end column for the selection
+ * @end_row: the end row for the selection
+ *
+ * Sets the current selection region.
+ */
+void
+vte_terminal_select_text(VteTerminal *terminal,
+ long start_col, long start_row,
+ long end_col, long end_row) {
+ _vte_terminal_select_text(terminal, start_col, start_row, end_col, end_row, 0, 0);
+}
+
/* Autoscroll a bit. */
static gboolean
vte_terminal_autoscroll(VteTerminal *terminal)
diff --git a/src/vteterminal.h b/src/vteterminal.h
index a056b06..4b3d29f 100644
--- a/src/vteterminal.h
+++ b/src/vteterminal.h
@@ -169,6 +169,9 @@ void vte_terminal_paste_primary(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+void vte_terminal_select_text(VteTerminal *terminal,
+ long start_col, long start_row,
+ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
/* pause and unpause output */
void vte_terminal_disconnect_pty_read(VteTerminal *vte);

View File

@ -0,0 +1,61 @@
From aa07717d21bbadedfd502cb7ad4338a476240e6a Mon Sep 17 00:00:00 2001
From: Daniel Micay <danielmicay@gmail.com>
Date: Sun, 21 Jun 2015 09:59:37 -0400
Subject: [PATCH] add functions to get/set block selection mode
---
src/vte.c | 26 ++++++++++++++++++++++++++
src/vteterminal.h | 3 +++
2 files changed, 29 insertions(+)
diff --git a/src/vte.c b/src/vte.c
index b5c4b52..c64887b 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -7005,6 +7005,32 @@ vte_terminal_unselect_all(VteTerminal *terminal)
vte_terminal_deselect_all (terminal);
}
+/**
+ * vte_terminal_get_selection_block_mode:
+ * @terminal: a #VteTerminal
+ *
+ * Checks whether or not block selection is enabled.
+ *
+ * Returns: %TRUE if block selection is enabled, %FALSE if not
+ */
+gboolean
+vte_terminal_get_selection_block_mode(VteTerminal *terminal) {
+ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), FALSE);
+ return terminal->pvt->selection_block_mode;
+}
+
+/**
+ * vte_terminal_set_selection_block_mode:
+ * @terminal: a #VteTerminal
+ * @block_mode: whether block selection is enabled
+ *
+ * Sets whether or not block selection is enabled.
+ */
+void
+vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode) {
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
+ terminal->pvt->selection_block_mode = block_mode;
+}
/**
* vte_terminal_select_text:
diff --git a/src/vteterminal.h b/src/vteterminal.h
index 4b3d29f..2ad8cc6 100644
--- a/src/vteterminal.h
+++ b/src/vteterminal.h
@@ -169,6 +169,9 @@ void vte_terminal_paste_primary(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
+ gboolean block_mode) _VTE_GNUC_NONNULL(1);
void vte_terminal_select_text(VteTerminal *terminal,
long start_col, long start_row,
long end_col, long end_row) _VTE_GNUC_NONNULL(1);

View File

@ -0,0 +1,63 @@
From 86d350b9c7a3f1416c69515d38f4ca6f7b0feabc Mon Sep 17 00:00:00 2001
From: Daniel Micay <danielmicay@gmail.com>
Date: Sun, 21 Jun 2015 10:00:11 -0400
Subject: [PATCH] expose function for getting the selected text
---
src/vte.c | 2 +-
src/vteaccess.c | 2 +-
src/vteint.h | 1 -
src/vteterminal.h | 2 ++
4 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/vte.c b/src/vte.c
index c64887b..06a8ebb 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -12343,7 +12343,7 @@ _vte_terminal_accessible_ref(VteTerminal *terminal)
}
char *
-_vte_terminal_get_selection(VteTerminal *terminal)
+vte_terminal_get_selection(VteTerminal *terminal)
{
g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL);
diff --git a/src/vteaccess.c b/src/vteaccess.c
index 41d4cf1..5b2eaa2 100644
--- a/src/vteaccess.c
+++ b/src/vteaccess.c
@@ -1444,7 +1444,7 @@ vte_terminal_accessible_get_selection(AtkText *text, gint selection_number,
*start_offset = offset_from_xy (priv, start_x, start_y);
_vte_terminal_get_end_selection (terminal, &end_x, &end_y);
*end_offset = offset_from_xy (priv, end_x, end_y);
- return _vte_terminal_get_selection (terminal);
+ return vte_terminal_get_selection (terminal);
}
static gboolean
diff --git a/src/vteint.h b/src/vteint.h
index fd5d62d..601ba56 100644
--- a/src/vteint.h
+++ b/src/vteint.h
@@ -25,7 +25,6 @@
G_BEGIN_DECLS
void _vte_terminal_accessible_ref(VteTerminal *terminal);
-char* _vte_terminal_get_selection(VteTerminal *terminal);
void _vte_terminal_get_start_selection(VteTerminal *terminal, long *x, long *y);
void _vte_terminal_get_end_selection(VteTerminal *terminal, long *x, long *y);
void _vte_terminal_select_text(VteTerminal *terminal, long start_x, long start_y, long end_x, long end_y, int start_offset, int end_offset);
diff --git a/src/vteterminal.h b/src/vteterminal.h
index 2ad8cc6..a980d4c 100644
--- a/src/vteterminal.h
+++ b/src/vteterminal.h
@@ -175,6 +175,8 @@ void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
void vte_terminal_select_text(VteTerminal *terminal,
long start_col, long start_row,
long end_col, long end_row) _VTE_GNUC_NONNULL(1);
+char *
+vte_terminal_get_selection(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
/* pause and unpause output */
void vte_terminal_disconnect_pty_read(VteTerminal *vte);

10
x11-libs/vte/metadata.xml Normal file
View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<use>
<flag name='glade'>Provide integration with <pkg>dev-util/glade</pkg>.</flag>
<flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg> for
introspection</flag>
<flag name="termite-patch">Apply patch for <pkg>x11-terms/termite</pkg></flag>
</use>
</pkgmetadata>

View File

@ -0,0 +1,66 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/vte-0.34.2.ebuild,v 1.12 2013/04/10 20:22:20 ago Exp $
EAPI="4"
GCONF_DEBUG="yes"
GNOME2_LA_PUNT="yes"
inherit eutils gnome2
DESCRIPTION="Library providing a virtual terminal emulator widget."
HOMEPAGE="https://live.gnome.org/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.90"
IUSE="debug glade +introspection termite-patch"
KEYWORDS="~amd64 ~x86"
PDEPEND="x11-libs/gnome-pty-helper"
RDEPEND=">=dev-libs/glib-2.31.13:2
>=x11-libs/gtk+-3.1.9:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0 )"
DEPEND="${RDEPEND}
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig"
src_prepare() {
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
G2CONF="${G2CONF}
--disable-deprecation
--disable-static
$(use_enable debug)
$(use_enable glade glade-catalogue)
$(use_enable introspection)"
if [[ ${CHOST} == *-interix* ]]; then
G2CONF="${G2CONF} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
DOCS="AUTHORS ChangeLog HACKING NEWS README"
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch"
use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch
gnome2_src_prepare
}
src_install() {
gnome2_src_install
rm -v "${ED}usr/libexec/gnome-pty-helper" || die
}

View File

@ -0,0 +1,70 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/vte-0.34.9.ebuild,v 1.1 2013/10/15 19:30:25 pacho Exp $
EAPI="5"
GCONF_DEBUG="yes"
inherit eutils gnome2
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/action/show/Apps/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.90"
IUSE="debug glade +introspection termite-patch"
KEYWORDS="~amd64 ~x86"
PDEPEND="=x11-libs/gnome-pty-helper-${PV}"
RDEPEND="
>=dev-libs/glib-2.31.13:2
>=x11-libs/gtk+-3.1.9:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0 )
"
DEPEND="${RDEPEND}
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig
"
src_prepare() {
if [[ ${CHOST} == *-interix* ]]; then
G2CONF="${G2CONF} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
DOCS="AUTHORS ChangeLog HACKING NEWS README"
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch"
use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch
gnome2_src_prepare
}
src_configure() {
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
gnome2_src_configure \
--disable-deprecation \
--disable-static \
$(use_enable debug) \
$(use_enable glade glade-catalogue) \
$(use_enable introspection)
}
src_install() {
gnome2_src_install
rm -v "${ED}usr/libexec/gnome-pty-helper" || die
}

View File

@ -0,0 +1,72 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
GCONF_DEBUG="yes"
inherit eutils gnome2
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/action/show/Apps/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.90"
IUSE="debug glade +introspection termite-patch"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~x64-solaris ~x86-solaris"
PDEPEND="=x11-libs/gnome-pty-helper-${PV}"
RDEPEND="
>=dev-libs/glib-2.31.13:2
>=x11-libs/gtk+-3.1.9:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0 )
"
DEPEND="${RDEPEND}
>=dev-util/gtk-doc-am-1.13
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig
"
src_prepare() {
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch"
use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch
gnome2_src_prepare
}
src_configure() {
local myconf=""
if [[ ${CHOST} == *-interix* ]]; then
myconf="${myconf} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
gnome2_src_configure \
--disable-deprecation \
--disable-static \
$(use_enable debug) \
$(use_enable glade glade-catalogue) \
$(use_enable introspection)
}
src_install() {
DOCS="AUTHORS ChangeLog HACKING NEWS README"
gnome2_src_install
rm -v "${ED}usr/libexec/gnome-pty-helper" || die
}

View File

@ -0,0 +1,72 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
GCONF_DEBUG="yes"
inherit eutils gnome2
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/action/show/Apps/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.90"
IUSE="debug glade +introspection termite-patch"
KEYWORDS="~amd64 ~x86"
PDEPEND=">=x11-libs/gnome-pty-helper-${PV}"
RDEPEND="
>=dev-libs/glib-2.31.13:2
>=x11-libs/gtk+-3.1.9:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0 )
"
DEPEND="${RDEPEND}
>=dev-util/gtk-doc-am-1.13
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig
"
src_prepare() {
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch"
use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch
gnome2_src_prepare
}
src_configure() {
local myconf=""
if [[ ${CHOST} == *-interix* ]]; then
myconf="${myconf} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
gnome2_src_configure \
--disable-deprecation \
--disable-static \
$(use_enable debug) \
$(use_enable glade glade-catalogue) \
$(use_enable introspection)
}
src_install() {
DOCS="AUTHORS ChangeLog HACKING NEWS README"
gnome2_src_install
rm -v "${ED}usr/libexec/gnome-pty-helper" || die
}

View File

@ -0,0 +1,73 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
GCONF_DEBUG="no"
inherit eutils gnome2
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/action/show/Apps/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.90"
IUSE="debug glade +introspection termite-patch"
KEYWORDS="~amd64 ~x86"
PDEPEND=">=x11-libs/gnome-pty-helper-${PV}"
RDEPEND="
>=dev-libs/glib-2.31.13:2
>=x11-libs/gtk+-3.1.9:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0:= )
"
DEPEND="${RDEPEND}
>=dev-util/gtk-doc-am-1.13
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig
"
src_prepare() {
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch"
use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch
gnome2_src_prepare
}
src_configure() {
local myconf=""
if [[ ${CHOST} == *-interix* ]]; then
myconf="${myconf} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
gnome2_src_configure \
--disable-deprecation \
--disable-static \
$(use_enable debug) \
$(use_enable glade glade-catalogue) \
$(use_enable introspection) \
${myconf}
}
src_install() {
DOCS="AUTHORS ChangeLog HACKING NEWS README"
gnome2_src_install
rm -v "${ED}usr/libexec/gnome-pty-helper" || die
}

View File

@ -0,0 +1,86 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
GCONF_DEBUG="no"
VALA_USE_DEPEND="vapigen"
inherit eutils gnome2 vala
DESCRIPTION="Library providing a virtual terminal emulator widget"
HOMEPAGE="https://wiki.gnome.org/action/show/Apps/Terminal/VTE"
LICENSE="LGPL-2+"
SLOT="2.91"
IUSE="+crypt debug glade +introspection termite-patch vala"
KEYWORDS="~amd64 ~x86"
PDEPEND=">=x11-libs/gnome-pty-helper-${PV}"
RDEPEND="
>=dev-libs/glib-2.40:2
>=x11-libs/gtk+-3.8:3[introspection?]
>=x11-libs/pango-1.22.0
sys-libs/ncurses
sys-libs/zlib
x11-libs/libX11
x11-libs/libXft
glade? ( >=dev-util/glade-3.9:3.10 )
introspection? ( >=dev-libs/gobject-introspection-0.9.0 )
"
DEPEND="${RDEPEND}
$(vala_depend)
>=dev-util/gtk-doc-am-1.13
>=dev-util/intltool-0.35
sys-devel/gettext
virtual/pkgconfig
crypt? ( >=net-libs/gnutls-3.2.0 )
"
RDEPEND="${RDEPEND}
!x11-libs/vte:2.90[glade]
"
src_prepare() {
if use termite-patch; then
for i in $(seq 5); do
epatch "${FILESDIR}"/vte-ng-${PV}.a-${i}.patch
done
fi
vala_src_prepare
gnome2_src_prepare
}
src_configure() {
local myconf=""
if [[ ${CHOST} == *-interix* ]]; then
myconf="${myconf} --disable-Bsymbolic"
# interix stropts.h is empty...
export ac_cv_header_stropts_h=no
fi
# Python bindings are via gobject-introspection
# Ex: from gi.repository import Vte
# Do not disable gnome-pty-helper, bug #401389
gnome2_src_configure \
--disable-deprecation \
--disable-test-application \
--disable-static \
$(use_enable debug) \
$(use_enable glade glade-catalogue) \
$(use_enable crypt gnutls) \
$(use_enable introspection) \
$(use_enable vala) \
${myconf}
}
src_install() {
DOCS="AUTHORS ChangeLog HACKING NEWS README"
gnome2_src_install
mv "${D}"/etc/profile.d/vte{,-${SLOT}}.sh || die
}

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<longdescription lang="en">
A keyboard-centric VTE-based terminal, aimed at use within a window manager with tiling and/or tabbing support.
</longdescription>
</pkgmetadata>

28
x11-terms/termite/patch Normal file
View File

@ -0,0 +1,28 @@
--- termite-9999.ebuild 2013-09-25 16:39:56.753562930 +0200
+++ termite-9999.ebuild 2013-11-11 10:03:08.158660185 +0100
@@ -32,16 +32,18 @@
fi
}
-src_prepare() {
- sed -e '/PREFIX/s:/usr/local:/usr:' \
- -e 's/-O3//g' \
- -e '/LDFLAGS/s/-s//' \
- -i Makefile || die
+pkg_setup() {
+ # Makefile prepends -O3
+ CXXFLAGS="-O0 ${CXXFLAGS}"
+}
+
+src_compile() {
+ emake LDFLAGS="${LDFLAGS}"
}
src_install() {
- default
- dodoc config
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README* config
}
pkg_postinst() {

View File

@ -0,0 +1 @@
termite-8.ebuild

View File

@ -0,0 +1,51 @@
# By eroen, 2013
# Distributed under the terms of the ISC licence
# $Header: $
EAPI=5
inherit eutils toolchain-funcs versionator git-r3
DESCRIPTION="A keyboard-centric VTE-based terminal"
HOMEPAGE="https://github.com/thestinger/termite"
EGIT_REPO_URI="git://github.com/thestinger/termite.git"
if [[ ${PV} != 999? ]]; then
EGIT_COMMIT=v${PV}
fi
LICENSE="LGPL-2+ MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
HDEPEND=""
LIBDEPEND=">=x11-libs/gtk+-3.0
>=x11-libs/vte-0.34:2.90[termite-patch(-)]"
DEPEND="${LIBDEPEND}"
RDEPEND="${LIBDEPEND}"
[[ ${EAPI} == *-hdepend ]] || DEPEND+=" ${HDEPEND}"
pkg_pretend() {
if ! version_is_at_least 4.7 $(gcc-version); then
eerror "${PN} passes -std=c++11 to \${CXX} and requires a version"
eerror "of gcc newer than 4.7.0"
fi
}
src_prepare() {
sed -e '/PREFIX/s:/usr/local:/usr:' \
-e 's/-O3//g' \
-e '/LDFLAGS/s/-s//' \
-i Makefile || die
}
src_install() {
default
dodoc config
}
pkg_postinst() {
elog
elog "Termite looks for a config file ~/.config/termite/config"
elog "An example config can be found in ${ROOT}usr/share/doc/${PF}/"
}

View File

@ -0,0 +1,54 @@
# By eroen, 2013
# Distributed under the terms of the ISC licence
# $Header: $
EAPI=5
inherit eutils toolchain-funcs versionator git-r3
DESCRIPTION="A keyboard-centric VTE-based terminal"
HOMEPAGE="https://github.com/thestinger/termite"
EGIT_REPO_URI="git://github.com/thestinger/termite.git"
if [[ ${PV} != 999? ]]; then
EGIT_COMMIT=v${PV}
fi
LICENSE="LGPL-2+ MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
HDEPEND=""
LIBDEPEND=">=x11-libs/gtk+-3.0
>=x11-libs/vte-0.34:2.90[termite-patch(-)]
"
DEPEND="${LIBDEPEND}"
RDEPEND="${LIBDEPEND}"
[[ ${EAPI} == *-hdepend ]] || DEPEND+=" ${HDEPEND}"
pkg_pretend() {
if ! version_is_at_least 4.7 $(gcc-version); then
eerror "${PN} passes -std=c++11 to \${CXX} and requires a version"
eerror "of gcc newer than 4.7.0"
fi
}
pkg_setup() {
# Makefile prepends -O3
CXXFLAGS="-O0 ${CXXFLAGS}"
}
src_compile() {
emake LDFLAGS="${LDFLAGS}"
}
src_install() {
emake DESTDIR="${D}" PREFIX=/usr install
dodoc README* config
}
pkg_postinst() {
elog
elog "Termite looks for a config file ~/.config/termite/config"
elog "An example config can be found in ${ROOT}usr/share/doc/${PF}/"
}

View File

@ -0,0 +1,54 @@
# By eroen, 2013-2015
# Distributed under the terms of the ISC licence
# $Header: $
EAPI=5
inherit eutils toolchain-funcs versionator git-r3
DESCRIPTION="A keyboard-centric VTE-based terminal"
HOMEPAGE="https://github.com/thestinger/termite"
EGIT_REPO_URI="git://github.com/thestinger/termite.git"
if [[ ${PV} != 999? ]]; then
EGIT_COMMIT=v${PV}
fi
LICENSE="LGPL-2+ MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
HDEPEND=""
LIBDEPEND=">=x11-libs/gtk+-3.0
>=x11-libs/vte-0.38:2.91[termite-patch(-)]
"
DEPEND="${LIBDEPEND}"
RDEPEND="${LIBDEPEND}"
[[ ${EAPI} == *-hdepend ]] || DEPEND+=" ${HDEPEND}"
pkg_pretend() {
if ! version_is_at_least 4.7 $(gcc-version); then
eerror "${PN} passes -std=c++11 to \${CXX} and requires a version"
eerror "of gcc newer than 4.7.0"
fi
}
pkg_setup() {
# Makefile prepends -O3
CXXFLAGS="-O0 ${CXXFLAGS}"
}
src_compile() {
emake LDFLAGS="${LDFLAGS}"
}
src_install() {
emake DESTDIR="${D}" PREFIX=/usr install
dodoc README* config
}
pkg_postinst() {
elog
elog "Termite looks for a config file ~/.config/termite/config"
elog "An example config can be found in ${ROOT}usr/share/doc/${PF}/"
}

View File

@ -0,0 +1 @@
termite-8.ebuild

View File

@ -0,0 +1,54 @@
# By eroen, 2013-2015
# Distributed under the terms of the ISC licence
# $Header: $
EAPI=5
inherit eutils toolchain-funcs versionator git-r3
DESCRIPTION="A keyboard-centric VTE-based terminal"
HOMEPAGE="https://github.com/thestinger/termite"
EGIT_REPO_URI="git://github.com/thestinger/termite.git"
if [[ ${PV} != 999? ]]; then
EGIT_COMMIT=v${PV}
fi
LICENSE="LGPL-2+ MIT"
SLOT="0"
KEYWORDS=""
IUSE=""
HDEPEND=""
LIBDEPEND=">=x11-libs/gtk+-3.0
>=x11-libs/vte-0.38:2.91[termite-patch(-)]
"
DEPEND="${LIBDEPEND}"
RDEPEND="${LIBDEPEND}"
[[ ${EAPI} == *-hdepend ]] || DEPEND+=" ${HDEPEND}"
pkg_pretend() {
if ! version_is_at_least 4.7 $(gcc-version); then
eerror "${PN} passes -std=c++11 to \${CXX} and requires a version"
eerror "of gcc newer than 4.7.0"
fi
}
pkg_setup() {
# Makefile prepends -O3
CXXFLAGS="-O0 ${CXXFLAGS}"
}
src_compile() {
emake LDFLAGS="${LDFLAGS}"
}
src_install() {
emake DESTDIR="${D}" PREFIX=/usr install
dodoc README* config
}
pkg_postinst() {
elog
elog "Termite looks for a config file ~/.config/termite/config"
elog "An example config can be found in ${ROOT}usr/share/doc/${PF}/"
}