This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch improve-macos-support
in repository terminology.

View the commit online.

commit 2e37b5e965e5590c4d635168422e1fbcd6cd2255
Author: Boris Faure <[email protected]>
AuthorDate: Tue Sep 15 22:12:42 2026 +0000

    main: add --term-type to select the TERM value
---
 man/terminology.1 | 10 ++++++++--
 src/bin/ipc.c     |  2 ++
 src/bin/ipc.h     |  1 +
 src/bin/main.c    | 26 +++++++++++++++++++++++++-
 4 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/man/terminology.1 b/man/terminology.1
index 4dd17197..d326d2a1 100644
--- a/man/terminology.1
+++ b/man/terminology.1
@@ -1,5 +1,5 @@
 .\" Manpage for Terminology
-.TH TERMINOLOGY 1 "Mar 23, 2025" "1.14.0" "Terminology man page"
+.TH TERMINOLOGY 1 "Sep 15, 2026" "1.14.0" "Terminology man page"
 .SH NAME
 Terminology \- Terminal Emulator written with EFL (Enlightenment Foundation Libraries).
 .SH SYNOPSIS
@@ -149,7 +149,13 @@ Force single executable if multi-instance is enabled..
 .
 .TP
 .B \-2, \-\-256color
-Set TERM to \fBxterm-256color\fP instead of \fBxterm\fP.
+Set TERM to \fBxterm\-256color\fP. Same as \fB\-\-term\-type=xterm\-256color\fP.
+.
+.TP
+.B \-\-term\-type=TERM\-TYPE
+Set TERM to \fBxterm\fP, \fBxterm\-256color\fP or \fBterminology\fP.
+Defaults to \fBxterm\-256color\fP. See the \fBTERMINFO\fP section below.
+Type: STR.
 .
 .TP
 .B \-\-active\-links=ACTIVATE\-LINKS
diff --git a/src/bin/ipc.c b/src/bin/ipc.c
index 6cad2b9f..9fa22344 100644
--- a/src/bin/ipc.c
+++ b/src/bin/ipc.c
@@ -144,6 +144,8 @@ ipc_init(void)
                                  "nowm", nowm, EET_T_INT);
    EET_DATA_DESCRIPTOR_ADD_BASIC(new_inst_edd, Ipc_Instance,
                                  "xterm_256color", xterm_256color, EET_T_INT);
+   EET_DATA_DESCRIPTOR_ADD_BASIC(new_inst_edd, Ipc_Instance,
+                                 "term_type", term_type, EET_T_STRING);
    EET_DATA_DESCRIPTOR_ADD_BASIC(new_inst_edd, Ipc_Instance,
                                  "active_links", active_links, EET_T_INT);
    EET_DATA_DESCRIPTOR_ADD_BASIC(new_inst_edd, Ipc_Instance,
diff --git a/src/bin/ipc.h b/src/bin/ipc.h
index f9b43305..5771611a 100644
--- a/src/bin/ipc.h
+++ b/src/bin/ipc.h
@@ -30,6 +30,7 @@ struct tag_Ipc_Instance
    Eina_Bool hold;
    Eina_Bool nowm;
    Eina_Bool xterm_256color;
+   char *term_type;
    Eina_Bool video_mute;
    Eina_Bool active_links;
    Eina_Bool cursor_blink;
diff --git a/src/bin/main.c b/src/bin/main.c
index e2d0df67..b2dc202f 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -131,6 +131,21 @@ _configure_instance(Ipc_Instance *inst)
         inst->config->term_type = TERM_TYPE_XTERM_256COLOR;
         inst->config->temporary = EINA_TRUE;
      }
+   if (inst->term_type)
+     {
+        int t = config_term_type_from_name(inst->term_type);
+
+        if (t < 0)
+          {
+             ERR(_("Unknown TERM type '%s', keeping '%s'"), inst->term_type,
+                 config_term_type_name(inst->config->term_type));
+          }
+        else
+          {
+             inst->config->term_type = t;
+             inst->config->temporary = EINA_TRUE;
+          }
+     }
    if (inst->video_mute != IPC_INSTANCE_OPT_UNSET)
      {
         config->mute = inst->video_mute;
@@ -223,6 +238,7 @@ main_ipc_new(Ipc_Instance *inst)
    if (inst->hold) nargc += 1;
    if (inst->nowm) nargc += 1;
    if (inst->xterm_256color) nargc += 1;
+   if (inst->term_type) nargc += 2;
    if (inst->active_links) nargc += 1;
    if (inst->video_mute) nargc += 1;
    if (inst->cursor_blink) nargc += 1;
@@ -370,6 +386,11 @@ main_ipc_new(Ipc_Instance *inst)
      {
         nargv[i++] = "-2";
      }
+   if (inst->term_type)
+     {
+        nargv[i++] = "--term-type";
+        nargv[i++] = (char *)inst->term_type;
+     }
    if ((inst->active_links != IPC_INSTANCE_OPT_UNSET)
        && (inst->active_links != 0))
      {
@@ -514,7 +535,9 @@ static Ecore_Getopt options = {
       ECORE_GETOPT_STORE_TRUE('s', "single",
                               gettext_noop("Force single executable if multi-instance is enabled")),
       ECORE_GETOPT_STORE_TRUE('2', "256color",
-                              gettext_noop("Set TERM to 'xterm-256color' instead of 'xterm'")),
+                              gettext_noop("Set TERM to 'xterm-256color' (same as --term-type=xterm-256color)")),
+      ECORE_GETOPT_STORE_STR('\0', "term-type",
+                              gettext_noop("Set TERM to 'xterm', 'xterm-256color' or 'terminology'")),
       ECORE_GETOPT_STORE_DOUBLE('\0', "scale",
                               gettext_noop("Set scaling factor")),
       ECORE_GETOPT_STORE_BOOL('\0', "active-links",
@@ -851,6 +874,7 @@ elm_main(int argc, char **argv)
      ECORE_GETOPT_VALUE_BOOL(instance.hold),            /* -H, --hold */
      ECORE_GETOPT_VALUE_BOOL(single),                   /* -s, --single */
      ECORE_GETOPT_VALUE_BOOL(instance.xterm_256color),  /* -2, --256color */
+     ECORE_GETOPT_VALUE_STR(instance.term_type),        /* --term-type */
      ECORE_GETOPT_VALUE_DOUBLE(scale),                  /* --scale */
      ECORE_GETOPT_VALUE_BOOL(instance.active_links),    /* --active-links */
      ECORE_GETOPT_VALUE_BOOL(no_wizard),                /* --no-wizard */

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to