Re: [E-devel] add option to disable terminology escape codes ...
On Monday, 1 April 2024 at 11:46, jose@metztli.com wrote: > […] > And then reading through the OpenWall threads there is a link to > terminal emulators vulnerabilities > < > https://dgl.cx/2023/09/ansi-terminal-security#vulnerabilities-using-known-replies > > where its author lists Terminology as to be avoided, but: > > "add option to disable terminology escape codes that could be considered > security issues by some. They are enabled by default" > < > https://git.enlightenment.org/enlightenment/terminology/commit/144e0b5068aa25b7fce822a94101586f374aa236 > > > Question: > If I add that option to the current source code of Terminology, what > functionality would I lose? The option exists as can be seen in the attached screenshot. Disabling those, you'd lose everything related to the companion tools tyls, tycat, … that are described in https://www.enlightenment.org/about-terminology .___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Translation into Lithuanian
On 23-11-14 16:03, Махно wrote: > Good day. Sorry for noob question. > > I translated the terminal program "terminology" into Lithuanian using > Weblate (as indicated on Enlightenment's official website). The > translation is fully completed and has passed verification. I want to > ask what are my next steps? Do I need to contact the developer of this > app further or just wait for the translation to be added to the app? Hi, Thanks for you work. You do not have any next step since the translation is fully done: https://hosted.weblate.org/projects/terminology/terminology/lt/ I have merged your translation into Terminology: https://git.enlightenment.org/enlightenment/terminology/src/branch/master/po/lt.po Now, the next steps are on me, to release a new version of Terminology. Thanks again for your hard work. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [Terminology] Cooperative tiling between Terminology and hosted programs
On 23-01-29 05:53, Vinícius dos Santos Oliveira wrote: > Hi folks, > > in my mind, Terminology tries to push the boundaries of what's possible > with terminal emulators forward. For instance, it has support for embedding > videos and images through custom escape sequences. It obviously expects > programs will make use of the new Terminology features. > > It just occurred to me that programas could cooperate with Terminology to > make their own custom tiling. For instance, Emacs has the eshell mode where > Emacs acts as its own terminal emulator taking care of interpreting ANSI > escape sequences and tiling the embedded terminal in its own window all by > itself. > > What if Terminology exposed an env var such as > TERMINOLOGY_SOCK=$XDG_RUNTIME_DIR/sock-1234.sock with a path for a UNIX > socket so the program (such as Emacs) could open it to cooperate with > Terminology? Emacs could open a new pty, spawn the embedded shell, and send > a fd to the master end of the new pty back to Terminology. The message > should include the position in the screen for the new embedded terminal. > Now Terminology would only read from the master end so it can draw the > contents of the embedded terminal appropriately in the new tile of the > terminal window. Emacs would still get all the input as usual and only send > input to the new terminal as it pleases (by writing in the master end of > the pty). > > So, Terminology already decodes ANSI escape sequences and performs tiling > of terminal windows. The idea is to let applications reuse this > implementation to allow further embedding other interactive programs in > their own windows. > > Thoughts? That's some interesting thoughts. Terminology already has some custom escape codes. I would go that way to have interaction with an external program. There's no escape codes to handle the tiling, since those could also be used to DDOS terminology, but that's something could be thought about. -- Boris Faure Pointer Arithmetician ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Happy New year E crowd
Hi! Happy new year to you too! I hope you renovation work will finish soon. On my side, I've finally emptied my apartment and the renovation will start tomorrow for 20 week. I've tested efm2 and it's got a nice feeling. As a filesystem developer, I appreciate that the I/O is done asynchronously. Keep it up! -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] New theme "Dimensions"
On 22-05-16 21:50, Simon Lees wrote: > Hi All, > > Today I released a new theme "Dimensions" this theme has two main goals. > The first is to allow you to have a consistent look between > Enlightenment and Gtk / Qt apps, to that extent it was designed around > and based on the Vertex GTK theme https://www.pling.com/p/1013757/ so if > you use it with the Dark Vertex theme you'll get a unified look across > your whole desktop. > > The second goal is to make a theme that's easy to modify and create new > themes from with just by changing some images and a couple of other > files, but there will be more on that soon. > > Screenshots and Downloads at: https://www.opendesktop.org/p/1795915/ > Also an openSUSE Version at: https://www.opendesktop.org/p/1795917/ > > -- > Simon Lees (Simotek)http://simotek.net > > Emergency Update Team keybase.io/simotek > SUSE Linux Adelaide Australia, UTC+10:30 > GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B It looks nice. Do you plan on adding the colorscheme and the theme to Terminology? -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [apps/terminology] master 01/01: termio: use memcpy() is enough here
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=5a12ff7b1f2c112dd2fd1b46bac382a13caf572c commit 5a12ff7b1f2c112dd2fd1b46bac382a13caf572c Author: Boris Faure Date: Sat Apr 30 15:53:47 2022 +0200 termio: use memcpy() is enough here --- src/bin/termio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index 94828fd..63df4fc 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -4115,7 +4115,7 @@ _smart_cb_drop(void *data, if (*p) { len = strlen(p); - strncpy(buf, p, len); + memcpy(buf, p, len); buf[len] = '\0'; if (extn_is_media(buf, len)) evas_object_smart_callback_call(obj, "popup,queue", buf); --
[EGIT] [apps/terminology] master 02/02: Merge remote-tracking branch 'weblate/master'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=056b56c55bf74b42ceab4906f1b95bd96f5c2a78 commit 056b56c55bf74b42ceab4906f1b95bd96f5c2a78 Merge: d7cd427 df1de66 Author: Boris Faure Date: Sat Apr 30 12:38:24 2022 +0200 Merge remote-tracking branch 'weblate/master' Conflicts: po/fr.po po/fr.po | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --cc po/fr.po index 8418ac6,b84f350..90ecce4 --- a/po/fr.po +++ b/po/fr.po @@@ -9,8 -9,8 +9,8 @@@ msgid " msgstr "" "Project-Id-Version: terminology 0.6.99\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-01-02 18:48+0100\n" +"POT-Creation-Date: 2022-04-25 21:11+0200\n" - "PO-Revision-Date: 2021-06-08 13:34+\n" + "PO-Revision-Date: 2022-04-27 05:16+\n" "Last-Translator: Philippe Jean Guillaumie \n" "Language-Team: French <https://hosted.weblate.org/projects/terminology/; "terminology/fr/>\n" @@@ -19,11 -19,11 +19,11 @@@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" - "X-Generator: Weblate 4.7-dev\n" + "X-Generator: Weblate 4.12.1-dev\n" "X-Launchpad-Export-Date: 2015-02-14 12:32+\n" -#: src/bin/about.c:129 src/bin/about.c:204 src/bin/termio.c:1297 -#: src/bin/termio.c:1306 +#: src/bin/about.c:129 src/bin/about.c:204 src/bin/termio.c:1296 +#: src/bin/termio.c:1305 #, c-format msgid "Copy '%s'" msgstr "Copier « %s »" @@@ -584,8 -588,8 +584,8 @@@ msgid "Scroll to bottom when a key is p msgstr "Faire défiler jusqu'en bas sur pression d'une touche" #: src/bin/options_behavior.c:395 -msgid "React to key presses" +msgid "React to key presses (typing sounds and animations)" - msgstr "" + msgstr "Réagir aux pressions sur les touches (sons de frappe et animations)" #: src/bin/options_behavior.c:402 msgid "Audio Support for key presses DISABLED!" --
[EGIT] [apps/terminology] master 01/02: options_behavior: better named option to enable/disable typing sounds
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=e4c4f64789bdc4853c5470ea634b26dce75ee93f commit e4c4f64789bdc4853c5470ea634b26dce75ee93f Author: Boris Faure Date: Mon Apr 25 21:10:30 2022 +0200 options_behavior: better named option to enable/disable typing sounds --- src/bin/options_behavior.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/options_behavior.c b/src/bin/options_behavior.c index 151b215..9324d4d 100644 --- a/src/bin/options_behavior.c +++ b/src/bin/options_behavior.c @@ -392,7 +392,7 @@ options_behavior(Evas_Object *opbox, Evas_Object *term) _add_cursors_option(bx, ctx); - OPTIONS_CX(_("React to key presses"), flicker_on_key, 0); + OPTIONS_CX(_("React to key presses (typing sounds and animations)"), flicker_on_key, 0); if (!multisense_available) { lbl = elm_label_add(bx); --
[EGIT] [apps/terminology] master 01/01: config: remove shine parameter
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=33418ffd4187212bd57589ab173a850c025b958b commit 33418ffd4187212bd57589ab173a850c025b958b Author: Boris Faure Date: Sun Apr 17 10:27:31 2022 +0200 config: remove shine parameter --- src/bin/config.c | 9 +++-- src/bin/config.h | 2 +- src/bin/options_background.c | 48 src/bin/options_themepv.c| 2 -- src/bin/win.c| 32 - src/bin/win.h| 4 6 files changed, 4 insertions(+), 93 deletions(-) diff --git a/src/bin/config.c b/src/bin/config.c index 5f3813b..2f3fb42 100644 --- a/src/bin/config.c +++ b/src/bin/config.c @@ -193,8 +193,8 @@ config_init(void) (edd_base, Config, "changedir_to_current", changedir_to_current, EET_T_UCHAR); EET_DATA_DESCRIPTOR_ADD_BASIC (edd_base, Config, "emoji_dbl_width", emoji_dbl_width, EET_T_UCHAR); - EET_DATA_DESCRIPTOR_ADD_BASIC - (edd_base, Config, "shine", shine, EET_T_INT); + EET_DATA_DESCRIPTOR_ADD_BASIC /* DEPRECATED, NO LONGER USED */ + (edd_base, Config, "shine", _shine, EET_T_INT); EET_DATA_DESCRIPTOR_ADD_BASIC (edd_base, Config, "hide_cursor", hide_cursor, EET_T_DOUBLE); EET_DATA_DESCRIPTOR_ADD_BASIC @@ -322,7 +322,6 @@ config_sync(const Config *config_src, Config *config) config->ty_escapes = config_src->ty_escapes; config->changedir_to_current = config_src->changedir_to_current; config->emoji_dbl_width = config_src->emoji_dbl_width; - config->shine = config_src->shine; config->translucent = config_src->translucent; config->opacity = config_src->opacity; config->group_all = config_src->group_all; @@ -602,7 +601,6 @@ config_new(void) } } _add_default_keys(config); -config->shine = 255; config->hide_cursor = 5.0; config->group_all = EINA_FALSE; config_compute_color_scheme(config); @@ -708,7 +706,7 @@ config_load(void) EINA_FALLTHROUGH; /*pass through*/ case 16: - config->shine = 255; + config->_shine = 255; EINA_FALLTHROUGH; /*pass through*/ case 17: @@ -884,7 +882,6 @@ config_fork(const Config *config) CPY(ty_escapes); CPY(changedir_to_current); CPY(emoji_dbl_width); - CPY(shine); CPY(group_all); EINA_LIST_FOREACH(config->keys, l, key) diff --git a/src/bin/config.h b/src/bin/config.h index 866b4d1..e8a2c32 100644 --- a/src/bin/config.h +++ b/src/bin/config.h @@ -66,7 +66,7 @@ struct tag_Config doublehide_cursor; int _vidmod; /* DEPRECATED */ int opacity; - int shine; + int _shine; /* DEPRECATED */ int cg_width; int cg_height; Eina_Bool jump_on_keypress; diff --git a/src/bin/options_background.c b/src/bin/options_background.c index 3b1ceea..78b2bc5 100644 --- a/src/bin/options_background.c +++ b/src/bin/options_background.c @@ -22,7 +22,6 @@ typedef struct tag_Background_Ctx { Evas_Object *bubble; Evas_Object *op_trans; Evas_Object *op_opacity; - Evas_Object *op_shine_slider; Eina_Stringshare *system_path; Eina_Stringshare *user_path; @@ -43,29 +42,6 @@ typedef struct tag_Insert_Gen_Grid_Item_Notify Background_Item *item; } Insert_Gen_Grid_Item_Notify; - -static void -_cb_op_shine_sel(void *data, - Evas_Object *obj, - void *_event EINA_UNUSED) -{ - Background_Ctx *ctx = data; - Config *config = ctx->config; - Term *term = termio_term_get(ctx->term); - Win *wn = term_win_get(term); - int shine = elm_slider_value_get(obj); - Eina_List *l, *wn_list; - - if (config->shine == shine) - return; - - wn_list = win_terms_get(wn); - EINA_LIST_FOREACH(wn_list, l, term) - { -term_apply_shine(term, shine); - } -} - static void _cb_op_video_trans_chg(void *data, Evas_Object *obj, @@ -575,30 +551,6 @@ options_background(Evas_Object *opbox, Evas_Object *term) elm_object_content_set(ctx->frame, bx); evas_object_show(o); - o = elm_label_add(opbox); - evas_object_size_hint_weight_set(o, 0.0, 0.0); - evas_object_size_hint_align_set(o, 0.0, 0.5); - elm_object_text_set(o, _("Shine:")); - elm_box_pack_end(bx, o); - evas_object_show(o); - - ctx->op_shine_slider = o = elm_slider_add(opbox); - evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0); - evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); - elm_slider_span_size_set(o, 40); - elm_slider_unit_format_set(o, "%1.0f"); - elm_
[EGIT] [apps/terminology] master 04/04: tests: test that cursor restore does restore wrapnext status
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=50ea966dff832dca0666e6ba7ea74d227079f322 commit 50ea966dff832dca0666e6ba7ea74d227079f322 Author: Boris Faure Date: Sun Mar 6 18:14:37 2022 +0100 tests: test that cursor restore does restore wrapnext status Here, the tests restores the flag not set --- tests/cursor-restore-wrapnext.sh | 28 tests/tests.results | 1 + 2 files changed, 29 insertions(+) diff --git a/tests/cursor-restore-wrapnext.sh b/tests/cursor-restore-wrapnext.sh new file mode 100755 index 000..3314aa7 --- /dev/null +++ b/tests/cursor-restore-wrapnext.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +# fill space with E +printf '\033#8' +# set color +printf '\033[46;31;3m' + +# move to start of line 3 +printf '\033[3;0H' + +# print O +printf 'O' + +# save cursor +printf '\e7' + +# move to end of line 3 +printf '\033[3;80H' + +# print A, that sets "wrapnext" +printf 'A' + +# restore cursor: "wrapnext" should not be set +printf '\e8' + + +# print K. must be next to 'O' +printf 'K\n' diff --git a/tests/tests.results b/tests/tests.results index d7f2021..5e13283 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,5 @@ esc_term_name_version.sh eaa32a60e008258c7edfd363a624e0da +cursor-restore-wrapnext.sh 4b715ccc5afcd9684894eb8934bce333 decfra-no-restrict-cursor.sh f15874672d1ea46b8110ef58c2b40a91 decfra-restrict-cursor.sh f313f9cdc0723debe08219fcdf3ccd6e decera-no-restrict-cursor.sh 945720993f1058d959b3600e1b3a7d0d --
[EGIT] [apps/terminology] master 02/02: Merge remote-tracking branch 'weblate/weblate-terminology-terminology'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=b7e8de3c5b7d4585d9a2b5eccc03c00394e32843 commit b7e8de3c5b7d4585d9a2b5eccc03c00394e32843 Merge: 0d5465f ba1522b Author: Boris Faure Date: Wed Feb 2 22:06:15 2022 +0100 Merge remote-tracking branch 'weblate/weblate-terminology-terminology' po/tr.po | 16 ++-- 1 file changed, 10 insertions(+), 6 deletions(-) --
[EGIT] [apps/terminology] master 01/01: colors: fix typo
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=e66e254e0accb6479d447548492a1db322473cbb commit e66e254e0accb6479d447548492a1db322473cbb Author: Boris Faure Date: Thu Jan 13 20:37:57 2022 +0100 colors: fix typo --- src/bin/colors.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/colors.c b/src/bin/colors.c index 01037eb..5001741 100644 --- a/src/bin/colors.c +++ b/src/bin/colors.c @@ -748,7 +748,7 @@ color_scheme_list(void) /* Search homedir first, so color classes there get used */ snprintf(buf, sizeof(buf) - 1, -"%s/terminology/colorchemes", +"%s/terminology/colorschemes", efreet_config_home_get()); search_paths = eina_list_append(search_paths, eina_stringshare_add(buf)); snprintf(buf, sizeof(buf) - 1, --
[E-devel] Terminology 1.12.1
== “Oops” Boris Faure == Hello fellow Terminology enthusiasts! Yesterday's release was not done correctly. This is now fixed, as seen in the change log below: == Fixes == * Build and install the Default colorscheme * Correctly set the version == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.1.tar.xz - https://downloads.terminolo.gy/terminology-1.12.1.tar.xz sha256sum: f8ced9584c2e9ae87452ce7425fd25b2d3e122c7489785d2917890215c6b5aa9 Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [apps/terminology] master 01/01: tests: update due to new release
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=3f2fbd83d7e71db4e71a5a1abfc7c7ca9453c186 commit 3f2fbd83d7e71db4e71a5a1abfc7c7ca9453c186 Author: Boris Faure Date: Mon Jan 3 22:22:33 2022 +0100 tests: update due to new release --- tests/tests.results | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/tests.results b/tests/tests.results index 16775a1..e3eff61 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,4 @@ -esc_term_name_version.sh 3dcb097984b3efcc4470e0db3b0aa3b3 +esc_term_name_version.sh 97171410ee94925073faec63fb028735 decfra-no-restrict-cursor.sh 10e91417532188a4b1e81408273591ac decfra-restrict-cursor.sh 5b84d38a1d924cf36c0ed1ab2c302f37 decera-no-restrict-cursor.sh cc60dadaa0c888af93f2235119d18db7 --
[EGIT] [website/www-content] master 01/01: Wiki page 2022-01-03-terminology-1.12.1 changed with summary [] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=c6bbf65e20e4d6cb3d99583041af2739ece762ee commit c6bbf65e20e4d6cb3d99583041af2739ece762ee Author: Boris Faure Date: Mon Jan 3 13:24:53 2022 -0800 Wiki page 2022-01-03-terminology-1.12.1 changed with summary [] by Boris Faure --- pages/news/2022-01-03-terminology-1.12.1.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/news/2022-01-03-terminology-1.12.1.txt b/pages/news/2022-01-03-terminology-1.12.1.txt index 6260c8f2c..4e4886ed8 100644 --- a/pages/news/2022-01-03-terminology-1.12.1.txt +++ b/pages/news/2022-01-03-terminology-1.12.1.txt @@ -14,7 +14,7 @@ change log below: == Download == ^ ** LINK ** ^ ** SHA256 ** ^ -| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.1.tar.xz | Terminology 1.12.1 XZ]] | ''25cac30cc5d062adecd56ab53f98270f156581a37d68e5ab7739dfd62526a4fb'' | +| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.1.tar.xz | Terminology 1.12.1 XZ]] | ''f8ced9584c2e9ae87452ce7425fd25b2d3e122c7489785d2917890215c6b5aa9'' | {{:blank.png?nolink&100|}} --
[EGIT] [website/www-content] master 01/01: Wiki page 2022-01-03-terminology-1.12.1 changed with summary [created] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=d96c98decf9db440b05823f033e5dd6ad46b6fe4 commit d96c98decf9db440b05823f033e5dd6ad46b6fe4 Author: Boris Faure Date: Mon Jan 3 13:19:17 2022 -0800 Wiki page 2022-01-03-terminology-1.12.1 changed with summary [created] by Boris Faure --- pages/news/2022-01-03-terminology-1.12.1.txt | 21 + 1 file changed, 21 insertions(+) diff --git a/pages/news/2022-01-03-terminology-1.12.1.txt b/pages/news/2022-01-03-terminology-1.12.1.txt new file mode 100644 index 0..6260c8f2c --- /dev/null +++ b/pages/news/2022-01-03-terminology-1.12.1.txt @@ -0,0 +1,21 @@ + +=== Terminology 1.12.1 release === + * //2022-01-03 - by Boris Faure// + +> “Oops” ― Boris Faure + +Yesterday's release was not done correctly. This is now fixed, as seen in the +change log below: + +== Fixes == +* Build and install Default colorscheme +* Correctly set the version + + +== Download == +^ ** LINK ** ^ ** SHA256 ** ^ +| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.1.tar.xz | Terminology 1.12.1 XZ]] | ''25cac30cc5d062adecd56ab53f98270f156581a37d68e5ab7739dfd62526a4fb'' | + + +{{:blank.png?nolink&100|}} +~~DISCUSSIONS~~ \ No newline at end of file --
[EGIT] [website/www-content] master 01/01: Terminology 1.12.1
billiob pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=b0a9febf80329775d391aee415816219dfbba1ac commit b0a9febf80329775d391aee415816219dfbba1ac Author: Boris Faure Date: Mon Jan 3 22:09:56 2022 +0100 Terminology 1.12.1 --- pages/download-latest.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/download-latest.txt b/pages/download-latest.txt index c5ea3bf21..ba0ec2fc4 100644 --- a/pages/download-latest.txt +++ b/pages/download-latest.txt @@ -3,7 +3,7 @@ efl_v = 1.26.1 python_efl_v = 1.25.0 enlightenment_v = 0.25.1 -terminology_v = 1.12.0 +terminology_v = 1.12.1 rage_v= 0.4.0 econnman_v= 1.1 ephoto_v = 1.6 --
[EGIT] [apps/terminology] master 01/02: meson: build Default colorscheme
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=a7d4685a904e633c82b7bac272650a5ef47a21dd commit a7d4685a904e633c82b7bac272650a5ef47a21dd Author: Boris Faure Date: Mon Jan 3 21:34:19 2022 +0100 meson: build Default colorscheme Thanks to Conrad Knight for the bug report! --- data/colorschemes/meson.build | 1 + 1 file changed, 1 insertion(+) diff --git a/data/colorschemes/meson.build b/data/colorschemes/meson.build index c23add2..6827969 100644 --- a/data/colorschemes/meson.build +++ b/data/colorschemes/meson.build @@ -3,6 +3,7 @@ colorschemes = [ 'Belafonte Night', 'Black', 'Cobalt2', + 'Default', 'Dracula', 'Fahrenheit', 'Material', --
[EGIT] [apps/terminology] master 02/02: Terminology 1.12.1
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=034631fec6ee0ed8708311d79d7567c500316eb8 commit 034631fec6ee0ed8708311d79d7567c500316eb8 Author: Boris Faure Date: Mon Jan 3 22:01:06 2022 +0100 Terminology 1.12.1 --- ChangeLog | 5 + NEWS | 10 +- README.md | 2 +- man/terminology-helpers.1 | 2 +- man/terminology.1 | 2 +- meson.build | 2 +- 6 files changed, 18 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index d014eab..5886235 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2022-01-03 +* Release v1.12.1 +* Build and install Default colorscheme +* Correctly set the version + 2022-01-02 * Release v1.12.0 * New default theme! diff --git a/NEWS b/NEWS index 65897ff..0e5aefd 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,15 @@ == -Terminology 1.12.0 +Terminology 1.12.1 == +Changes since 1.12.0: + + +Fixes: +* Build and install Default colorscheme +* Correctly set the version + + Changes since 1.11.0: diff --git a/README.md b/README.md index 61be770..167a0e8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Terminology 1.12.0 +Terminology 1.12.1 == This is an EFL terminal emulator with some extra bells and whistles. diff --git a/man/terminology-helpers.1 b/man/terminology-helpers.1 index 00d5cba..06d0d39 100644 --- a/man/terminology-helpers.1 +++ b/man/terminology-helpers.1 @@ -1,5 +1,5 @@ .\" Manpage for terminology helpers -.TH TERMINOLOGY-HELPERS 1 "Jan 02, 2022" +.TH TERMINOLOGY-HELPERS 1 "Jan 03, 2022" .SH NAME terminiology-helpers \- programs that enhance .B terminology(1) diff --git a/man/terminology.1 b/man/terminology.1 index ac6ab66..8f5bab7 100644 --- a/man/terminology.1 +++ b/man/terminology.1 @@ -1,5 +1,5 @@ .\" Manpage for Terminology -.TH TERMINOLOGY 1 "Jan 02, 2022" "1.12.0" "Terminology man page" +.TH TERMINOLOGY 1 "Jan 03, 2022" "1.12.1" "Terminology man page" .SH NAME Terminology \- Terminal Emulator written with EFL (Enlightenment Foundation Libraries). .SH SYNOPSIS diff --git a/meson.build b/meson.build index 9dff9be..3061bde 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('terminology', 'c', -version: '1.12.0', +version: '1.12.1', default_options: ['buildtype=plain', 'c_std=gnu99'], license: 'BSD') --
[E-devel] Terminology 1.12.0
== “It ends when you're ready for a new beginning.” Adrienne Posey == Hello fellow Terminology enthusiasts! With the new year comes a new release of Terminology with some exciting changes. The detailed change log lists them below: == Additions == * New default theme! == Improvements == * Support EFL 1-26 or newer only * Colorschemes generate their own configuration file, allowing for easy management of outside contributions == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.0.tar.xz - https://downloads.terminolo.gy/terminology-1.12.0.tar.xz sha256sum: 74d2d3b253a77bcb215fc36eedf0ccb59643452e2ef15c510430ffaa6034dcf0 Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [website/www-content] master 01/01: Wiki page 2022-01-02-terminology-1.12.0 changed with summary [] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=4517bf7c14dd9e8c43a085cf94d2adeda7a8a029 commit 4517bf7c14dd9e8c43a085cf94d2adeda7a8a029 Author: Boris Faure Date: Sun Jan 2 11:25:16 2022 -0800 Wiki page 2022-01-02-terminology-1.12.0 changed with summary [] by Boris Faure --- pages/news/2022-01-02-terminology-1.12.0.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/news/2022-01-02-terminology-1.12.0.txt b/pages/news/2022-01-02-terminology-1.12.0.txt index 44781d485..ef0e8d6ef 100644 --- a/pages/news/2022-01-02-terminology-1.12.0.txt +++ b/pages/news/2022-01-02-terminology-1.12.0.txt @@ -8,7 +8,7 @@ With the new year comes a new release of Terminology with some exciting changes. The detailed change log lists them below: == Additions == - * New default theme! + * New default theme! New screenshots on [[:about-terminology.md]] == Improvements == * Support EFL 1-26 or newer only --
[EGIT] [apps/terminology] master 01/02: update po/pot
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=494fcd1cc7980f8d85c0ff19d13bb5886fa1d568 commit 494fcd1cc7980f8d85c0ff19d13bb5886fa1d568 Author: Boris Faure Date: Sun Jan 2 18:48:58 2022 +0100 update po/pot --- po/ca.po | 16 po/da.po | 16 po/de.po | 16 po/el.po | 16 po/eo.po | 16 po/es.po | 16 po/fi.po | 16 po/fr.po | 16 po/he.po | 16 po/hi.po | 16 po/hr.po | 16 po/it.po | 16 po/ja.po | 16 po/ko.po | 16 po/ms.po | 16 po/nb_NO.po| 16 po/nl.po | 16 po/pl.po | 16 po/pt.po | 16 po/pt_BR.po| 16 po/ru.po | 16 po/si.po | 16 po/sl.po | 16 po/sr.po | 16 po/sv.po | 16 po/terminology.pot | 16 po/tr.po | 16 po/uk.po | 16 po/vi.po | 16 po/zh_Hans.po | 16 30 files changed, 240 insertions(+), 240 deletions(-) diff --git a/po/ca.po b/po/ca.po index e8ce1c2..bc1a446 100644 --- a/po/ca.po +++ b/po/ca.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: enlightenment\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-11 19:11+0100\n" +"POT-Creation-Date: 2022-01-02 18:48+0100\n" "PO-Revision-Date: 2020-09-16 21:34+\n" "Last-Translator: Boris Faure \n" "Language-Team: Catalan <https://hosted.weblate.org/projects/terminology/; @@ -26,7 +26,7 @@ msgstr "" msgid "Copy '%s'" msgstr "Còpia '%s'" -#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1369 +#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1368 msgid "Open" msgstr "Obre" @@ -83,7 +83,7 @@ msgstr "Minivista" msgid "Set title" msgstr "Anomena la finestra" -#: src/bin/controls.c:424 src/bin/termio.c:1383 src/bin/termio.c:2789 +#: src/bin/controls.c:424 src/bin/termio.c:1382 src/bin/termio.c:2788 msgid "Copy" msgstr "Còpia" @@ -956,23 +956,23 @@ msgstr "No s'ha pogut carregar el directori de treball %s: %s" msgid "unsupported selection format '%s'" msgstr "format de selecció no permès '%s'" -#: src/bin/termio.c:1366 +#: src/bin/termio.c:1365 msgid "Preview" msgstr "Previsualitza" -#: src/bin/termio.c:1376 +#: src/bin/termio.c:1375 msgid "Copy relative path" msgstr "Copia ruta relativa" -#: src/bin/termio.c:1378 +#: src/bin/termio.c:1377 msgid "Copy full path" msgstr "Copia ruta completa" -#: src/bin/termio.c:2791 +#: src/bin/termio.c:2790 msgid "Open as URL" msgstr "Obre com a URL" -#: src/bin/termio.c:4234 +#: src/bin/termio.c:4233 msgid "Could not allocate termpty" msgstr "No s'ha ubicat termpty" diff --git a/po/da.po b/po/da.po index c5cda3f..93ea042 100644 --- a/po/da.po +++ b/po/da.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: terminology 1.1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-11 19:11+0100\n" +"POT-Creation-Date: 2022-01-02 18:48+0100\n" "PO-Revision-Date: 2021-04-30 19:31+\n" "Last-Translator: scootergrisen \n" "Language-Team: Danish <https://hosted.weblate.org/projects/terminology/; @@ -26,7 +26,7 @@ msgstr "" msgid "Copy '%s'" msgstr "Kopiér '%s'" -#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1369 +#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1368 msgid "Open" msgstr "Åbn" @@ -82,7 +82,7 @@ msgstr "Minivisning" msgid "Set title" msgstr "Indstil titel" -#: src/bin/controls.c:424 src/bin/termio.c:1383 src/bin/termio.c:2789 +#: src/bin/controls.c:424 src/bin/termio.c:1382 src/bin/termio.c:2788 msgid "Copy" msgstr "Kopiér" @@ -934,23 +934,23 @@ msgstr "Kunne ikke indlæse arbejdsmappe %s: %s" msgid "unsupported selection format '%s'" msgstr "ikke-understøttet markeringsformat '%s'" -#: src/bin/termio.c:1366 +#: src/bin/termio.c:1365 msgid "Preview" msgstr "Forhåndsvis"
[EGIT] [apps/terminology] master 02/02: Terminology 1.12.0
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=7ec0380755317204d2050aa50ab5b45d4d40f222 commit 7ec0380755317204d2050aa50ab5b45d4d40f222 Author: Boris Faure Date: Sun Jan 2 19:23:19 2022 +0100 Terminology 1.12.0 --- ChangeLog | 7 +++ NEWS | 13 - README.md | 4 ++-- man/terminology-helpers.1 | 2 +- man/terminology.1 | 2 +- meson.build | 2 +- tests/tests.results | 2 +- 7 files changed, 25 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1f42e6c..d014eab 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2022-01-02 +* Release v1.12.0 +* New default theme! +* Support EFL 1-26 or newer only +* Colorschemes generate their own configuration file, allowing for + easy management of outside contributions + 2021-11-11 * Release v1.11.0 * Support for focus reporting escape codes diff --git a/NEWS b/NEWS index cc0484b..65897ff 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,18 @@ == -Terminology 1.11.0 +Terminology 1.12.0 == +Changes since 1.11.0: + + +Additions: +* New default theme! + +Improvements: +* Support EFL 1-26 or newer only +* Colorschemes generate their own configuration file, allowing for easy + management of outside contributions + Changes since 1.10.0: diff --git a/README.md b/README.md index 535f18e..61be770 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Terminology 1.11.0 +Terminology 1.12.0 == This is an EFL terminal emulator with some extra bells and whistles. @@ -21,7 +21,7 @@ This is an EFL terminal emulator with some extra bells and whistles. Requirements - * `efl` (>= 1.22.0) + * `efl` (>= 1.26.0) Please see http://www.enlightenment.org for information on these. diff --git a/man/terminology-helpers.1 b/man/terminology-helpers.1 index 033c767..00d5cba 100644 --- a/man/terminology-helpers.1 +++ b/man/terminology-helpers.1 @@ -1,5 +1,5 @@ .\" Manpage for terminology helpers -.TH TERMINOLOGY-HELPERS 1 "Nov 11, 2021" +.TH TERMINOLOGY-HELPERS 1 "Jan 02, 2022" .SH NAME terminiology-helpers \- programs that enhance .B terminology(1) diff --git a/man/terminology.1 b/man/terminology.1 index c685728..ac6ab66 100644 --- a/man/terminology.1 +++ b/man/terminology.1 @@ -1,5 +1,5 @@ .\" Manpage for Terminology -.TH TERMINOLOGY 1 "Nov 11, 2021" "1.11.0" "Terminology man page" +.TH TERMINOLOGY 1 "Jan 02, 2022" "1.12.0" "Terminology man page" .SH NAME Terminology \- Terminal Emulator written with EFL (Enlightenment Foundation Libraries). .SH SYNOPSIS diff --git a/meson.build b/meson.build index 7ca0b0d..9dff9be 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('terminology', 'c', -version: '1.11.0', +version: '1.12.0', default_options: ['buildtype=plain', 'c_std=gnu99'], license: 'BSD') diff --git a/tests/tests.results b/tests/tests.results index 79a3a86..16775a1 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,4 @@ -esc_term_name_version.sh f3974006782bc38bb3b8755e1255cbd9 +esc_term_name_version.sh 3dcb097984b3efcc4470e0db3b0aa3b3 decfra-no-restrict-cursor.sh 10e91417532188a4b1e81408273591ac decfra-restrict-cursor.sh 5b84d38a1d924cf36c0ed1ab2c302f37 decera-no-restrict-cursor.sh cc60dadaa0c888af93f2235119d18db7 --
[EGIT] [website/www-content] master 01/01: terminology-1.12.0
billiob pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=635930e6b4cc3defa0aabf1980457fcae4284482 commit 635930e6b4cc3defa0aabf1980457fcae4284482 Author: Boris Faure Date: Sun Jan 2 19:22:12 2022 +0100 terminology-1.12.0 --- pages/download-latest.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/download-latest.txt b/pages/download-latest.txt index c8a715d9d..ab85a5c3a 100644 --- a/pages/download-latest.txt +++ b/pages/download-latest.txt @@ -3,7 +3,7 @@ efl_v = 1.26.0 python_efl_v = 1.25.0 enlightenment_v = 0.25.0 -terminology_v = 1.11.0 +terminology_v = 1.12.0 rage_v= 0.4.0 econnman_v= 1.1 ephoto_v = 1.6 --
[EGIT] [website/www-content] master 01/01: Wiki page 2022-01-02-terminology-1.12.0 changed with summary [created] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=132457fda982439472f04d7bbaf5a3665af44aa9 commit 132457fda982439472f04d7bbaf5a3665af44aa9 Author: Boris Faure Date: Sun Jan 2 11:19:57 2022 -0800 Wiki page 2022-01-02-terminology-1.12.0 changed with summary [created] by Boris Faure --- pages/news/2022-01-02-terminology-1.12.0.txt | 23 +++ 1 file changed, 23 insertions(+) diff --git a/pages/news/2022-01-02-terminology-1.12.0.txt b/pages/news/2022-01-02-terminology-1.12.0.txt new file mode 100644 index 0..44781d485 --- /dev/null +++ b/pages/news/2022-01-02-terminology-1.12.0.txt @@ -0,0 +1,23 @@ +=== Terminology 1.12.0 release === + * //2022-01-02 - by Boris Faure// + +> “It ends when you're ready for a new beginning.” ― Adrienne Posey + +With the new year comes a new release of Terminology with some exciting changes. + +The detailed change log lists them below: + +== Additions == + * New default theme! + +== Improvements == +* Support EFL 1-26 or newer only +* Colorschemes generate their own configuration file, allowing for easy management of outside contributions + +== Download == +^ ** LINK ** ^ ** SHA256 ** ^ +| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.12.0.tar.xz | Terminology 1.12.0 XZ]] | ''74d2d3b253a77bcb215fc36eedf0ccb59643452e2ef15c510430ffaa6034dcf0'' | + + +{{:blank.png?nolink&100|}} +~~DISCUSSIONS~~ \ No newline at end of file --
[EGIT] [apps/terminology] master 01/01: ci: disable some tests with msan since they look broken
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=5a079bcaa7bd88b915a96b5ae6267c95fa183324 commit 5a079bcaa7bd88b915a96b5ae6267c95fa183324 Author: Boris Faure Date: Sun Jan 2 18:42:04 2022 +0100 ci: disable some tests with msan since they look broken they show issues I don't get in the EFL --- .circleci/config.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 8657515..db6cfe2 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -171,7 +171,6 @@ jobs: name: Launch tests command: | cd /terminology -tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ build/src/bin/tytest dummy build/src/bin/tytest all build_and_test_clang_lsan_efl_latest: --
[EGIT] [apps/terminology] master 02/03: termio: this variable is not needed shadows the real one
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=4765573b51fb5f6deee6c62e645ee92c16debb4a commit 4765573b51fb5f6deee6c62e645ee92c16debb4a Author: Boris Faure Date: Sun Jan 2 16:53:51 2022 +0100 termio: this variable is not needed shadows the real one --- src/bin/termio.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index f9a677c..8b59c8c 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -1356,7 +1356,6 @@ _cb_link_down(void *data, if (sd->config->helper.inline_please) { - size_t len = strlen(raw_link); Media_Type type = media_src_type_get(raw_link, len); if ((type == MEDIA_TYPE_IMG) || --
[EGIT] [apps/terminology] master 01/03: termio: fix indentation
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=32d68b4feb21a994f40125ab74a59ce120382bf9 commit 32d68b4feb21a994f40125ab74a59ce120382bf9 Author: Boris Faure Date: Sun Jan 2 16:46:16 2022 +0100 termio: fix indentation --- src/bin/termio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index 9602b59..f9a677c 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -1301,7 +1301,7 @@ _cb_link_down(void *data, sd->link.color.g, sd->link.color.b); } - else + else { fmt = eina_stringshare_printf(_("Copy '%s'"), "#%.2x%.2x%.2x%.2x"); --
[EGIT] [apps/terminology] master 03/03: termiolink: fix use-of-uninitialized-value
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=3b63c4479bc4bf708602e9cb8154bb19d234a6c8 commit 3b63c4479bc4bf708602e9cb8154bb19d234a6c8 Author: Boris Faure Date: Sun Jan 2 17:28:29 2022 +0100 termiolink: fix use-of-uninitialized-value --- src/bin/termiolink.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/bin/termiolink.c b/src/bin/termiolink.c index 6bd0e2e..1035a42 100644 --- a/src/bin/termiolink.c +++ b/src/bin/termiolink.c @@ -863,7 +863,7 @@ _parse_one_css_rgb_color(struct ty_sb *sb, uint8_t *vp, Eina_Bool *is_percentp) { - char *endptr_double, *endptr_long; + char *endptr_double = sb->buf, *endptr_long; double d; long int l; @@ -918,7 +918,7 @@ static Eina_Bool _parse_one_css_alpha(struct ty_sb *sb, uint8_t *ap) { - char *endptr_double; + char *endptr_double = sb->buf; double d; if (!sb->len) @@ -957,7 +957,7 @@ static Eina_Bool _parse_one_hue(struct ty_sb *sb, double *dp) { - char *endptr_double; + char *endptr_double = sb->buf; double d; if (!sb->len) @@ -1009,7 +1009,7 @@ static Eina_Bool _parse_one_percent(struct ty_sb *sb, double *dp) { - char *endptr_double; + char *endptr_double = sb->buf; double d; if (!sb->len) --
[EGIT] [apps/terminology] master 02/02: ci: add some sanitizers
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=09e0875adcbbf660bfd9d23306c7f2b34feffb81 commit 09e0875adcbbf660bfd9d23306c7f2b34feffb81 Author: Boris Faure Date: Sun Jan 2 13:43:01 2022 +0100 ci: add some sanitizers --- .circleci/config.yml | 127 ++- 1 file changed, 126 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1a94ccd..8657515 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -116,12 +116,128 @@ jobs: meson configure build cd build ninja -j4 + build_and_test_clang_asan_efl_latest: +docker: + - image: borisfaure/terminology-ci:latest +environment: + - CC: clang + - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=address -fno-sanitize-recover=address + - COLUMNS: 150 + - TERM: xterm-256color +steps: + - restore_cache: + key: checkout-{{ .Environment.CIRCLE_SHA1 }} + - run: + name: Install EFL + command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk + - run: + name: Compile with Clang + command: | +cd /terminology +meson -Dnls=false -Dtests=true . build +meson configure build +cd build +ninja -j4 + - run: + name: Launch tests + command: | +cd /terminology +tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ +build/src/bin/tytest dummy +build/src/bin/tytest all + build_and_test_clang_msan_efl_latest: +docker: + - image: borisfaure/terminology-ci:latest +environment: + - CC: clang + - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=memory -fno-sanitize-recover=memory + - COLUMNS: 150 + - TERM: xterm-256color +steps: + - restore_cache: + key: checkout-{{ .Environment.CIRCLE_SHA1 }} + - run: + name: Install EFL + command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk + - run: + name: Compile with Clang + command: | +cd /terminology +meson -Dnls=false -Dtests=true . build +meson configure build +cd build +ninja -j4 + - run: + name: Launch tests + command: | +cd /terminology +tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ +build/src/bin/tytest dummy +build/src/bin/tytest all + build_and_test_clang_lsan_efl_latest: +docker: + - image: borisfaure/terminology-ci:latest +environment: + - CC: clang + - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=leak -fno-sanitize-recover=leak + - COLUMNS: 150 + - TERM: xterm-256color +steps: + - restore_cache: + key: checkout-{{ .Environment.CIRCLE_SHA1 }} + - run: + name: Install EFL + command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk + - run: + name: Compile with Clang + command: | +cd /terminology +meson -Dnls=false -Dtests=true . build +meson configure build +cd build +ninja -j4 + - run: + name: Launch tests + command: | +cd /terminology +tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ +build/src/bin/tytest dummy +build/src/bin/tytest all + build_and_test_clang_isan_efl_latest: +docker: + - image: borisfaure/terminology-ci:latest +environment: + - CC: clang + - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=integer -fno-sanitize-recover=integer + - COLUMNS: 150 + - TERM: xterm-256color +steps: + - restore_cache: + key: checkout-{{ .Environment.CIRCLE_SHA1 }} + - run: + name: Install EFL + command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk + - run: + name: Compile with Clang + command: | +cd /terminology +meson -Dnls=false -Dtests=true . build +meson configure build +cd build +ninja -j4 + - run: + name: Launch tests + command: | +cd /terminology +tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ +build/src/bin/tytest dummy +build/src/bin/tytest all build_and_test_clang_ubsan_efl_latest: docker: - image: borisfaure/terminology-ci:latest environment: - CC: clang - - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=undefined,float-divide-by-zero,unsigned-integer-overflow,implicit-conversion,local-bounds,nullability -fno-sanitize
[EGIT] [apps/terminology] master 01/02: ci: fix shell wrapping
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=026bf7f1c8e84bce40319741e3bf2063a669187b commit 026bf7f1c8e84bce40319741e3bf2063a669187b Author: Boris Faure Date: Sat Jan 1 21:47:36 2022 +0100 ci: fix shell wrapping --- .circleci/config.yml | 15 +++ 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 72f5061..1a94ccd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,9 +4,9 @@ jobs: checkout_code: docker: - image: borisfaure/terminology-ci:latest -shell: /bin/sh -leo pipefail environment: - - BASH_ENV: /etc/profile + - COLUMNS: 150 + - TERM: xterm-256color steps: - run: | cd /terminology @@ -27,9 +27,9 @@ jobs: build_and_test_debug_gcc_efl_latest: docker: - image: borisfaure/terminology-ci:latest -shell: /bin/sh -leo pipefail environment: - - BASH_ENV: /etc/profile + - COLUMNS: 150 + - TERM: xterm-256color steps: - restore_cache: key: checkout-{{ .Environment.CIRCLE_SHA1 }} @@ -69,6 +69,9 @@ jobs: build_and_test_release_gcc_efl_latest: docker: - image: borisfaure/terminology-ci:latest +environment: + - COLUMNS: 150 + - TERM: xterm-256color steps: - restore_cache: key: checkout-{{ .Environment.CIRCLE_SHA1 }} @@ -97,6 +100,8 @@ jobs: - image: borisfaure/terminology-ci:latest environment: - CC: clang + - COLUMNS: 150 + - TERM: xterm-256color steps: - restore_cache: key: checkout-{{ .Environment.CIRCLE_SHA1 }} @@ -117,6 +122,8 @@ jobs: environment: - CC: clang - CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=undefined,float-divide-by-zero,unsigned-integer-overflow,implicit-conversion,local-bounds,nullability -fno-sanitize-recover=undefined,float-divide-by-zero,unsigned-integer-overflow,implicit-conversion,local-bounds,nullability + - COLUMNS: 150 + - TERM: xterm-256color steps: - restore_cache: key: checkout-{{ .Environment.CIRCLE_SHA1 }} --
[EGIT] [apps/terminology] master 01/01: ci: only use efl latest for the moment
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=88a6b3e602a768dc3e1318874140e71f0c186a77 commit 88a6b3e602a768dc3e1318874140e71f0c186a77 Author: Boris Faure Date: Sat Jan 1 17:50:59 2022 +0100 ci: only use efl latest for the moment --- .circleci/config.yml | 60 1 file changed, 60 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e3d9c39..72f5061 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -24,57 +24,6 @@ jobs: key: checkout-{{ .Environment.CIRCLE_SHA1 }} paths: - /terminology - build_minimal_gcc_efl-1_22: -docker: - - image: borisfaure/terminology-ci:latest -steps: - - restore_cache: - key: checkout-{{ .Environment.CIRCLE_SHA1 }} - - run: - name: Install EFL - command: apk add /pkg/efl-1.22.6-r0.apk /pkg/efl-dev-1.22.6-r0.apk - - run: - name: Compile with GCC - command: | -cd /terminology -meson -Dnls=false . build -meson configure build -cd build -ninja -j4 - build_minimal_gcc_efl-1_23: -docker: - - image: borisfaure/terminology-ci:latest -steps: - - restore_cache: - key: checkout-{{ .Environment.CIRCLE_SHA1 }} - - run: - name: Install EFL - command: apk add /pkg/efl-1.23.3-r2.apk /pkg/efl-dev-1.23.3-r2.apk - - run: - name: Compile with GCC - command: | -cd /terminology -meson -Dnls=false . build -meson configure build -cd build -ninja -j4 - build_minimal_gcc_efl-1_24: -docker: - - image: borisfaure/terminology-ci:latest -steps: - - restore_cache: - key: checkout-{{ .Environment.CIRCLE_SHA1 }} - - run: - name: Install EFL - command: apk add /pkg/efl-1.24.3-r0.apk /pkg/efl-dev-1.24.3-r0.apk - - run: - name: Compile with GCC - command: | -cd /terminology -meson -Dnls=false . build -meson configure build -cd build -ninja -j4 build_and_test_debug_gcc_efl_latest: docker: - image: borisfaure/terminology-ci:latest @@ -195,15 +144,6 @@ workflows: build-and-deploy: jobs: - checkout_code - - build_minimal_gcc_efl-1_22: - requires: -- checkout_code - - build_minimal_gcc_efl-1_23: - requires: -- checkout_code - - build_minimal_gcc_efl-1_24: - requires: -- checkout_code - build_and_test_debug_gcc_efl_latest: requires: - checkout_code --
[EGIT] [apps/terminology] master 01/01: colorschemes: simplify build and allow parallel compilation
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=caba4bf828eb7073631860396698363ace4b288d commit caba4bf828eb7073631860396698363ace4b288d Author: Boris Faure Date: Thu Nov 25 00:16:14 2021 +0100 colorschemes: simplify build and allow parallel compilation --- COLORSCHEMES.md | 4 +- data/colorschemes/add_color_scheme.sh | 11 +++-- data/colorschemes/builder.sh | 14 -- data/colorschemes/meson.build | 84 +++ 4 files changed, 53 insertions(+), 60 deletions(-) diff --git a/COLORSCHEMES.md b/COLORSCHEMES.md index 1f62966..08ef522 100644 --- a/COLORSCHEMES.md +++ b/COLORSCHEMES.md @@ -104,8 +104,6 @@ proportion is configurable, like this for a 80/20 proportion: Now that we are happy with the content of `FooBar.ini`, we can call the script `add_color_scheme.sh` stored in `data/color_schemes/` as seen below: -`add_color_scheme.sh eet ~/.config/terminology/colorschemes.eet FooBar.ini` +`add_color_scheme.sh eet ~/.config/terminology/colorschemes/FooBar.eet FooBar.ini` Now you should be able to select your color scheme in Terminology! - - diff --git a/data/colorschemes/add_color_scheme.sh b/data/colorschemes/add_color_scheme.sh index 1edf5c2..37c404f 100755 --- a/data/colorschemes/add_color_scheme.sh +++ b/data/colorschemes/add_color_scheme.sh @@ -6,6 +6,8 @@ COMPRESS=1 EET=$1 shift +EET_FILE=$1 +shift INI=$1 shift @@ -14,17 +16,18 @@ GET_NAME=$(dirname "$0")/get_name.py NAME=$($GET_NAME "$INI") +# ensure output directory exists +mkdir -p "$(dirname "$EET_FILE")" + # generate desc on a temporary file TMP_DESC=$(mktemp "$NAME-DESC-XX") +TMP_EET=$(mktemp "$NAME-EET-XX") # trap to avoid creating orphan files -trap 'rm -f "$TMP_DESC"' INT TERM HUP EXIT +trap 'rm -f "$TMP_DESC" "$TMP_EET"' INT TERM HUP EXIT NAME=$($GET_NAME "$INI") -mkdir -p "data/colorschemes" -EET_FILE="data/colorschemes/$NAME.eet" - [ ! -w "$EET_FILE" ] && touch "$EET_FILE" echo "Generating $EET_FILE" diff --git a/data/colorschemes/builder.sh b/data/colorschemes/builder.sh deleted file mode 100755 index 28e778a..000 --- a/data/colorschemes/builder.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -set -e -set -u - -EET=$1 -shift -ADD_COLOR_SCHEME=$(dirname "$0")/add_color_scheme.sh - -for INI in "$@" -do - echo "Building $INI" - # use the name, without extension as key in eet - $ADD_COLOR_SCHEME "$EET" "$INI" -done diff --git a/data/colorschemes/meson.build b/data/colorschemes/meson.build index 87e4e08..c23add2 100644 --- a/data/colorschemes/meson.build +++ b/data/colorschemes/meson.build @@ -1,46 +1,52 @@ -colorschemes_desc = [ - 'Belafonte Day.ini', - 'Belafonte Night.ini', - 'Black.ini', - 'Cobalt2.ini', - 'Dracula.ini', - 'Fahrenheit.ini', - 'Material.ini', - 'Mild.ini', - 'Mustang.ini', - 'Nord.ini', - 'Ocean Dark.ini', - 'One Dark.ini', - 'PaleNight.ini', - 'PaperColor.ini', - 'Smyck.ini', - 'Soft Era.ini', - 'Solarized.ini', - 'Solarized Light.ini', - 'Tango Dark.ini', - 'Tango Light.ini', - 'Tomorrow Night Burns.ini', +colorschemes = [ + 'Belafonte Day', + 'Belafonte Night', + 'Black', + 'Cobalt2', + 'Dracula', + 'Fahrenheit', + 'Material', + 'Mild', + 'Mustang', + 'Nord', + 'Ocean Dark', + 'One Dark', + 'PaleNight', + 'PaperColor', + 'Smyck', + 'Soft Era', + 'Solarized', + 'Solarized Light', + 'Tango Dark', + 'Tango Light', + 'Tomorrow Night Burns', ] -colorschemes_out = [] +add_color_scheme_sh = find_program( + 'add_color_scheme.sh', + native: false, + required: true, + dirs: [join_paths(meson.source_root(), 'data', 'colorschemes')]) -foreach c : colorschemes_desc - colorschemes_out += c.replace('ini','eet') -endforeach +cs_builder = [add_color_scheme_sh, + eet_bin, '@OUTPUT@', '@INPUT@'] -cs_builder = [join_paths(meson.source_root(), - 'data', 'colorschemes', 'builder.sh'), - eet_bin, '@INPUT@'] cs_install_dir = join_paths(get_option('datadir'), - meson.project_name(), - 'colorschemes') + meson.project_name()) + +cs_install_dir = join_paths( + get_option('datadir'), + meson.project_name(), + 'colorschemes') -custom_target('colorschemes', - install:true, - install_dir: cs_install_dir, - install_mode: 'rw-r--r--', - depend_files: ['builder.sh', 'ini2desc.py', 'get_name.py', 'add_color_scheme.sh'], - command: cs_builder, - input: colorschemes_desc, - output: colorschemes_out) +foreach c : colorschemes + custom_target(c, +install:true, +install_dir: cs_install_dir, +install_mode: 'rw-r--r--', +depend_files : ['ini2desc.py', 'get_name.py', 'add_color_scheme.sh'], +command: cs_builder, +input: [c + '.ini'], +output: [c + '.eet']) +endforeach --
[EGIT] [admin/devs] master 01/01: billiob: changing laptop
billiob pushed a commit to branch master. http://git.enlightenment.org/admin/devs.git/commit/?id=a31f4359741a95a8acb7cc2457a573762aa1adff commit a31f4359741a95a8acb7cc2457a573762aa1adff Author: Boris Faure Date: Tue Nov 23 22:55:51 2021 +0100 billiob: changing laptop --- developers/billiob/id_ed25519_caipirinha.pub | 1 - developers/billiob/id_ed25519_lugh.pub | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/developers/billiob/id_ed25519_caipirinha.pub b/developers/billiob/id_ed25519_caipirinha.pub deleted file mode 100644 index 45614ec..000 --- a/developers/billiob/id_ed25519_caipirinha.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-ed25519 C3NzaC1lZDI1NTE5IHcfe2TPrbEHVsCdYe4jUQCbelSX76sdKlQQ9Fe+C24C boris@caipirinha diff --git a/developers/billiob/id_ed25519_lugh.pub b/developers/billiob/id_ed25519_lugh.pub new file mode 100644 index 000..f78553c --- /dev/null +++ b/developers/billiob/id_ed25519_lugh.pub @@ -0,0 +1 @@ +ssh-ed25519 C3NzaC1lZDI1NTE5IOqU9niztZC7Sp01T1O/g+QoZCtD790iR0yFSoO1O6a4 boris@lugh --
[E-devel] Terminology 1.11.0
== “You cannot swim for new horizons until you have courage to lose sight of the shore.” William Faulkner == Hello fellow Terminology enthusiasts! Today (11/11) is the perfect time to release Terminology v1.11.0. Not a lot of changes, but why should we wait before enjoying them? The detailed change log lists them below: == Additions == * Support for focus reporting escape codes == Improvements == * Translation updates for Finnish and Ukrainian == Fixes == * Fix handling of escape code OSC 11 == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.11.0.tar.xz - https://downloads.terminolo.gy/terminology-1.11.0.tar.xz sha256sum: 4fd884bd2ffbbc86d87163063074fbd969be04b17bb8d7e23cd1f6708fd86a2d Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [website/www-content] master 01/01: download: terminology 1.11.0
billiob pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=e14a4e7f96fcc9d21bcee6ddfc88196fc0ba1ab6 commit e14a4e7f96fcc9d21bcee6ddfc88196fc0ba1ab6 Author: Boris Faure Date: Thu Nov 11 20:18:03 2021 +0100 download: terminology 1.11.0 --- pages/download-latest.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/download-latest.txt b/pages/download-latest.txt index 75d301469..f896a9e12 100644 --- a/pages/download-latest.txt +++ b/pages/download-latest.txt @@ -3,7 +3,7 @@ efl_v = 1.25.1 python_efl_v = 1.25.0 enlightenment_v = 0.24.2 -terminology_v = 1.10.0 +terminology_v = 1.11.0 rage_v= 0.3.1 econnman_v= 1.1 ephoto_v = 1.5 --
[EGIT] [apps/terminology] master 01/02: update pot/po
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=2f6185578bfdda73f26267d65aa72b22f455d0f3 commit 2f6185578bfdda73f26267d65aa72b22f455d0f3 Author: Boris Faure Date: Thu Nov 11 19:12:09 2021 +0100 update pot/po --- po/ca.po | 26 +- po/da.po | 26 +- po/de.po | 26 +- po/el.po | 26 +- po/eo.po | 26 +- po/es.po | 26 +- po/fi.po | 31 +++ po/fr.po | 26 +- po/he.po | 26 +- po/hi.po | 26 +- po/hr.po | 26 +- po/it.po | 26 +- po/ja.po | 26 +- po/ko.po | 26 +- po/ms.po | 26 +- po/nb_NO.po| 26 +- po/nl.po | 26 +- po/pl.po | 26 +- po/pt.po | 26 +- po/pt_BR.po| 26 +- po/ru.po | 26 +- po/si.po | 26 +- po/sl.po | 26 +- po/sr.po | 26 +- po/sv.po | 26 +- po/terminology.pot | 26 +- po/tr.po | 26 +- po/uk.po | 26 +- po/vi.po | 26 +- po/zh_Hans.po | 26 +- 30 files changed, 392 insertions(+), 393 deletions(-) diff --git a/po/ca.po b/po/ca.po index 607bdcc..e8ce1c2 100644 --- a/po/ca.po +++ b/po/ca.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: enlightenment\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-14 21:18+0200\n" +"POT-Creation-Date: 2021-11-11 19:11+0100\n" "PO-Revision-Date: 2020-09-16 21:34+\n" "Last-Translator: Boris Faure \n" "Language-Team: Catalan <https://hosted.weblate.org/projects/terminology/; @@ -20,13 +20,13 @@ msgstr "" "X-Generator: Weblate 4.3-dev\n" "X-Launchpad-Export-Date: 2015-05-04 05:16+\n" -#: src/bin/about.c:129 src/bin/about.c:204 src/bin/termio.c:1288 -#: src/bin/termio.c:1297 +#: src/bin/about.c:129 src/bin/about.c:204 src/bin/termio.c:1297 +#: src/bin/termio.c:1306 #, fuzzy, c-format msgid "Copy '%s'" msgstr "Còpia '%s'" -#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1360 +#: src/bin/about.c:134 src/bin/about.c:209 src/bin/termio.c:1369 msgid "Open" msgstr "Obre" @@ -83,7 +83,7 @@ msgstr "Minivista" msgid "Set title" msgstr "Anomena la finestra" -#: src/bin/controls.c:424 src/bin/termio.c:1374 src/bin/termio.c:2778 +#: src/bin/controls.c:424 src/bin/termio.c:1383 src/bin/termio.c:2789 msgid "Copy" msgstr "Còpia" @@ -941,38 +941,38 @@ msgstr "No s'ha pogut llegir el fitxer de fons de pantalla: %s" msgid "Unknown command: %s" msgstr "Ordre desconeguda: %s" -#: src/bin/termio.c:451 +#: src/bin/termio.c:460 #, c-format msgid "Could not get working directory of pid %i: %s" msgstr "No s'ha pogut obtenir el directori de treball amb pid %i: %s" -#: src/bin/termio.c:466 +#: src/bin/termio.c:475 #, c-format msgid "Could not load working directory %s: %s" msgstr "No s'ha pogut carregar el directori de treball %s: %s" -#: src/bin/termio.c:1196 +#: src/bin/termio.c:1205 #, c-format msgid "unsupported selection format '%s'" msgstr "format de selecció no permès '%s'" -#: src/bin/termio.c:1357 +#: src/bin/termio.c:1366 msgid "Preview" msgstr "Previsualitza" -#: src/bin/termio.c:1367 +#: src/bin/termio.c:1376 msgid "Copy relative path" msgstr "Copia ruta relativa" -#: src/bin/termio.c:1369 +#: src/bin/termio.c:1378 msgid "Copy full path" msgstr "Copia ruta completa" -#: src/bin/termio.c:2780 +#: src/bin/termio.c:2791 msgid "Open as URL" msgstr "Obre com a URL" -#: src/bin/termio.c:4223 +#: src/bin/termio.c:4234 msgid "Could not allocate termpty" msgstr "No s'ha ubicat termpty" diff --git a/po/da.po b/po/da.po index 1b0774b..c5cda3f 100644 --- a/po/da.po +++ b/po/da.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: terminology 1.1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Cre
[EGIT] [apps/terminology] master 02/02: Terminology 1.11.0
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=1adc9116f16a9ce140d00ca5f94437401af96391 commit 1adc9116f16a9ce140d00ca5f94437401af96391 Author: Boris Faure Date: Thu Nov 11 19:52:35 2021 +0100 Terminology 1.11.0 --- ChangeLog | 7 +++ NEWS | 15 ++- README.md | 2 +- man/terminology-helpers.1 | 2 +- man/terminology.1 | 2 +- meson.build | 2 +- tests/tests.results | 2 +- 7 files changed, 26 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index a479ce3..1f42e6c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,11 @@ +2021-11-11 +* Release v1.11.0 +* Support for focus reporting escape codes +* Translation updates for Finnish and Ukrainian +* Fix handling of escape code OSC 11 + 2021-10-03 +* Release v1.10.0 * Colorshemes: add Black scheme * New translations: Sinhala, Hebrew * Translation updates for Chinese (Simplified), Croatian, Danish, diff --git a/NEWS b/NEWS index e859379..cc0484b 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,21 @@ == -Terminology 1.10.0 +Terminology 1.11.0 == +Changes since 1.10.0: + + +Additions: +* Support for focus reporting escape codes + +Improvements: +* Translation updates for Finnish and Ukrainian + +Fixes: +* Fix handling of escape code OSC 11 + + Changes since 1.9.0: diff --git a/README.md b/README.md index d45466c..535f18e 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Terminology 1.10.0 +Terminology 1.11.0 == This is an EFL terminal emulator with some extra bells and whistles. diff --git a/man/terminology-helpers.1 b/man/terminology-helpers.1 index eb4d3c4..033c767 100644 --- a/man/terminology-helpers.1 +++ b/man/terminology-helpers.1 @@ -1,5 +1,5 @@ .\" Manpage for terminology helpers -.TH TERMINOLOGY-HELPERS 1 "Oct 03, 2021" +.TH TERMINOLOGY-HELPERS 1 "Nov 11, 2021" .SH NAME terminiology-helpers \- programs that enhance .B terminology(1) diff --git a/man/terminology.1 b/man/terminology.1 index 663e0fa..c685728 100644 --- a/man/terminology.1 +++ b/man/terminology.1 @@ -1,5 +1,5 @@ .\" Manpage for Terminology -.TH TERMINOLOGY 1 "Oct 03, 2021" "1.10.0" "Terminology man page" +.TH TERMINOLOGY 1 "Nov 11, 2021" "1.11.0" "Terminology man page" .SH NAME Terminology \- Terminal Emulator written with EFL (Enlightenment Foundation Libraries). .SH SYNOPSIS diff --git a/meson.build b/meson.build index 81b5d77..c05ade0 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('terminology', 'c', -version: '1.10.99', +version: '1.11.0', default_options: ['buildtype=plain', 'c_std=gnu99'], license: 'BSD') diff --git a/tests/tests.results b/tests/tests.results index 328c9f5..79a3a86 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,4 @@ -esc_term_name_version.sh b027d478df4b9a82bd7819750fd52050 +esc_term_name_version.sh f3974006782bc38bb3b8755e1255cbd9 decfra-no-restrict-cursor.sh 10e91417532188a4b1e81408273591ac decfra-restrict-cursor.sh 5b84d38a1d924cf36c0ed1ab2c302f37 decera-no-restrict-cursor.sh cc60dadaa0c888af93f2235119d18db7 --
[EGIT] [website/www-content] master 01/01: Wiki page 2021-11-11-terminology-1.11.0 changed with summary [created] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=e74e82254e2466dbe9e8bb39adb5d81d500c95d3 commit e74e82254e2466dbe9e8bb39adb5d81d500c95d3 Author: Boris Faure Date: Thu Nov 11 11:16:49 2021 -0800 Wiki page 2021-11-11-terminology-1.11.0 changed with summary [created] by Boris Faure --- pages/news/2021-11-11-terminology-1.11.0.txt | 24 1 file changed, 24 insertions(+) diff --git a/pages/news/2021-11-11-terminology-1.11.0.txt b/pages/news/2021-11-11-terminology-1.11.0.txt new file mode 100644 index 0..463941290 --- /dev/null +++ b/pages/news/2021-11-11-terminology-1.11.0.txt @@ -0,0 +1,24 @@ +=== Terminology 1.11.0 release === + * //2021-11-11 - by Boris Faure// + +> “You cannot swim for new horizons until you have courage to lose sight of the shore.” ― William Faulkner + +Today (11/11) is the perfect time to release Terminology v1.11.0. Not a lot +of changes, but why should we wait before enjoying them? + +The detailed change log lists them below: +== Additions == +* Support for focus reporting escape codes +== Improvements == +* Translation updates for Finnish and Ukrainian +== Fixes == +* Fix handling of escape code ``OSC 11`` + +== Download == +^ ** LINK ** ^ ** SHA256 ** ^ +| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.11.0.tar.xz | Terminology 1.11.0 XZ]] | ''4fd884bd2ffbbc86d87163063074fbd969be04b17bb8d7e23cd1f6708fd86a2d'' | + + + +{{:blank.png?nolink&100|}} +~~DISCUSSIONS~~ \ No newline at end of file --
[EGIT] [apps/terminology] master 04/04: termptyesc: add focus reporting
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=fe47376460948da424a13e09e27c73d4894c7bfb commit fe47376460948da424a13e09e27c73d4894c7bfb Author: Boris Faure Date: Tue Nov 2 23:28:37 2021 +0100 termptyesc: add focus reporting --- src/bin/termio.c | 2 ++ src/bin/termpty.c| 11 +++ src/bin/termpty.h| 3 +++ src/bin/termptyesc.c | 14 +++--- 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index 922..9602b59 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -2548,6 +2548,7 @@ termio_focus_in(Evas_Object *termio) else edje_object_signal_emit(sd->cursor.obj, "focus,in", "terminology"); if (!sd->win) return; + termpty_focus_report(sd->pty, EINA_TRUE); } void @@ -2562,6 +2563,7 @@ termio_focus_out(Evas_Object *termio) sd->pty->selection.last_click = 0; if (!sd->ctxpopup) termio_remove_links(sd); + termpty_focus_report(sd->pty, EINA_FALSE); term_unfocus(sd->term); } diff --git a/src/bin/termpty.c b/src/bin/termpty.c index 7ae4705..90cb84f 100644 --- a/src/bin/termpty.c +++ b/src/bin/termpty.c @@ -1733,6 +1733,17 @@ hl_bitmap_clear_bit(Termpty *ty, uint16_t id) *pos &= ~bit; } +void +termpty_focus_report(Termpty *ty, Eina_Bool focus) +{ + if (!ty || !ty->focus_reporting) + return; + if (focus) + TERMPTY_WRITE_STR("\033[I"); + else + TERMPTY_WRITE_STR("\033[O"); +} + Term_Link * term_link_new(Termpty *ty) { diff --git a/src/bin/termpty.h b/src/bin/termpty.h index 31ba5e8..64b4a30 100644 --- a/src/bin/termpty.h +++ b/src/bin/termpty.h @@ -203,6 +203,7 @@ struct _Termpty unsigned int mouse_ext : 2; unsigned int bracketed_paste : 1; unsigned int decoding_error : 1; + unsigned int focus_reporting : 1; struct { Term_Link *links; uint8_t *bitmap; @@ -315,6 +316,8 @@ void term_link_free(Termpty *ty, Term_Link *link); int termpty_color_class_get(Termpty *ty, const char *key, int *r, int *g, int *b, int *a); +void +termpty_focus_report(Termpty *ty, Eina_Bool focus); extern int _termpty_log_dom; diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index a15dc73..530bdef 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -467,9 +467,17 @@ _handle_esc_csi_reset_mode(Termpty *ty, Eina_Unicode cc, Eina_Unicode *b, else ty->mouse_mode = MOUSE_OFF; DBG("set mouse (press+release+all motion) %i", mode); break; -case 1004: // I don't know what focus reporting is? - WRN("TODO: enable focus reporting %i", mode); - ty->decoding_error = EINA_TRUE; +case 1004: + DBG("%s focus reporting", mode ? "enable" : "disable"); + if (mode) + { +ty->focus_reporting = EINA_TRUE; +termpty_focus_report(ty, termio_is_focused(ty->obj)); + } + else + { +ty->focus_reporting = EINA_FALSE; + } break; case 1005: if (mode) ty->mouse_ext = MOUSE_EXT_UTF8; --
[EGIT] [apps/terminology] master 03/04: termptyesc: use Eina_Bool for booleans
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=93b6d77944d31461fbcf1c3784164b5cb8142706 commit 93b6d77944d31461fbcf1c3784164b5cb8142706 Author: Boris Faure Date: Tue Nov 2 23:28:04 2021 +0100 termptyesc: use Eina_Bool for booleans --- src/bin/termptyesc.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 67c183e..a15dc73 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -282,13 +282,15 @@ static void _handle_esc_csi_reset_mode(Termpty *ty, Eina_Unicode cc, Eina_Unicode *b, const Eina_Unicode * const end) { - int mode = 0, priv = 0, arg; + Eina_Bool mode = EINA_FALSE; + Eina_Bool priv = EINA_FALSE; + int arg; if (cc == 'h') - mode = 1; + mode = EINA_TRUE; if (*b == '?') { -priv = 1; +priv = EINA_TRUE; b++; } if (priv) /* DEC Private Mode Reset (DECRST) */ --
[EGIT] [apps/terminology] master 01/04: termio: add termio_is_focused()
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=0901c85da44626b8c1f84c8c054200b0e1940e5a commit 0901c85da44626b8c1f84c8c054200b0e1940e5a Author: Boris Faure Date: Tue Nov 2 23:26:40 2021 +0100 termio: add termio_is_focused() --- src/bin/termio.c| 9 + src/bin/termio.h| 1 + src/bin/tytest_common.c | 6 ++ 3 files changed, 16 insertions(+) diff --git a/src/bin/termio.c b/src/bin/termio.c index b247ab3..922 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -350,6 +350,15 @@ termio_term_get(const Evas_Object *obj) return sd->term; } +Eina_Bool +termio_is_focused(const Evas_Object *obj) +{ + Termio *sd = evas_object_smart_data_get(obj); + EINA_SAFETY_ON_NULL_RETURN_VAL(sd, EINA_FALSE); + + return term_is_focused(sd->term); +} + Evas_Object * termio_bg_get(const Evas_Object *obj) { diff --git a/src/bin/termio.h b/src/bin/termio.h index 8093883..9a5a64d 100644 --- a/src/bin/termio.h +++ b/src/bin/termio.h @@ -65,6 +65,7 @@ termio_imf_cursor_set(Evas_Object *obj, Ecore_IMF_Context *imf); Termpty *termio_pty_get(const Evas_Object *obj); Evas_Object * termio_miniview_get(const Evas_Object *obj); Term* termio_term_get(const Evas_Object *obj); +Eina_Bool termio_is_focused(const Evas_Object *obj); Evas_Object *termio_bg_get(const Evas_Object *obj); void termio_key_down(Evas_Object *termio, diff --git a/src/bin/tytest_common.c b/src/bin/tytest_common.c index d64d357..3aa910f 100644 --- a/src/bin/tytest_common.c +++ b/src/bin/tytest_common.c @@ -390,6 +390,12 @@ test_textgrid_palette_get(const Evas_Object *obj EINA_UNUSED, } #endif +Eina_Bool +termio_is_focused(const Evas_Object *obj EINA_UNUSED) +{ + return EINA_FALSE; +} + static void _termpty_init(Termpty *ty, Config *config) { --
[EGIT] [apps/terminology] master 02/04: termpty: move TERMPTY_WRITE_STR() to header
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=4196fc944bd888f5f7e34e9dd66f04018fb79f25 commit 4196fc944bd888f5f7e34e9dd66f04018fb79f25 Author: Boris Faure Date: Tue Nov 2 23:27:29 2021 +0100 termpty: move TERMPTY_WRITE_STR() to header --- src/bin/termpty.h| 4 src/bin/termptyesc.c | 6 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/bin/termpty.h b/src/bin/termpty.h index afc7a17..31ba5e8 100644 --- a/src/bin/termpty.h +++ b/src/bin/termpty.h @@ -281,7 +281,11 @@ void termpty_config_update(Termpty *ty, Config *config); Termcell *termpty_cellrow_get(Termpty *ty, int y, ssize_t *wret); Termcell * termpty_cell_get(Termpty *ty, int y_requested, int x_requested); ssize_t termpty_row_length(Termpty *ty, int y); + +#define TERMPTY_WRITE_STR(_S) \ + termpty_write(ty, _S, strlen(_S)) void termpty_write(Termpty *ty, const char *input, int len); + void termpty_resize(Termpty *ty, int new_w, int new_h); void termpty_resize_tabs(Termpty *ty, int old_w, int new_w); void termpty_backscroll_adjust(Termpty *ty, int *scroll); diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index d8d6750..67c183e 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -33,9 +33,6 @@ #define OSC 0x9d #define DEL 0x7f -#define TERMPTY_WRITE_STR(_S) \ - termpty_write(ty, _S, strlen(_S)) - /* XXX: all handle_ functions return the number of bytes successfully read, 0 * if not enough bytes could be read @@ -1376,8 +1373,7 @@ _handle_esc_csi_dsr(Termpty *ty, Eina_Unicode *b) { /* DSR-OS (Operating Status) * Reply Ok */ - termpty_write(ty, "\033[0n", -strlen("\033[0n")); + TERMPTY_WRITE_STR("\033[0n"); } break; case 6: --
[EGIT] [apps/terminology] master 01/01: termptyesc: better reply on OSC11
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=4b92a24651c818a9edf47790f140c3fabc800f8b commit 4b92a24651c818a9edf47790f140c3fabc800f8b Author: Boris Faure Date: Sat Oct 23 20:33:12 2021 +0200 termptyesc: better reply on OSC11 --- src/bin/termptyesc.c | 2 +- tests/tests.results | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 0f61aaa..d8d6750 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -4183,7 +4183,7 @@ _handle_xterm_set_color_class(Termpty *ty, Eina_Unicode *p, int len, ERR("error getting color class '%s' on obj %p", color_class, obj); } l = snprintf(buf, sizeof(buf), - "\033]%d;rgb:%.2x%.2x/%.2x%.2x/%.2x%.2x\007", + "\033]%d;rgb:%.2x%.2x/%.2x%.2x/%.2x%.2x\033\\", number, r, r, g, g, b, b); termpty_write(ty, buf, l); } diff --git a/tests/tests.results b/tests/tests.results index 683fef0..328c9f5 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -119,7 +119,7 @@ mouse_reporting_mode_normal_ext_urxvt.sh bf68099047410f102e71d2e451875c69 mouse_reporting_mode_mouse_move_pressed_ext_urxvt.sh 59f3e59b60b3a43260de6a80135489eb mouse_reporting_mode_all_ext_urxvt.sh a11bbc8ebea42d06cc3ad823b52c09b3 shift_in_out.sh 3896bcc6887998bbc41b43840a6b2e33 c3bb903237d9ef40d39ec07f328d922a -osc-11-query.sh 369e4e03be35dcb360e45d13fcd7da61 +osc-11-query.sh b762d503e40641ff896dac46391ad7a8 link_detection.sh bbe87a849586e8b922f26ad5d88146dc selection_with_tabs.sh 23557497a8f28ca246048bb2443b3dab selection_empty_lines.sh 7a90d9bfde9e9fb7f067f6c08eac57ff @@ -144,8 +144,8 @@ color_link_css_rgb.sh c1f5a5b4f3d87b710aed59f72439a645 color_link_css_hsl.sh fc9bda72bd4eea5e9414ef9755ae176a crash_empty_osc.sh b87272896ce7be9856253b32be1bef14 xterm-osc-10.sh b8c23c9c5482b1e9c30d8a261edc29f0 -xterm-osc-11.sh 29deaf351c40843f5280b78bf3009985 -xterm-osc-12.sh 400cffeb5f55fabecacb97f00ddc2128 +xterm-osc-11.sh 3e02038964b78d948fb599c996bf370d +xterm-osc-12.sh 5cdd71681d6b8e60091c1ecde4214709 xterm-colors-sharp.sh 79d6f72df04237d76a0fa3e722dcec5b xterm-colors-rgb.sh d9b55817ef8428343105b44dabd535a8 xterm-colors-rgbi.sh d9b55817ef8428343105b44dabd535a8 --
[EGIT] [apps/terminology] master 03/04: on the road again
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=e3a5697fce8e4d67ec3f24fa02f528ba5454657b commit e3a5697fce8e4d67ec3f24fa02f528ba5454657b Author: Boris Faure Date: Tue Oct 12 21:56:54 2021 +0200 on the road again --- meson.build | 2 +- tests/tests.results | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index 25245a3..81b5d77 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('terminology', 'c', -version: '1.10.0', +version: '1.10.99', default_options: ['buildtype=plain', 'c_std=gnu99'], license: 'BSD') diff --git a/tests/tests.results b/tests/tests.results index dff0194..683fef0 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,4 @@ -esc_term_name_version.sh 3886215cbff4d62c4a63750a6337e342 +esc_term_name_version.sh b027d478df4b9a82bd7819750fd52050 decfra-no-restrict-cursor.sh 10e91417532188a4b1e81408273591ac decfra-restrict-cursor.sh 5b84d38a1d924cf36c0ed1ab2c302f37 decera-no-restrict-cursor.sh cc60dadaa0c888af93f2235119d18db7 --
[EGIT] [apps/terminology] master 04/04: Merge remote-tracking branch 'weblate/master'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=fadc547652a967bea8c325641c8edfa1b9e874aa commit fadc547652a967bea8c325641c8edfa1b9e874aa Merge: e3a5697 5eff822 Author: Boris Faure Date: Tue Oct 12 21:58:29 2021 +0200 Merge remote-tracking branch 'weblate/master' po/fi.po | 278 --- po/uk.po | 6 +- 2 files changed, 126 insertions(+), 158 deletions(-) --
[E-devel] Terminology 1.10.0
== “You have power over your mind - not outside events. Realize this, and you will find strength.” Marcus Aurelius, Meditations == Hello fellow Terminology enthusiasts! It's time to give you an other release of Terminology! The detailed change log lists them below: == Additions == * Colorshemes: add Black scheme * New translations: Sinhala, Hebrew == Improvements == * Translation updates for Chinese (Simplified), Croatian, Danish, French, Greek, Italian, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian * Focus font search in the Font settings panel == Fixes == * Fix issue when configuration was marked as Temporary * Stop jumping down to the bottom when configuration changed * Respect login shell on start * Fix drag'n'drop of paths or media on the terminal * Fix libintl detection == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.10.0.tar.xz - https://downloads.terminolo.gy/terminology-1.10.0.tar.xz sha256sum: 5faf658a8656df753a93a3147c0d35f5c77549f1954b48dc1f5a4b36253bb346 Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [website/www-content] master 01/01: Wiki page 2021-10-03-terminology-1.10.0 changed with summary [typo] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=9a8a0c27c8e26b9d5b4859d710b0bdcf27367e08 commit 9a8a0c27c8e26b9d5b4859d710b0bdcf27367e08 Author: Boris Faure Date: Sun Oct 3 12:31:18 2021 -0700 Wiki page 2021-10-03-terminology-1.10.0 changed with summary [typo] by Boris Faure --- pages/news/2021-10-03-terminology-1.10.0.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/news/2021-10-03-terminology-1.10.0.txt b/pages/news/2021-10-03-terminology-1.10.0.txt index 7be89102c..cb7243286 100644 --- a/pages/news/2021-10-03-terminology-1.10.0.txt +++ b/pages/news/2021-10-03-terminology-1.10.0.txt @@ -3,7 +3,7 @@ > “You have power over your mind - not outside events. Realize this, and you > will find strength.” ― Marcus Aurelius, Meditations -It's time to give you an other release of Terminology! +It's time to give you another release of Terminology! The detailed change log lists them below: --
[EGIT] [website/www-content] master 01/01: Wiki page 2021-10-03-terminology-1.10.0 changed with summary [Terminology 1.10.0 release] by Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=60aac63bc3a26cd625e87979ed2f7abf42fc09d5 commit 60aac63bc3a26cd625e87979ed2f7abf42fc09d5 Author: Boris Faure Date: Sun Oct 3 12:18:07 2021 -0700 Wiki page 2021-10-03-terminology-1.10.0 changed with summary [Terminology 1.10.0 release] by Boris Faure --- pages/news/2021-10-03-terminology-1.10.0.txt | 32 1 file changed, 32 insertions(+) diff --git a/pages/news/2021-10-03-terminology-1.10.0.txt b/pages/news/2021-10-03-terminology-1.10.0.txt new file mode 100644 index 0..7be89102c --- /dev/null +++ b/pages/news/2021-10-03-terminology-1.10.0.txt @@ -0,0 +1,32 @@ +=== Terminology 1.10.0 release === + * //2021-10-03 - by Boris Faure// + +> “You have power over your mind - not outside events. Realize this, and you will find strength.” ― Marcus Aurelius, Meditations + +It's time to give you an other release of Terminology! + +The detailed change log lists them below: + + == Additions == + * Colorshemes: add Black scheme + * New translations: Sinhala, Hebrew + == Improvements == + * Translation updates for Chinese (Simplified), Croatian, Danish, French, Greek, Italian, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian + * Focus font search in the Font settings panel + == Fixes == + * Fix issue when configuration was marked as Temporary + * Stop jumping down to the bottom when configuration changed + * Respect login shell on start + * Fix drag'n'drop of paths or media on the terminal + + +== Download == + +^ ** LINK ** ^ ** SHA256 ** ^ +| [[ https://download.enlightenment.org/rel/apps/terminology/terminology-1.10.0.tar.xz | Terminology 1.10.0 XZ]] | ''5faf658a8656df753a93a3147c0d35f5c77549f1954b48dc1f5a4b36253bb346'' | + + + +{{:blank.png?nolink&100|}} +~~DISCUSSIONS~~ + --
[EGIT] [website/www-content] master 01/01: terminology-1.10.0
billiob pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=32057d4a5a98979409815ef27ee48b6607362e8f commit 32057d4a5a98979409815ef27ee48b6607362e8f Author: Boris Faure Date: Sun Oct 3 20:57:45 2021 +0200 terminology-1.10.0 --- pages/download-latest.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/download-latest.txt b/pages/download-latest.txt index 9831b1c75..75d301469 100644 --- a/pages/download-latest.txt +++ b/pages/download-latest.txt @@ -3,7 +3,7 @@ efl_v = 1.25.1 python_efl_v = 1.25.0 enlightenment_v = 0.24.2 -terminology_v = 1.9.0 +terminology_v = 1.10.0 rage_v= 0.3.1 econnman_v= 1.1 ephoto_v = 1.5 --
[EGIT] [apps/terminology] master 01/01: Terminology 1.10.0
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=673c63693ca3c648704bed51d87b1028d21b81c3 commit 673c63693ca3c648704bed51d87b1028d21b81c3 Author: Boris Faure Date: Sun Oct 3 21:11:56 2021 +0200 Terminology 1.10.0 --- ChangeLog | 13 + NEWS | 27 --- README.md | 4 ++-- man/terminology-helpers.1 | 2 +- man/terminology.1 | 2 +- meson.build | 2 +- tests/tests.results | 2 +- 7 files changed, 43 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index bcff87a..a479ce3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2021-10-03 +* Colorshemes: add Black scheme +* New translations: Sinhala, Hebrew +* Translation updates for Chinese (Simplified), Croatian, Danish, + French, Greek, Italian, Norwegian Bokmål, Polish, Portuguese, + Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian +* Focus font search in the Font settings panel +* Fix issue when configuration was marked as Temporary +* Stop jumping down to the botton when configuration changed +* Respect login shell on start +* Fix drag'n'drop of paths or media on the terminal +* Fix libintl detection + 2021-01-18 * Release v1.9.0 * Colorshemes: easily change the colors of the terminal diff --git a/NEWS b/NEWS index 5d462ab..e859379 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,27 @@ -= -Terminology 1.9.0 -= +== +Terminology 1.10.0 +== + + +Changes since 1.9.0: + + +Additions: +* Colorshemes: add Black scheme +* New translations: Sinhala, Hebrew + +Improvements: +* Translation updates for Chinese (Simplified), Croatian, Danish, French, + Greek, Italian, Norwegian Bokmål, Polish, Portuguese, + Portuguese (Brazil), Russian, Spanish, Swedish, Ukrainian +* Focus font search in the Font settings panel + +Fixes: +* Fix issue when configuration was marked as Temporary +* Stop jumping down to the botton when configuration changed +* Respect login shell on start +* Fix drag'n'drop of paths or media on the terminal +* Fix libintl detection Changes since 1.8.1: diff --git a/README.md b/README.md index 4bcc348..d45466c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -Terminology 1.9.0 -= +Terminology 1.10.0 +== This is an EFL terminal emulator with some extra bells and whistles. diff --git a/man/terminology-helpers.1 b/man/terminology-helpers.1 index 0b0b129..eb4d3c4 100644 --- a/man/terminology-helpers.1 +++ b/man/terminology-helpers.1 @@ -1,5 +1,5 @@ .\" Manpage for terminology helpers -.TH TERMINOLOGY-HELPERS 1 "Jan 18, 2021" +.TH TERMINOLOGY-HELPERS 1 "Oct 03, 2021" .SH NAME terminiology-helpers \- programs that enhance .B terminology(1) diff --git a/man/terminology.1 b/man/terminology.1 index 01cb847..663e0fa 100644 --- a/man/terminology.1 +++ b/man/terminology.1 @@ -1,5 +1,5 @@ .\" Manpage for Terminology -.TH TERMINOLOGY 1 "Jan 18, 2021" "1.9.0" "Terminology man page" +.TH TERMINOLOGY 1 "Oct 03, 2021" "1.10.0" "Terminology man page" .SH NAME Terminology \- Terminal Emulator written with EFL (Enlightenment Foundation Libraries). .SH SYNOPSIS diff --git a/meson.build b/meson.build index 74158bb..25245a3 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('terminology', 'c', -version: '1.9.99', +version: '1.10.0', default_options: ['buildtype=plain', 'c_std=gnu99'], license: 'BSD') diff --git a/tests/tests.results b/tests/tests.results index e8c94df..dff0194 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -1,4 +1,4 @@ -esc_term_name_version.sh 6f1f7e866d7bdd6742f023f9f0cbb5d7 +esc_term_name_version.sh 3886215cbff4d62c4a63750a6337e342 decfra-no-restrict-cursor.sh 10e91417532188a4b1e81408273591ac decfra-restrict-cursor.sh 5b84d38a1d924cf36c0ed1ab2c302f37 decera-no-restrict-cursor.sh cc60dadaa0c888af93f2235119d18db7 --
[EGIT] [apps/terminology] master 01/01: meson: fix libintl detection
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=f11b69882808251577938fe8d520de4ad41a896c commit f11b69882808251577938fe8d520de4ad41a896c Author: Boris Faure Date: Wed Sep 29 21:37:21 2021 +0200 meson: fix libintl detection Related to D12291 --- meson.build | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index 904..74158bb 100644 --- a/meson.build +++ b/meson.build @@ -66,8 +66,12 @@ edj_files = [] if get_option('nls') == true subdir('po') # need both cause libintl may be included in glibc or not - terminology_dependencies += dependency('intl', required: false) - terminology_dependencies += cc.find_library('intl', required: false) + dep = dependency('intl', required: false) + if dep.found() +terminology_dependencies += dep + else +terminology_dependencies += cc.find_library('intl', required: false) + endif endif foreach efl_dep: efl_deps --
[EGIT] [apps/terminology] master 01/01: meson.build: use dependency() & cc.find_library() to find intl
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=a6b654ea836b24f6cc4d19ee7d49b4ad7ba593fc commit a6b654ea836b24f6cc4d19ee7d49b4ad7ba593fc Author: Boris Faure Date: Mon Sep 20 20:26:53 2021 +0200 meson.build: use dependency() & cc.find_library() to find intl --- meson.build | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 6a2502d..904 100644 --- a/meson.build +++ b/meson.build @@ -65,7 +65,9 @@ edj_files = [] if get_option('nls') == true subdir('po') - terminology_dependencies += dependency('intl', required: true) + # need both cause libintl may be included in glibc or not + terminology_dependencies += dependency('intl', required: false) + terminology_dependencies += cc.find_library('intl', required: false) endif foreach efl_dep: efl_deps --
[EGIT] [apps/terminology] master 01/01: circleci: typo
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=280b8c143f93cbb01b11bcce2a8ddff7805be392 commit 280b8c143f93cbb01b11bcce2a8ddff7805be392 Author: Boris Faure Date: Sun Sep 19 22:13:34 2021 +0200 circleci: typo --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 6ae3b8a..e3d9c39 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -37,7 +37,7 @@ jobs: name: Compile with GCC command: | cd /terminology -meson -Dnls=false. build +meson -Dnls=false . build meson configure build cd build ninja -j4 --
[EGIT] [apps/terminology] master 01/02: circleci: do not compile with nls on alpine
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=0d0c98364d2111fea23628682d2d1ddf6320f681 commit 0d0c98364d2111fea23628682d2d1ddf6320f681 Author: Boris Faure Date: Sun Sep 19 22:04:49 2021 +0200 circleci: do not compile with nls on alpine --- .circleci/config.yml | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index db2085b..6ae3b8a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -37,7 +37,7 @@ jobs: name: Compile with GCC command: | cd /terminology -meson . build +meson -Dnls=false. build meson configure build cd build ninja -j4 @@ -54,7 +54,7 @@ jobs: name: Compile with GCC command: | cd /terminology -meson . build +meson -Dnls=false . build meson configure build cd build ninja -j4 @@ -71,7 +71,7 @@ jobs: name: Compile with GCC command: | cd /terminology -meson . build +meson -Dnls=false . build meson configure build cd build ninja -j4 @@ -93,7 +93,7 @@ jobs: CFLAGS: -O0 -g command: | cd /terminology -meson -Dtests=true -Dfuzzing=true -Db_coverage=true -Dbuildtype=debug . build +meson -Dnls=false -Dtests=true -Dfuzzing=true -Db_coverage=true -Dbuildtype=debug . build meson configure build cd build ninja -j4 @@ -132,7 +132,7 @@ jobs: CFLAGS: -O0 -g command: | cd /terminology -meson -Dtests=true -Dbuildtype=release . build +meson -Dnls=false -Dtests=true -Dbuildtype=release . build meson configure build cd build ninja -j4 @@ -158,7 +158,7 @@ jobs: name: Compile with Clang command: | cd /terminology -meson -Dtests=true -Dfuzzing=true . build +meson -Dnls=false -Dtests=true -Dfuzzing=true . build meson configure build cd build ninja -j4 @@ -178,7 +178,7 @@ jobs: name: Compile with Clang command: | cd /terminology -meson -Dtests=true . build +meson -Dnls=false -Dtests=true . build meson configure build cd build ninja -j4 --
[EGIT] [apps/terminology] master 02/02: meson: nls does require libintl
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=18ac38b8ce8e80e32fa3f42534def8152dbbd3a2 commit 18ac38b8ce8e80e32fa3f42534def8152dbbd3a2 Author: Boris Faure Date: Sun Sep 19 22:07:00 2021 +0200 meson: nls does require libintl --- meson.build | 2 +- meson_options.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index 4e30488..6a2502d 100644 --- a/meson.build +++ b/meson.build @@ -65,7 +65,7 @@ edj_files = [] if get_option('nls') == true subdir('po') - terminology_dependencies += dependency('intl', required: false) + terminology_dependencies += dependency('intl', required: true) endif foreach efl_dep: efl_deps diff --git a/meson_options.txt b/meson_options.txt index 9da74a2..be2b29d 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -15,4 +15,4 @@ option('tests', option('nls', type: 'boolean', value: true, - description: 'enable localization: (default=true)') + description: 'enable localization. Requires libintl. (default=true)') --
[EGIT] [apps/terminology] master 01/05: extns: add extn_matches() and extn_is_media() + unit test
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=ef3f62774311123aec5c1dc6012c723d55e4f620 commit ef3f62774311123aec5c1dc6012c723d55e4f620 Author: Boris Faure Date: Mon Sep 13 22:48:29 2021 +0200 extns: add extn_matches() and extn_is_media() + unit test --- src/bin/extns.c | 69 src/bin/extns.h | 5 src/bin/meson.build | 1 + src/bin/tytest.c | 1 + src/bin/unit_tests.h | 1 + 5 files changed, 77 insertions(+) diff --git a/src/bin/extns.c b/src/bin/extns.c index f8ed2e0..fb99c1a 100644 --- a/src/bin/extns.c +++ b/src/bin/extns.c @@ -1,4 +1,5 @@ #include "private.h" +#include #include const char *extn_img[] = @@ -41,3 +42,71 @@ const char *extn_aud[] = ".mp3", ".aac", ".wav", ".flac", ".m4a", ".opus", NULL }; + +/** + * Whether a path ends with one of the extensions listed in @extns + */ +Eina_Bool +extn_matches(const char *path, size_t path_len, const char **extns) +{ + int i; + + for (i = 0; extns[i]; i++) + { +size_t ext_len = strlen(extns[i]); +if (path_len < ext_len) + continue; +if (!strcasecmp(extns[i], path + path_len - ext_len)) + return EINA_TRUE; + } + return EINA_FALSE; +} + +/** + * Whether a path is a media, if it ends with one of the known extensions + */ +Eina_Bool +extn_is_media(const char *path, size_t path_len) +{ + if (extn_matches(path, path_len, extn_img)) + return EINA_TRUE; + if (extn_matches(path, path_len, extn_scale)) + return EINA_TRUE; + if (extn_matches(path, path_len, extn_edj)) + return EINA_TRUE; + if (extn_matches(path, path_len, extn_mov)) + return EINA_TRUE; + if (extn_matches(path, path_len, extn_aud)) + return EINA_TRUE; + return EINA_FALSE; +} + +#if defined(BINARY_TYTEST) +#include +int +tytest_extn_matching(void) +{ + const char *invalid = "foobar.inv"; + assert(extn_is_media(invalid, strlen(invalid)) == EINA_FALSE); + /* Images */ + const char *jpeg = "/home/qux/foo.bar.jpeg"; + assert(extn_is_media(jpeg, strlen(jpeg)) == EINA_TRUE); + const char *png = "https://foo.bar/qux.PNG;; + assert(extn_is_media(png, strlen(png)) == EINA_TRUE); + /* Scale */ + const char *svg = "https://foo.bar/qux.svg;; + assert(extn_is_media(svg, strlen(svg)) == EINA_TRUE); + const char *svggz = "https://foo.bar/qux.svg.gz;; + assert(extn_is_media(svggz, strlen(svggz)) == EINA_TRUE); + /* EDJ */ + const char *edj = "https://foo.bar/qux.edj;; + assert(extn_is_media(edj, strlen(edj)) == EINA_TRUE); + /* Movie */ + const char *mkv = "https://foo.bar/qux.mkv;; + assert(extn_is_media(mkv, strlen(mkv)) == EINA_TRUE); + /* Audio */ + const char *ogg = "https://foo.bar/qux.ogg;; + assert(extn_is_media(ogg, strlen(ogg)) == EINA_TRUE); + return 0; +} +#endif diff --git a/src/bin/extns.h b/src/bin/extns.h index ded11cc..cddeefb 100644 --- a/src/bin/extns.h +++ b/src/bin/extns.h @@ -7,4 +7,9 @@ extern const char *extn_edj[]; extern const char *extn_mov[]; extern const char *extn_aud[]; +Eina_Bool +extn_matches(const char *path, size_t path_len, const char **extns); +Eina_Bool +extn_is_media(const char *path, size_t path_len); + #endif diff --git a/src/bin/meson.build b/src/bin/meson.build index 4be1a77..f12f5d7 100644 --- a/src/bin/meson.build +++ b/src/bin/meson.build @@ -76,6 +76,7 @@ tytest_sources = ['termptyesc.c', 'termptyesc.h', 'termiolink.c', 'termiolink.h', 'config.c', 'config.h', 'colors.c', 'colors.h', + 'extns.c', 'extns.h', 'sb.c', 'sb.h', 'utf8.c', 'utf8.h', 'utils.c', 'utils.h', diff --git a/src/bin/tytest.c b/src/bin/tytest.c index 06a3dd1..2984caa 100644 --- a/src/bin/tytest.c +++ b/src/bin/tytest.c @@ -40,6 +40,7 @@ static struct { { "color_parse_edc", tytest_color_parse_edc}, { "color_parse_css_rgb", tytest_color_parse_css_rgb}, { "color_parse_css_hsl", tytest_color_parse_css_hsl}, + { "extn_matching", tytest_extn_matching}, { NULL, NULL}, }; diff --git a/src/bin/unit_tests.h b/src/bin/unit_tests.h index d429f7b..78ca212 100644 --- a/src/bin/unit_tests.h +++ b/src/bin/unit_tests.h @@ -17,5 +17,6 @@ int tytest_color_parse_uint8(void); int tytest_color_parse_edc(void); int tytest_color_parse_css_rgb(void); int tytest_color_parse_css_hsl(void); +int tytest_extn_matching(void); #endif --
[EGIT] [apps/terminology] master 03/05: tycat: use extn_matches()
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=1fe7f2ea8009879ac124b41822651589a00ab954 commit 1fe7f2ea8009879ac124b41822651589a00ab954 Author: Boris Faure Date: Mon Sep 13 22:56:20 2021 +0200 tycat: use extn_matches() --- src/bin/tycat.c | 39 +-- 1 file changed, 13 insertions(+), 26 deletions(-) diff --git a/src/bin/tycat.c b/src/bin/tycat.c index 1db6d0f..3a044b6 100644 --- a/src/bin/tycat.c +++ b/src/bin/tycat.c @@ -66,21 +66,6 @@ scaleterm(int w, int h, int *iw, int *ih) } } -static const char * -is_fmt(const char *f, const char **extn) -{ - int i, len; - - len = strlen(f); - for (i = 0; extn[i]; i++) - { -int l = strlen(extn[i]); -if (len < l) continue; -if (!strcasecmp(extn[i], f + len - l)) return extn[i]; - } - return NULL; -} - static void prnt(const char *path, int w, int h, int mode) { @@ -142,16 +127,16 @@ timeout_cb(void *data) } static int -handle_image(char *rp) +handle_image(const char *rp, size_t len) { Evas_Object *o; int w = 0, h = 0; int iw = 0, ih = 0; int r = -1; - if (!is_fmt(rp, extn_img) && - !is_fmt(rp, extn_scale) && - !is_fmt(rp, extn_mov)) + if (!extn_matches(rp, len, extn_img) && + !extn_matches(rp, len, extn_scale) && + !extn_matches(rp, len, extn_mov)) return -1; o = evas_object_image_add(evas); @@ -170,13 +155,13 @@ handle_image(char *rp) } static int -handle_edje(char *rp) +handle_edje(const char *rp, size_t len) { Evas_Object *o; int iw = 0, ih = 0; int r = -1; - if (!is_fmt(rp, extn_edj)) return -1; + if (!extn_matches(rp, len, extn_edj)) return -1; o = edje_object_add(evas); if (edje_object_file_set @@ -240,12 +225,12 @@ done: } static int -handle_video(char *rp) +handle_video(const char *rp, size_t len) { Evas_Object *o; - if (!is_fmt(rp, extn_aud) && - !is_fmt(rp, extn_mov)) + if (!extn_matches(rp, len, extn_aud) && + !extn_matches(rp, len, extn_mov)) return -1; o = emotion_object_add(evas); @@ -274,8 +259,9 @@ static Eina_Bool handle_file(void *data) { Eina_List **file_q = data; + size_t len; - int (*handlers[])(char *rp) = { + int (*handlers[])(const char *rp, size_t len) = { handle_image, handle_edje, handle_video, @@ -294,10 +280,11 @@ handle_file(void *data) rp = eina_list_data_get(*file_q); *file_q = eina_list_remove_list(*file_q, *file_q); if (!rp) return ECORE_CALLBACK_RENEW; + len = strlen(rp); for (i = 0; handlers[i]; i++) { -if (handlers[i](rp) == 0) break; +if (handlers[i](rp, len) == 0) break; } free(rp); --
[EGIT] [apps/terminology] master 04/05: options_background: use extn api
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=8eec8afcc241f620c29d92cbeb0b3a1e37542bbf commit 8eec8afcc241f620c29d92cbeb0b3a1e37542bbf Author: Boris Faure Date: Mon Sep 13 23:06:18 2021 +0200 options_background: use extn api --- src/bin/options_background.c | 54 +++- 1 file changed, 23 insertions(+), 31 deletions(-) diff --git a/src/bin/options_background.c b/src/bin/options_background.c index 9deaa81..541f580 100644 --- a/src/bin/options_background.c +++ b/src/bin/options_background.c @@ -180,14 +180,11 @@ _grid_content_get(void *data, Evas_Object *obj, const char *part) if (item->path) { -int i; Media_Type type; -for (i = 0; extn_edj[i]; i++) - { - if (eina_str_has_extension(item->path, extn_edj[i])) - return media_add(obj, item->path, config, -MEDIA_BG, MEDIA_TYPE_EDJE); - } +size_t len = strlen(item->path); +if (extn_matches(item->path, len, extn_edj)) + return media_add(obj, item->path, config, + MEDIA_BG, MEDIA_TYPE_EDJE); type = media_src_type_get(item->path); return media_add(obj, item->path, config, MEDIA_THUMB, type); } @@ -277,11 +274,8 @@ _rec_read_directorys(Background_Ctx *ctx, Eina_List *list, { Eina_List *childs = ecore_file_ls(root_path); char *file_name, path[PATH_MAX]; - int i, j; Background_Item *item; - const char **extns[5] = - { extn_img, extn_scale, extn_edj, extn_mov, NULL }; - const char **ex; + const char **extns[5] = { extn_img, extn_scale, extn_edj, extn_mov, NULL }; Insert_Gen_Grid_Item_Notify *notify; @@ -291,33 +285,31 @@ _rec_read_directorys(Background_Ctx *ctx, Eina_List *list, snprintf(path, PATH_MAX, "%s/%s", root_path, file_name); if ((!ecore_file_is_dir(path)) && (file_name[0] != '.')) { + int i; + size_t len = strlen(file_name); //file is found, search for correct file endings ! - for (j = 0; extns[j]; j++) + for (i = 0; extns[i]; i++) { - ex = extns[j]; - for (i = 0; ex[i]; i++) + if (extn_matches(file_name, len, extns[i])) { - if (eina_str_has_extension(file_name, ex[i])) + //File is found and valid + item = calloc(1, sizeof(Background_Item)); + if (item) { -//File is found and valid -item = calloc(1, sizeof(Background_Item)); -if (item) +item->path = eina_stringshare_add(path); +list = eina_list_append(list, item); +notify = calloc(1, + sizeof(Insert_Gen_Grid_Item_Notify)); +if (notify) { - item->path = eina_stringshare_add(path); - list = eina_list_append(list, item); - notify = calloc(1, - sizeof(Insert_Gen_Grid_Item_Notify)); - if (notify) - { - //insert item to gengrid - notify->class = class; - notify->item = item; - //ecore_thread_feedback(th, notify); - _insert_gengrid_item(ctx, notify); - } + //insert item to gengrid + notify->class = class; + notify->item = item; + //ecore_thread_feedback(th, notify); + _insert_gengrid_item(ctx, notify); } -break; } + break; } } } --
[EGIT] [apps/terminology] master 05/05: media: have media_src_type_get() use extn api
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=cd4c168e3b0fee7fef650d5e52b0e338e4ebeab7 commit cd4c168e3b0fee7fef650d5e52b0e338e4ebeab7 Author: Boris Faure Date: Mon Sep 13 23:30:09 2021 +0200 media: have media_src_type_get() use extn api --- src/bin/media.c | 10 +- src/bin/media.h | 2 +- src/bin/options_background.c | 2 +- src/bin/termio.c | 13 - src/bin/win.c| 6 -- 5 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/bin/media.c b/src/bin/media.c index 91f01fb..3e78ac3 100644 --- a/src/bin/media.c +++ b/src/bin/media.c @@ -1501,14 +1501,14 @@ media_get(const Evas_Object *obj) } Media_Type -media_src_type_get(const char *src) +media_src_type_get(const char *src, size_t len) { Media_Type type = MEDIA_TYPE_UNKNOWN; - if (_is_fmt(src, extn_img)) type = MEDIA_TYPE_IMG; - else if (_is_fmt(src, extn_scale)) type = MEDIA_TYPE_SCALE; - else if (_is_fmt(src, extn_edj)) type = MEDIA_TYPE_EDJE; - else if (_is_fmt(src, extn_mov)) type = MEDIA_TYPE_MOV; + if (extn_matches(src, len, extn_img)) type = MEDIA_TYPE_IMG; + else if (extn_matches(src, len, extn_scale)) type = MEDIA_TYPE_SCALE; + else if (extn_matches(src, len, extn_edj)) type = MEDIA_TYPE_EDJE; + else if (extn_matches(src, len, extn_mov)) type = MEDIA_TYPE_MOV; return type; } diff --git a/src/bin/media.h b/src/bin/media.h index 5f33cd4..76df6e5 100644 --- a/src/bin/media.h +++ b/src/bin/media.h @@ -36,7 +36,7 @@ void media_volume_set(Evas_Object *obj, double vol); void media_visualize_set(Evas_Object *obj, Eina_Bool visualize); void media_stop(Evas_Object *obj); const char *media_get(const Evas_Object *obj); -Media_Type media_src_type_get(const char *src); +Media_Type media_src_type_get(const char *src, size_t len); Evas_Object *media_control_get(const Evas_Object *obj); void media_unknown_handle(const char *handler, const char *src); diff --git a/src/bin/options_background.c b/src/bin/options_background.c index 541f580..57023d4 100644 --- a/src/bin/options_background.c +++ b/src/bin/options_background.c @@ -185,7 +185,7 @@ _grid_content_get(void *data, Evas_Object *obj, const char *part) if (extn_matches(item->path, len, extn_edj)) return media_add(obj, item->path, config, MEDIA_BG, MEDIA_TYPE_EDJE); -type = media_src_type_get(item->path); +type = media_src_type_get(item->path, len); return media_add(obj, item->path, config, MEDIA_THUMB, type); } else diff --git a/src/bin/termio.c b/src/bin/termio.c index 2af0008..b247ab3 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -788,7 +788,8 @@ _activate_link(Evas_Object *obj, Eina_Bool may_inline) escaped = ecore_file_escape_name(path); if (escaped) { - Media_Type type = media_src_type_get(path); + size_t len = strlen(path); + Media_Type type = media_src_type_get(path, len); if (may_inline && _should_inline(obj)) { if ((type == MEDIA_TYPE_IMG) || @@ -839,7 +840,8 @@ _activate_link(Evas_Object *obj, Eina_Bool may_inline) escaped = ecore_file_escape_name(s); if (escaped) { - Media_Type type = media_src_type_get(link); + size_t len = strlen(link); + Media_Type type = media_src_type_get(link, len); if (may_inline && _should_inline(obj)) { evas_object_smart_callback_call(obj, "popup", NULL); @@ -1345,7 +1347,8 @@ _cb_link_down(void *data, if (sd->config->helper.inline_please) { - Media_Type type = media_src_type_get(raw_link); + size_t len = strlen(raw_link); + Media_Type type = media_src_type_get(raw_link, len); if ((type == MEDIA_TYPE_IMG) || (type == MEDIA_TYPE_SCALE) || @@ -1820,7 +1823,7 @@ _smart_media_clicked(void *data, Evas_Object *obj, void *_info EINA_UNUSED) { if (blk->link) { - Media_Type type = media_src_type_get(blk->link); + Media_Type type = media_src_type_get(blk->link, strlen(blk->link)); Config *config = termio_config_get(data); if (config) @@ -2429,7 +2432,7 @@ _block_media_activate(Evas_Object *obj, Termblock *blk) else media |= MEDIA_RECOVER | MEDIA_SAVE; - type = media_src_type_get(blk->path); + type = media_src_type_get(blk->path, strlen(blk->path)); blk->obj = media_add(obj, blk->path, sd->config, media, type); if (type == MEDIA_TYPE_MOV) diff --git a/src/bin/win.c b/src/bin/win.c index 7a747ce..3512a8e 100644 --- a/src/bin/win.c +++ b/src/
[EGIT] [apps/terminology] master 02/05: termio: rewrite drop cb to paste content whenever it's not a media
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=5f10cb1857ada8d29a21579814ad600ed6d0ca12 commit 5f10cb1857ada8d29a21579814ad600ed6d0ca12 Author: Boris Faure Date: Mon Sep 13 22:49:48 2021 +0200 termio: rewrite drop cb to paste content whenever it's not a media --- src/bin/termio.c | 102 ++- 1 file changed, 71 insertions(+), 31 deletions(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index de3b6ca..2af0008 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -8,6 +8,7 @@ #include "termiolink.h" #include "termpty.h" #include "backlog.h" +#include "extns.h" #include "termptyops.h" #include "termcmd.h" #include "termptydbl.h" @@ -4044,6 +4045,7 @@ _smart_cb_drag_pos(void *_data EINA_UNUSED, DBG("dnd at %i %i act:%i", x, y, action); } + static Eina_Bool _smart_cb_drop(void *data, Evas_Object *_o EINA_UNUSED, @@ -4051,53 +4053,91 @@ _smart_cb_drop(void *data, { Evas_Object *obj = data; Termio *sd = evas_object_smart_data_get(obj); + size_t len; EINA_SAFETY_ON_NULL_RETURN_VAL(sd, EINA_TRUE); - if (ev->action == ELM_XDND_ACTION_COPY) + if (ev->action != ELM_XDND_ACTION_COPY) + return EINA_TRUE; + + if (strchr(ev->data, '\n')) { -if (strchr(ev->data, '\n')) +char *buf = alloca(strlen(ev->data) + 1); +const char *p = ev->data; +while (p) { - char *tb = malloc(strlen(ev->data) + 1); - if (tb) + char *new_line = strchr(p, '\n'); + char *carriage_return = strchr(p, '\r'); + if (new_line && carriage_return) + { + if (carriage_return < new_line) +new_line = carriage_return; + } + else if (!new_line) + new_line = carriage_return; + if (new_line) { - char *p; - for (p = ev->data; p;) + strncpy(buf, p, new_line - p); + len = new_line - p; + buf[len] = '\0'; + p = new_line; + while ((*p) && (isspace(*p))) +p++; + if (buf[0]) { - char *p2, *p3; - p2 = strchr(p, '\n'); - p3 = strchr(p, '\r'); - if (p2 && p3) - { -if (p3 < p2) p2 = p3; - } - else if (!p2) p2 = p3; - if (p2) + if (extn_is_media(buf, len)) + evas_object_smart_callback_call(obj, "popup,queue", buf); + else { -strncpy(tb, p, p2 - p); -tb[p2 - p] = 0; -p = p2; -while ((*p) && (isspace(*p))) p++; -if (strlen(tb) > 0) - evas_object_smart_callback_call - (obj, "popup,queue", tb); +if (sd->pty->bracketed_paste) + termpty_write(sd->pty, "\x1b[200~", sizeof("\x1b[200~") - 1); + +termpty_write(sd->pty, buf, len); + +if (sd->pty->bracketed_paste) + termpty_write(sd->pty, "\x1b[201~", sizeof("\x1b[201~") - 1); } +} + } + else + { + if (*p) +{ + len = strlen(p); + strncpy(buf, p, len); + buf[len] = '\0'; + if (extn_is_media(buf, len)) + evas_object_smart_callback_call(obj, "popup,queue", buf); else { -strcpy(tb, p); -if (strlen(tb) > 0) - evas_object_smart_callback_call - (obj, "popup,queue", tb); -break; +if (sd->pty->bracketed_paste) + termpty_write(sd->pty, "\x1b[200~", sizeof("\x1b[200~") - 1); + +termpty_write(sd->pty, buf, len); + +if (sd->pty->bracketed_paste) + termpty_write(sd->pty, "\x1b[201~", siz
[EGIT] [apps/terminology] master 01/01: termio: do not set config temp flag on elm config change
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=02ab1da7cdbc3acb897f9fcc8f82311a8c432fe6 commit 02ab1da7cdbc3acb897f9fcc8f82311a8c432fe6 Author: Boris Faure Date: Sun Sep 5 22:56:28 2021 +0200 termio: do not set config temp flag on elm config change --- src/bin/termio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/termio.c b/src/bin/termio.c index 9f41ea2..de3b6ca 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -373,7 +373,7 @@ _font_size_set(Evas_Object *obj, int size) font_size_scale = ELM_SCALE_SIZE(size); if (sd->font_size_scale == font_size_scale) return; sd->font_size_scale = font_size_scale; - if (config) + if ((config) && (size != config->font.size)) { config->temporary = EINA_TRUE; config->font.size = size; --
Re: [E-devel] Flat has landed
On 21-03-27 16:10, Carsten Haitzler wrote: > For those who are not watching git commits... > > Flat theme has landed in git master efl today. > > Yay! You've out-done yourself! Terminology really shines with it! Thanks a lot -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Terminology 1.9.0
“Shoot for the stars, but if you happen to miss, shoot for the moon instead.” Neil Armstrong Hello fellow Terminology enthusiasts! Winter with its long nights can be hard but can also bring some nice improvements to Terminology! The detailed change log lists them below: == Additions == * Colorshemes: easily change the colors of the terminal * Add the following color schemes: Tango Dark, Tango light, Dracula, Belafonte Day, Belafonte Night, Material, Fahrenheit, Tomorrow Night Burns, PaleNight, Soft Era, One Dark, Cobalt2 * New translations: Chinese (Simplified), Japanese, Norwegian Bokmål, Russian and Ukrainian * Handle `OSC 12` to change the cursor color == Improvements == * Translation updates for Catalan, Croatian, Danish, Dutch, French, German, Italian, Spanish * Add font search in the fonts panel * Set `TERM` to `xterm_256color` by default * Focus simplifications when going into the settings * Tests: better compatibility with debian-based systems == Fixes == * Fix `tyls` with png/jpg thumbnails == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.9.0.tar.xz - https://downloads.terminolo.gy/terminology-1.9.0.tar.xz sha256sum: 640b9d2581db968d2ca4cd3ee90a36dd8165a0273bf08a561ffdc7755951d96e == Social Media == If you want to know more about what's going on with Terminology, follow us on Twitter at https://twitter.com/_Terminology_ There is also a dedicated Youtube Channel about Terminology at https://www.youtube.com/channel/UCZ2iBYbbxvcZfcUmnz-rmlQ The latest video shows all features around links in Terminology: https://www.youtube.com/watch?v=Q3uoFsWQuFQ Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Terminology 1.9.0
On 21-01-18 22:21, Boris Faure wrote: > > “Shoot for the stars, > but if you happen to miss, > shoot for the moon instead.” >Neil Armstrong > > > > Hello fellow Terminology enthusiasts! > > Winter with its long nights can be hard but can also bring some nice > improvements to Terminology! > > The detailed change log lists them below: > > == Additions == > * Colorshemes: easily change the colors of the terminal > * Add the following color schemes: Tango Dark, Tango light, Dracula, > Belafonte Day, Belafonte Night, Material, Fahrenheit, > Tomorrow Night Burns, PaleNight, Soft Era, One Dark, Cobalt2 > * New translations: Chinese (Simplified), Japanese, > Norwegian Bokmål, Russian and Ukrainian > * Handle `OSC 12` to change the cursor color > > == Improvements == > * Translation updates for Catalan, Croatian, Danish, Dutch, French, > German, Italian, Spanish > * Add font search in the fonts panel > * Set `TERM` to `xterm_256color` by default > * Focus simplifications when going into the settings > * Tests: better compatibility with debian-based systems > > == Fixes == > * Fix `tyls` with png/jpg thumbnails > > == Download == > The tarball can be found at : > - > https://download.enlightenment.org/rel/apps/terminology/terminology-1.9.0.tar.xz > - https://downloads.terminolo.gy/terminology-1.9.0.tar.xz > sha256sum: > 640b9d2581db968d2ca4cd3ee90a36dd8165a0273bf08a561ffdc7755951d96e One should read: 3f3bc327da5cc239d468570afed29a17e2fda3b1fee02b28f02ee7ed5141e46c I've re-uploaded a new tarball with one change: make this release pass all the tests. The test that was failing was about the new version name! That's the only change. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [EGIT] [apps/terminology] master 01/02: colorschemes: input files are JSON now
I've just noticed, I've not answered your question. Why such a tool? Because writing colors in the format used in eet is quite boring and not so convenient. You can check the .desc files produced. Why JSON? I wanted something easy enough and common enough. I could have picked YAML or TOML or INI. Why python? Because you need to run meson/ninja. That's why I picked JSON because there's native support in python. Now that's written this, I might consider INI since it might be easier to work with than JSON and at some point I'll want people to submit such files. On 20-09-28 22:42, Christopher Michael wrote: > My first thought is ... WHY Json??... > > dh > > > On 9/28/20 5:49 PM, Boris Faure wrote: > > billiob pushed a commit to branch master. > > > > http://git.enlightenment.org/apps/terminology.git/commit/?id=0dc4e1014f7010bd049e5650a942ef1127a1e7f6 > > > > commit 0dc4e1014f7010bd049e5650a942ef1127a1e7f6 > > Author: Boris Faure > > Date: Mon Sep 28 23:24:07 2020 +0200 > > > > colorschemes: input files are JSON now > > --- > > data/colorschemes/builder.sh | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/data/colorschemes/builder.sh b/data/colorschemes/builder.sh > > index 36994f6..1483e54 100755 > > --- a/data/colorschemes/builder.sh > > +++ b/data/colorschemes/builder.sh > > @@ -18,7 +18,7 @@ trap 'rm -f "$TMPFILE"' INT TERM HUP EXIT > > for JSON in "$@" > > do > > # use the name, without extension as key in eet > > - KEY=$(basename "$JSON" ".desc") > > + KEY=$(basename "$JSON" ".json") > > DESC="${KEY}.desc" > > $JSON2DESC "$JSON" "$DESC" > > $EET -e "$TMP_EET" "$KEY" "$DESC" "$COMPRESS" > > > > > ___ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] EFL 1.25.0 beta 3
On 20-09-14 12:36, Stefan Schmidt wrote: > While we had little activity over the last week we decided to have another > beta before the final release. We still have at least one issue which needs > looking into and some more time is needed to check reports from Coverity and > other tools. > > **Fixes:** >* docs: Correct the mismatched group name in Evas. > > **Download** > http://download.enlightenment.org/rel/libs/efl/efl-1.25.0-beta3.tar.xz > 5186b59e9b788dce7ebc3264ad27e0da0479e3615bab55d079e888c06b3efe97 It worked fine building it on alpine. Thanks -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Using weblate.org to translate Terminology
Hi! I've started using using Weblate.org to ease translation of Terminology. I've found the website quite good and it was very recommended by some translators. You can check it out at https://hosted.weblate.org/projects/terminology/terminology/ Best Regards -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Terminology 1.8.1
On 20-08-11 22:06, Ross Vandegrift wrote: > On Wed, Aug 12, 2020 at 01:28:35PM +0930, Simon Lees wrote: > > On 8/12/20 5:47 AM, Boris Faure wrote: > > > == Download == > > > The tarball can be found at : > > > - > > > https://download.enlightenment.org/rel/apps/terminology/terminology-1.8.1.tar.xz > > > > I can't find this one on the server > > > > > - https://downloads.terminolo.gy/terminology-1.8.1.tar.xz > > > > But this one is there fine. > > This one was some trouble for me - looks like https over ipv6 is broken. > Forcing ipv4 or http works. > > Ross I did upload 1.8.0 again instead of 1.8.1 o\ It should work now on download.enlightenment.org. I'll fix the ipv6 issue later. Thanks for the heads up. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Terminology 1.8.1
Hello fellow Terminology enthusiasts! About two weeks ago, we released Terminology v1.8.0. That release shipped with 2 bugs that are fixed in version 1.8.1 released today. The detailed change log lists them below: == Fixes == * Be stricter on which characters can be considered wide or not * Apply change about hiding mouse pointer after idle timeout on all terminals == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.8.1.tar.xz - https://downloads.terminolo.gy/terminology-1.8.1.tar.xz sha256sum: 04a69ac8ade443cba7dae20f82bbaa431fd155cec60c133b263d82f18e93b8bb Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Terminology 1.8.0
“It does not matter how slowly you go as long as you do not stop.” Confucius Hello fellow Terminology enthusiasts! Latest release was only two months ago but there is already some new material to be enjoyed! The detailed change log lists them below: == Additions == * Small framework to add unit tests * Display tooltips when hovering color descriptions * Handle ''OSC 10/11'' to change/get background and foreground colors == Improvements == * Reworked build system for testing and fuzzing * Use of switch-case constructs when home-made binary search was not efficient * Support EFL 1-22 or newer only * Larger list of word separators when doing word-selection * Reworked the Settings panel to add one panel on Mouse interactions * Handle Emoji characters as double-width, following Unicode 13.0 == Fixes == * Fix issues detected by UndefinedBehavior Sanitizer == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.8.0.tar.xz - https://downloads.terminolo.gy/terminology-1.8.0.tar.xz sha256sum: c6f5b003412f25507277702cabe1a11d7190971343c1d6030aa7d3fe5b45765f == Social Media == If you want to know more about what's going on with Terminology, follow us on Twitter at https://twitter.com/_Terminology_ There is also a dedicated Youtube Channel about Terminology at https://www.youtube.com/channel/UCZ2iBYbbxvcZfcUmnz-rmlQ The latest video shows all features around links in Terminology: https://www.youtube.com/watch?v=Q3uoFsWQuFQ Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] New video on Terminology: Handling of links
I just wanted to let you know that I made a small video about links in Terminology. It's hosted on youtube at https://www.youtube.com/watch?v=Q3uoFsWQuFQ There's a show case about a new feature coming soon in the next release. Have a nice day! -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Terminology 1.7.0
“The bee collects honey from flowers in such a way as to do the least damage or destruction to them, and he leaves them whole, undamaged and fresh, just as he found them.” Saint Francis de Sales Hello fellow Terminology enthusiasts! Quite a lot has been done during the early months of 2020 and Terminology 1.7.0 is complete. Work has mostly been on tabs and splits and how to interact with them. There are also some improvements and fixes, and improved translations as can be seen in the detailed change log below: == Additions == * Terminology is packaged on the `snapstore` at https://snapcraft.io/terminology * Add THEME.md, a documentation file on theming Terminology * Drag tabs to reorder them * Dragging tabs outside the tab bar can be used to create new splits or tabs * Add Croatian translation * Handle escape code used to display terminal program and version * Set environment variables TERM_PROGRAM and TERM_PROGRAM_VERSION == Improvements == * Memory accounting of the backlogs. Seen under the Behavior tab on the Settings panel * Handle escape codes to stack titles * ''tyls'': add icon for ''flac'' files * Update the mild-based themes to be on-par feature-wise with the default theme * Tab selector shows background color * Controls panel is hidden when creating new tab or split * Enable Grouped Input from the Controls panel * Show special icon on tab when using Grouped Input * Add option to decide whether Grouped input goes to all tabs or only visible ones * Improve email/links detection when surrounded with special characters * Remove link underline when the link disappears * Share translucent/opacity setting across all instances * Use a default icon of each tab on the Settings toolbar * Update French, German, Italian and Serbian translations == Removals == * Removed video settings == Fixes == * Handle invalid values on OSC escape codes * Better handle reads and writes on EINTR/EAGAIN == Download == The tarball can be found at : - https://download.enlightenment.org/rel/apps/terminology/terminology-1.7.0.tar.xz - https://downloads.terminolo.gy/terminology-1.7.0.tar.xz sha256sum: 88f5bc6e5d10cce1e38447a4984be88943b3d7ecbe24a83d7d8c246ea6b00a87 == In action == Some of those features can be seen on this youtube video on Tabs and Splits: https://www.youtube.com/watch?v=rHsck-Lv6Zg == Social Media == If you want to know more about what's going on with Terminology, follow us on Twitter @_Terminology_ Happy compiling! ( https://xkcd.com/303/ ) -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] terminology git crash
On 20-05-01 13:04, leoutat...@gmx.fr wrote: > > > On 5/1/20 12:48 PM, Boris Faure wrote: > > On 20-05-01 12:34, leoutat...@gmx.fr wrote: > > > > > > > > > On 5/1/20 11:23 AM, Boris Faure wrote: > > > > On 20-05-01 11:11, leoutat...@gmx.fr wrote: > > > > > Since last efl enlightenment terminology git versions (1.24), > > > > > terminology crashes after 4 seconds. > > > > > segmentation fault (core dumped) terminology > > > > > > > > Could you please provide us with a backtrace from the core dumps? > > > > It might be as simple as the following if the core dump is called > > > > 'core': > > > > > > > > $ gdb /usr/bin/terminology core 2>&1 | tee ~/ty_gdb.txt > > > > (gdb) handle SIG33 pass nostop noprint > > > > (gdb) set pagination 0 > > > > (gdb) bt full > > > > (gdb) thread apply all bt > > > > (gdb) quit > > > > > > > > And then give us ~/ty_gdb.txt > > > > > > > > > > ty_gdb.txt > > > > > > GNU gdb (GDB) 9.1 > > > > > > Reading symbols from /usr/bin/terminology... > > > Reading symbols from /usr/lib/debug/usr/bin/terminology.debug... > > > /home/fre/core: No such file or directory. > > > (gdb) handle SIG33 pass nostop noprint > > > SignalStop Print Pass to program Description > > > SIG33 NoNo Yes Real-time event 33 > > > (gdb) set pagination 0 > > > (gdb) bt full > > > No stack. > > > (gdb) thread apply all bt > > > (gdb) quit > > > > > > > The core file was not there. > >You need to find where it was stored. > >You can have a look at `/proc/sys/kernel/core_pattern`. It might be > > stored in journald. > > > > I found /proc/sys/kernel/core_pattern > It just contains /usr/lib/systemd/systemd-coredump You need to play with coredumpctl. # coredumpctl list If terminology is the last one, then do the following: # coredumpctl debug core 2>&1 | tee ~/ty_gdb.txt (gdb) handle SIG33 pass nostop noprint (gdb) set pagination 0 (gdb) bt full (gdb) thread apply all bt (gdb) quit -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] terminology git crash
On 20-05-01 12:34, leoutat...@gmx.fr wrote: > > > On 5/1/20 11:23 AM, Boris Faure wrote: > > On 20-05-01 11:11, leoutat...@gmx.fr wrote: > > > Since last efl enlightenment terminology git versions (1.24), > > > terminology crashes after 4 seconds. > > > segmentation fault (core dumped) terminology > > > > Could you please provide us with a backtrace from the core dumps? > > It might be as simple as the following if the core dump is called > > 'core': > > > >$ gdb /usr/bin/terminology core 2>&1 | tee ~/ty_gdb.txt > >(gdb) handle SIG33 pass nostop noprint > >(gdb) set pagination 0 > >(gdb) bt full > >(gdb) thread apply all bt > >(gdb) quit > > > > And then give us ~/ty_gdb.txt > > > > ty_gdb.txt > > GNU gdb (GDB) 9.1 > > Reading symbols from /usr/bin/terminology... > Reading symbols from /usr/lib/debug/usr/bin/terminology.debug... > /home/fre/core: No such file or directory. > (gdb) handle SIG33 pass nostop noprint > SignalStop Print Pass to program Description > SIG33 NoNo Yes Real-time event 33 > (gdb) set pagination 0 > (gdb) bt full > No stack. > (gdb) thread apply all bt > (gdb) quit > The core file was not there. You need to find where it was stored. You can have a look at `/proc/sys/kernel/core_pattern`. It might be stored in journald. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] terminology git crash
On 20-05-01 11:11, leoutat...@gmx.fr wrote: > Since last efl enlightenment terminology git versions (1.24), > terminology crashes after 4 seconds. > segmentation fault (core dumped) terminology Could you please provide us with a backtrace from the core dumps? It might be as simple as the following if the core dump is called 'core': $ gdb /usr/bin/terminology core 2>&1 | tee ~/ty_gdb.txt (gdb) handle SIG33 pass nostop noprint (gdb) set pagination 0 (gdb) bt full (gdb) thread apply all bt (gdb) quit And then give us ~/ty_gdb.txt -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [EGIT] [apps/terminology] master 01/01: config: share translucent+opacity settings accross instances
On 20-04-07 19:40, Jérémy Zurcher wrote: > Hi Boris, > > to answer to your questions : > > - I use default theme, switching to mild theme fixes it > as reverting d138086df2c90b21 does > > - GNU bash, version 5.0.16(1)-release (x86_64-pc-linux-gnu) > - PS1 is not multiline > - switching between software or OpenGL rendering has no impact > - I do use translucent bg, switching it off has no impact > > cheers Thank you for your tests. It did really help me. I hope I have fixed it in 68adc919be3dffefdbd926146c46c843cd932428. Could you please test and tell me how it behaves? Sorry for the annoyance and thank you for you patience. Ps: There's one or two things I'd like to finish and then I'll work on your feature request. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [EGIT] [apps/terminology] master 01/01: config: share translucent+opacity settings accross instances
On 20-04-06 09:25, Jérémy Zurcher wrote: > > Hi, > > this is not related to this commit, but this one : d138086df2c90b21 > > since the latter, I have 1 or 2 extra lines with a shortened prompt when I > open a new terminal. > > cheers Hi! What shell do you use? Is your $PS1 on multiple lines? Are you running with software rendering or hardware-based rendering? Do you set terminology's background as translucent? Which theme do you use and is it better with the mild theme? Cheers -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] FlatPak runtime
On 20-03-02 16:35, Carsten Haitzler wrote: > On Mon, 2 Mar 2020 11:53:43 -0300 Vinícius dos Santos Oliveira > said: > > > Em seg., 2 de mar. de 2020 às 07:15, Carsten Haitzler > > escreveu: > > > > > On Sun, 1 Mar 2020 20:14:33 -0300 Vinícius dos Santos Oliveira > > > said: > > > > > > > What are E devs' thoughts on an E's runtime for FlatPak? > > > > > > are you volunteering? > > > > > > > Yes, but I need to know what are other essential libs besides EFL and its > > dependencies to make an “EFL SDK” and I'd like to know what you guys think > > on the topic. > > you're going to find an afl runtime flatpak is going to have a lot of system > lib deps... you will have to solve systemd support too :) > > now e will have some problems for you too. acpid needs to be run by root on > the host... you might find you have to ship lots of xlibs and wayland libs in > the efl runtime... > > e uses ptrace and contains setuid root utils to ensure it runs. sandboxing is > going to be a problem. e will not work well sandboxed as it kind of expects to > get a lot of access to /sys, /dev, /proc, and to the entire fs due to efm, and > more. it'll want to bind to a few dbus services too so sanboxing dbus will be > bad(tm). e has to fork and exec apps and more :) Thanks for doing this. I wanted to look into it to be able to package Terminology. Here is a file of what I did to package Terminology as a snap: https://github.com/billiob/terminology/blob/master/snap/snapcraft.yaml The main issues I have so fare are related to launching ethumd and efreetd. It hope it'll help you. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] 1.24 schedule proposal
On 20-02-25 17:13, Stefan Schmidt wrote: > Hello. > > On 01.02.20 12:45, Carsten Haitzler (The Rasterman) wrote: > > On Fri, 31 Jan 2020 15:40:16 +0100 Stefan Schmidt > > > > said: > > > > roughly - sounds good to me :) > > > > > Hello. > > > > > > Tomorrow it will be 4 months since we released 1.23. I wanna talk about > > > my schedule proposal for 1.24. > > > > > > When starting now with getting all things we want in the release > > > finished, debugged and fixed I think April might be a good target month. > > > > > > Here is what I propose for a schedule. Comments? > > > > > > === Schedule === > > > 2019-10-01 1.23 release / merge window for 1.24 opens > > > 2020-03-23 Notice about soon ending merge window > > > 2020-04-01 Merge window is over. Freeze in place. > > > * Only bug fixes from this point > > > * Alpha release tarball > > > 2020-04-08 Beta1 release tarball > > > * Only critical fixes from this point > > > 2020-04-15 Beta2 release tarball > > > 2020-04-22 Final EFL 1.24 or Beta 3, depending on bug status > > > 2020-04-29 Final EFL 1.24 is out (alternative date) > > Besides the rough consensus from Raster I have not gotten any replies. > I take this as a "go ahead as suggested". If anyone has problems with this > schedule please speak up _now_. I'm happy the way it is. -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [video] Selections in Terminology
Hi! I tried something different to promote a feature I really enjoy in Terminology: text selection with the mouse. I've made a small youtube video about it. You can watch it at https://youtu.be/wN-v8gtt0XI . I might do some small videos like that about new graphical features, like the one I work on about tab management. Some of view have already seen some work in progress with some snippets I posted on twitter at https://twitter.com/_Terminology_ Best Regards -- Boris Faure Pointer Arithmetician signature.asc Description: PGP signature ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[EGIT] [apps/terminology] master 02/02: termptyesc: add title/icon stack + tests
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=992936d156be2e431c54988c7631770a61881eaf commit 992936d156be2e431c54988c7631770a61881eaf Author: Boris Faure Date: Fri Nov 29 20:07:14 2019 +0100 termptyesc: add title/icon stack + tests --- src/bin/termpty.h | 2 + src/bin/termptyesc.c | 100 ++ tests/tests.results | 3 ++ tests/title_icon_stack_default.sh | 34 + tests/title_icon_stack_simple.sh | 30 tests/title_icon_stack_unset.sh | 30 6 files changed, 199 insertions(+) diff --git a/src/bin/termpty.h b/src/bin/termpty.h index 0dba23e..533c1a7 100644 --- a/src/bin/termpty.h +++ b/src/bin/termpty.h @@ -13,6 +13,7 @@ typedef struct _Termblock Termblock; typedef struct _Termexp Termexp; typedef struct _Termpty Termpty; typedef struct _Termlink Term_Link; +typedef struct _TitleIconElem TitleIconElem; #define COL_DEF0 #define COL_BLACK 1 @@ -212,6 +213,7 @@ struct _Termpty uint8_t *bitmap; uint32_t size; } hl; + TitleIconElem *title_icon_stack; }; struct _Termcell diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 8dcecb2..243b8c3 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -3075,6 +3075,100 @@ _handle_resize_by_chars(Termpty *ty, Eina_Unicode **ptr) #endif } +struct _TitleIconElem { + const char *title; + const char *icon; + struct _TitleIconElem *next; +}; + +static void +_title_icon_stack_push(Termpty *ty, Eina_Unicode **p) +{ + int arg = _csi_arg_get(ty, p); + TitleIconElem *elem = calloc(sizeof(*elem), 1); + + if (!elem) + return; + + + switch (arg) + { + case -ESC_ARG_ERROR: + free(elem); + return; + case -ESC_ARG_NO_VALUE: + EINA_FALLTHROUGH; + case 0: + elem->title = eina_stringshare_ref(ty->prop.title); + elem->icon = eina_stringshare_ref(ty->prop.icon); + break; + case 1: + elem->icon = eina_stringshare_ref(ty->prop.icon); + break; + case 2: + elem->title = eina_stringshare_ref(ty->prop.title); + break; + default: + break; + } + if (!elem->title) + elem->title = ty->title_icon_stack ? +eina_stringshare_ref(ty->title_icon_stack->title) : +eina_stringshare_ref(ty->prop.title); + if (!elem->icon) + elem->icon = ty->title_icon_stack ? +eina_stringshare_ref(ty->title_icon_stack->icon) : +eina_stringshare_ref(ty->prop.icon); + elem->next = ty->title_icon_stack; + ty->title_icon_stack = elem; +} + +static void +_title_icon_stack_pop(Termpty *ty, Eina_Unicode **p) +{ + int arg = _csi_arg_get(ty, p); + TitleIconElem *elem = ty->title_icon_stack; + + if (!elem) + return; + + switch (arg) + { + case -ESC_ARG_ERROR: + return; + case -ESC_ARG_NO_VALUE: + EINA_FALLTHROUGH; + case 0: + eina_stringshare_del(ty->prop.icon); + ty->prop.icon = eina_stringshare_ref(elem->icon); + if (ty->cb.set_icon.func) + ty->cb.set_icon.func(ty->cb.set_icon.data); + eina_stringshare_del(ty->prop.title); + ty->prop.title = eina_stringshare_ref(elem->title); + if (ty->cb.set_title.func) + ty->cb.set_title.func(ty->cb.set_title.data); + break; + case 1: + eina_stringshare_del(ty->prop.icon); + ty->prop.icon = eina_stringshare_ref(elem->icon); + if (ty->cb.set_icon.func) + ty->cb.set_icon.func(ty->cb.set_icon.data); + break; + case 2: + eina_stringshare_del(ty->prop.title); + ty->prop.title = eina_stringshare_ref(elem->title); + if (ty->cb.set_title.func) + ty->cb.set_title.func(ty->cb.set_title.data); + break; + default: + break; + } + eina_stringshare_del(elem->icon); + eina_stringshare_del(elem->title); + ty->title_icon_stack = elem->next; + free(elem); +} + static void _handle_window_manipulation(Termpty *ty, Eina_Unicode **ptr) { @@ -3089,6 +3183,12 @@ _handle_window_manipulation(Termpty *ty, Eina_Unicode **ptr) case 8: _handle_resize_by_chars(ty, ); break; + case 22: +_title_icon_stack_push(ty, ); +break; + case 23: +_title_icon_stack_pop(ty, ); +break; default: // many others WRN("unhandled window manipulation %d", arg); diff --git a/tests/tests.results b/tests/tests.results index 1c6c915..4ffcddb 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -123,3 +123,6 @@ link_detection.sh bbe87a849586e8b922f26ad5d88146d
[EGIT] [apps/terminology] master 01/02: remove condition on if (X) eina_stringshare_del(X)
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=a5aaeefc18e6057c2d3d7a93c9952304b17b5bcc commit a5aaeefc18e6057c2d3d7a93c9952304b17b5bcc Author: Boris Faure Date: Fri Nov 29 19:59:57 2019 +0100 remove condition on if (X) eina_stringshare_del(X) --- src/bin/media.c | 4 ++-- src/bin/termio.c | 47 +-- src/bin/termpty.c| 22 ++ src/bin/termptyesc.c | 11 ++- src/bin/win.c| 23 +++ 5 files changed, 46 insertions(+), 61 deletions(-) diff --git a/src/bin/media.c b/src/bin/media.c index 28bfd2b..6240445 100644 --- a/src/bin/media.c +++ b/src/bin/media.c @@ -964,8 +964,8 @@ _smart_del(Evas_Object *obj) if (sd->realf) unlink(sd->realf); close(sd->tmpfd); } - if (sd->src) eina_stringshare_del(sd->src); - if (sd->realf) eina_stringshare_del(sd->realf); + eina_stringshare_del(sd->src); + eina_stringshare_del(sd->realf); if (sd->clip) evas_object_del(sd->clip); if (sd->o_img) evas_object_del(sd->o_img); if (sd->o_tmp) evas_object_del(sd->o_tmp); diff --git a/src/bin/termio.c b/src/bin/termio.c index 4ab0ebb..2d86ea7 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -176,11 +176,8 @@ termio_user_title_set(Evas_Object *obj, const char *title) size_t len = 0; EINA_SAFETY_ON_NULL_RETURN(sd); -if (sd->pty->prop.user_title) - { - eina_stringshare_del(sd->pty->prop.user_title); - sd->pty->prop.user_title = NULL; - } +eina_stringshare_del(sd->pty->prop.user_title); +sd->pty->prop.user_title = NULL; if (title) { @@ -409,7 +406,7 @@ termio_config_update(Evas_Object *obj) EINA_SAFETY_ON_NULL_RETURN(sd); - if (sd->font.name) eina_stringshare_del(sd->font.name); + eina_stringshare_del(sd->font.name); sd->font.name = NULL; if (sd->config->font.bitmap) @@ -872,11 +869,8 @@ _lost_selection(void *data, Elm_Sel_Type selection) } if (sd->have_sel) { - if (sd->sel_str) - { - eina_stringshare_del(sd->sel_str); - sd->sel_str = NULL; - } + eina_stringshare_del(sd->sel_str); + sd->sel_str = NULL; termio_sel_set(sd, EINA_FALSE); elm_object_cnp_selection_clear(sd->win, selection); termio_smart_update_queue(sd); @@ -906,7 +900,7 @@ termio_take_selection_text(Termio *sd, Elm_Sel_Type type, const char *text) elm_cnp_selection_loss_callback_set(sd->win, type, _lost_selection, sd->self); sd->have_sel = EINA_TRUE; - if (sd->sel_str) eina_stringshare_del(sd->sel_str); + eina_stringshare_del(sd->sel_str); sd->sel_str = text; } @@ -1439,11 +1433,9 @@ _remove_links(Termio *sd) { Eina_Bool same_geom = EINA_FALSE; - if (sd->link.string) - { -eina_stringshare_del(sd->link.string); -sd->link.string = NULL; - } + eina_stringshare_del(sd->link.string); + sd->link.string = NULL; + sd->link.x1 = -1; sd->link.y1 = -1; sd->link.x2 = -1; @@ -2383,8 +2375,7 @@ _smart_mouseover_apply(Termio *sd) goto end; } - if (sd->link.string) - eina_stringshare_del(sd->link.string); + eina_stringshare_del(sd->link.string); sd->link.string = eina_stringshare_add(s); if ((x1 == sd->link.x1) && (y1 == sd->link.y1) && @@ -2829,13 +2820,13 @@ termio_file_send_ok(const Evas_Object *obj, const char *file) sd->sendfile.f = fopen(file, "w"); if (sd->sendfile.f) { -if (sd->sendfile.file) eina_stringshare_del(sd->sendfile.file); +eina_stringshare_del(sd->sendfile.file); sd->sendfile.file = eina_stringshare_add(file); sd->sendfile.active = EINA_TRUE; termpty_write(ty, "k\n", 2); return EINA_TRUE; } - if (sd->sendfile.file) eina_stringshare_del(sd->sendfile.file); + eina_stringshare_del(sd->sendfile.file); sd->sendfile.file = NULL; sd->sendfile.active = EINA_FALSE; termpty_write(ty, "n\n", 2); @@ -3226,10 +3217,9 @@ _smart_del(Evas_Object *obj) if (sd->link_do_timer) ecore_timer_del(sd->link_do_timer); if (sd->mouse_move_job) ecore_job_del(sd->mouse_move_job); if (sd->mouseover_delay) ecore_timer_del(sd->mouseover_delay); - if (sd->font.name) eina_stringshare_del(sd->font.name); + eina_stringshare_del(sd->font.name); if (sd->pty) termpty_free(sd->pty); - if (sd->link.string) - eina_stringshare_del(sd->link.string); + eina_stringshare_del(sd->link.string);
[EGIT] [apps/terminology] master 02/02: termptyesc: handle invalid values for OSC + test
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=2e75539fb922833023cd9c56026a87f395167fd7 commit 2e75539fb922833023cd9c56026a87f395167fd7 Author: Boris Faure Date: Mon Nov 25 20:02:37 2019 +0100 termptyesc: handle invalid values for OSC + test - missing value is as if 0 - overflow - hex - negative value --- src/bin/termptyesc.c | 32 tests/osc-invalid.sh | 33 + tests/tests.results | 1 + 3 files changed, 62 insertions(+), 4 deletions(-) diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 815cf7b..84f93f2 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -3387,22 +3387,44 @@ unhandled: } static int -_osc_arg_get(Eina_Unicode **ptr) +_osc_arg_get(Termpty *ty, Eina_Unicode **ptr) { Eina_Unicode *b = *ptr; int sum = 0; + if ((b == NULL) || (*b == '\0')) + { +*ptr = NULL; +sum = -ESC_ARG_NO_VALUE; +goto error; + } + while (*b >= '0' && *b <= '9') { sum *= 10; sum += *b - '0'; b++; +if (sum >= 65536) + { + sum = -ESC_ARG_ERROR; + goto error; + } } if (*b != ';') - sum = -1; + { +sum = -ESC_ARG_ERROR; +goto error; + } else b++; *ptr = b; + + return sum; + +error: + ERR("Invalid OSC argument"); + ty->decoding_error = EINA_TRUE; + *ptr = NULL; return sum; } @@ -3728,11 +3750,13 @@ _handle_esc_osc(Termpty *ty, const Eina_Unicode *c, const Eina_Unicode *ce) else return 0; - arg = _osc_arg_get(); + arg = _osc_arg_get(ty, ); switch (arg) { - case -1: + case -ESC_ARG_ERROR: goto err; + case -ESC_ARG_NO_VALUE: + EINA_FALLTHROUGH; case 0: // title + icon name if (!*p) diff --git a/tests/osc-invalid.sh b/tests/osc-invalid.sh new file mode 100755 index 000..b9f5648 --- /dev/null +++ b/tests/osc-invalid.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# fill space with E +printf '\033#8' +#set color +printf '\033[46;31;3m' + +# set title + icon +printf '\033]0;foobar\007' + +# set again title + icon with no command +printf '\033];no command\007' + +# set again title + icon with id as double +printf '\033]00;double\007' + +# set again title + icon with id as hex +printf '\033]0x0;hex\007' + +# set again title + icon with id as negative zero +printf '\033]-0;negative zero\007' + +# set again title + icon with id as negative value +printf '\033]-2;negative value\007' + +# set again title + icon with space +printf '\033] 0;with spaces\007' + +# set again title + icon with space +printf '\033]0 ;with spaces v2\007' + +# set again title + icon with overflow +printf '\033]99;overflow\007' diff --git a/tests/tests.results b/tests/tests.results index 356b5ad..1c6c915 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -122,3 +122,4 @@ osc-11-query.sh b762d503e40641ff896dac46391ad7a8 link_detection.sh bbe87a849586e8b922f26ad5d88146dc selection_with_tabs.sh 23557497a8f28ca246048bb2443b3dab selection_empty_lines.sh 7a90d9bfde9e9fb7f067f6c08eac57ff +osc-invalid.sh 0acecbe16bb3b257745787c40affdb90 --
[EGIT] [apps/terminology] master 01/02: termptyesc: rename csi_arg_error to esc_arg_error
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=bde94adf217366e375677e60d1dfc0c3f55490c8 commit bde94adf217366e375677e60d1dfc0c3f55490c8 Author: Boris Faure Date: Mon Nov 25 19:44:30 2019 +0100 termptyesc: rename csi_arg_error to esc_arg_error --- src/bin/termptyesc.c | 250 +-- 1 file changed, 125 insertions(+), 125 deletions(-) diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 25da608..815cf7b 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -110,9 +110,9 @@ _cursor_is_within_margins(const Termpty *ty) ); } -enum csi_arg_error { - CSI_ARG_NO_VALUE = 1, - CSI_ARG_ERROR = 2 +enum esc_arg_error { + ESC_ARG_NO_VALUE = 1, + ESC_ARG_ERROR = 2 }; static int @@ -124,7 +124,7 @@ _csi_arg_get(Termpty *ty, Eina_Unicode **ptr) if ((b == NULL) || (*b == '\0')) { *ptr = NULL; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } /* Skip potential '?', '>' */ @@ -135,13 +135,13 @@ _csi_arg_get(Termpty *ty, Eina_Unicode **ptr) { b++; *ptr = b; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } if (*b == '\0') { *ptr = NULL; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } while ((*b >= '0') && (*b <= '9')) @@ -177,7 +177,7 @@ error: ERR("Invalid CSI argument"); ty->decoding_error = EINA_TRUE; *ptr = NULL; - return -CSI_ARG_ERROR; + return -ESC_ARG_ERROR; } static void @@ -301,9 +301,9 @@ _handle_esc_csi_reset_mode(Termpty *ty, Eina_Unicode cc, Eina_Unicode *b, // http://ttssh2.sourceforge.jp/manual/en/about/ctrlseq.html switch (arg) { -case -CSI_ARG_ERROR: +case -ESC_ARG_ERROR: return; - /* TODO: -CSI_ARG_NO_VALUE */ + /* TODO: -ESC_ARG_NO_VALUE */ case 1: ty->termstate.appcursor = mode; break; @@ -553,9 +553,9 @@ _handle_esc_csi_reset_mode(Termpty *ty, Eina_Unicode cc, Eina_Unicode *b, switch (arg) { -case -CSI_ARG_ERROR: +case -ESC_ARG_ERROR: return; - /* TODO: -CSI_ARG_NO_VALUE */ + /* TODO: -ESC_ARG_NO_VALUE */ case 1: ty->termstate.appcursor = mode; break; @@ -593,7 +593,7 @@ _csi_truecolor_arg_get(Termpty *ty, Eina_Unicode **ptr) if ((b == NULL) || (*b == '\0')) { *ptr = NULL; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } /* by construction, shall be the same separator as the following ones */ @@ -601,26 +601,26 @@ _csi_truecolor_arg_get(Termpty *ty, Eina_Unicode **ptr) if ((separator != ';') && (separator != ':')) { *ptr = NULL; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } if (*b == separator) { b++; *ptr = b; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } if (*b == '\0') { *ptr = NULL; -return -CSI_ARG_NO_VALUE; +return -ESC_ARG_NO_VALUE; } /* invalid values */ if ((*b < '0') || (*b > '9')) { *ptr = NULL; -return -CSI_ARG_ERROR; +return -ESC_ARG_ERROR; } while ((*b >= '0') && (*b <= '9')) @@ -630,7 +630,7 @@ _csi_truecolor_arg_get(Termpty *ty, Eina_Unicode **ptr) *ptr = NULL; ERR("Invalid sequence: argument is too large"); ty->decoding_error = EINA_TRUE; - return -CSI_ARG_ERROR; + return -ESC_ARG_ERROR; } sum *= 10; sum += *b - '0'; @@ -719,9 +719,9 @@ _handle_esc_csi_truecolor_rgb(Termpty *ty, Eina_Unicode **ptr) r = _csi_truecolor_arg_get(ty, ptr); g = _csi_truecolor_arg_get(ty, ptr); b = _csi_truecolor_arg_get(ty, ptr); - if ((r == -CSI_ARG_ERROR) || - (g == -CSI_ARG_ERROR) || - (b == -CSI_ARG_ERROR)) + if ((r == -ESC_ARG_ERROR) || + (g == -ESC_ARG_ERROR) || + (b == -ESC_ARG_ERROR)) return COL_DEF; if (separator == ':' && *ptr) @@ -736,7 +736,7 @@ _handle_esc_csi_truecolor_rgb(Termpty *ty, Eina_Unicode **ptr) while ((*ptr) && (**ptr != ';')) { int arg = _csi_truecolor_arg_get(ty, ptr); - if (arg == -CSI_ARG_ERROR) + if (arg == -ESC_ARG_ERROR) break; } } @@ -746,11 +746,11 @@ _handle_esc_csi_truecolor_rgb(Termpty *ty, Eina_Unicode **ptr) } } - if (r == -CSI_ARG_NO_
[EGIT] [apps/terminology] master 01/01: backlog: cleanup
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=1488b413427b522db82acfef66aca8ca5c78b9f6 commit 1488b413427b522db82acfef66aca8ca5c78b9f6 Author: Boris Faure Date: Sun Nov 24 19:57:48 2019 +0100 backlog: cleanup --- src/bin/backlog.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index 0679383..b7271c8 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -103,7 +103,7 @@ termpty_save_free(Termpty *ty, Termsave *ts) } free(ts->cells); ts->cells = NULL; - _accounting_change(-1 * ts->w * sizeof(Termcell)); + _accounting_change((-1) * (int)(ts->w * sizeof(Termcell))); ts->w = 0; } @@ -127,7 +127,7 @@ termpty_backlog_free(Termpty *ty) for (i = 0; i < ty->backsize; i++) termpty_save_free(ty, >back[i]); - _accounting_change(-1 * sizeof(Termsave) * ty->backsize); + _accounting_change((-1) * (int)(sizeof(Termsave) * ty->backsize)); free(ty->back); ty->back = NULL; } --
[EGIT] [apps/terminology] master 01/01: backlog: simplify code. Closes CID1407754
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=787e16f21523ebe251bdef5b34d2a11c3d400ab8 commit 787e16f21523ebe251bdef5b34d2a11c3d400ab8 Author: Boris Faure Date: Sun Nov 24 19:50:08 2019 +0100 backlog: simplify code. Closes CID1407754 --- src/bin/backlog.c | 45 - 1 file changed, 20 insertions(+), 25 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index 3941d21..0679383 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -181,6 +181,7 @@ void termpty_backlog_size_set(Termpty *ty, size_t size) { Termsave *new_back; + size_t i; if (ty->backsize == size) return; @@ -192,34 +193,28 @@ termpty_backlog_size_set(Termpty *ty, size_t size) termpty_backlog_free(ty); goto end; } - if (size > 0) + if (size > ty->backsize) { -size_t i; -if (size > ty->backsize) - { - new_back = realloc(ty->back, sizeof(Termsave) * size); - if (!new_back) - return; - memset(new_back + ty->backsize, 0, -sizeof(Termsave) * (size - ty->backsize)); - ty->back = new_back; - } -else - { - new_back = calloc(1, sizeof(Termsave) * size); - if (!new_back) - return; - for (i = 0; i < size; i++) - new_back[i] = ty->back[i]; - for (i = size; i < ty->backsize; i++) - termpty_save_free(ty, >back[i]); - free(ty->back); - ty->back = new_back; - } -_accounting_change(sizeof(Termsave) * (size - ty->backsize)); +new_back = realloc(ty->back, sizeof(Termsave) * size); +if (!new_back) + return; +memset(new_back + ty->backsize, 0, + sizeof(Termsave) * (size - ty->backsize)); +ty->back = new_back; } else - ty->back = NULL; + { +new_back = calloc(1, sizeof(Termsave) * size); +if (!new_back) + return; +for (i = 0; i < size; i++) + new_back[i] = ty->back[i]; +for (i = size; i < ty->backsize; i++) + termpty_save_free(ty, >back[i]); +free(ty->back); +ty->back = new_back; + } + _accounting_change(sizeof(Termsave) * (size - ty->backsize)); end: ty->backpos = 0; ty->backsize = size; --
[EGIT] [apps/terminology] master 01/07: git mv src/bin/termptysave.{c, h} src/bin/backlog.{c, h}
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=62302496dc5ff61dbaf4fe16fd8ce813aa8657f2 commit 62302496dc5ff61dbaf4fe16fd8ce813aa8657f2 Author: Boris Faure Date: Sat Nov 23 18:31:23 2019 +0100 git mv src/bin/termptysave.{c,h} src/bin/backlog.{c,h} --- DESIGN.md| 2 +- src/bin/{termptysave.c => backlog.c} | 2 +- src/bin/{termptysave.h => backlog.h} | 0 src/bin/meson.build | 6 +++--- src/bin/termpty.c| 2 +- src/bin/termptyops.c | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/DESIGN.md b/DESIGN.md index ba46615..e277a67 100644 --- a/DESIGN.md +++ b/DESIGN.md @@ -1,6 +1,7 @@ A simple documentation to navige through the C files: * `src/bin/about.c` handles the About widget +* `src/bin/backlog.c`: backlog handling * `src/bin/col.c` is about the colors handled by the terminal * `src/bin/config.c`: how the configuration is saved/loaded/updated * `src/bin/controls.c`: the widget when a right-click is done on a terminal @@ -33,7 +34,6 @@ A simple documentation to navige through the C files: * `src/bin/termptyext.c`: extented terminology escape handling * `src/bin/termptygfx.c`: charset translations * `src/bin/termptyops.c`: handling history -* `src/bin/termptysave.c`: compression of the backlog * `src/bin/tyalpha.c`: the `tyalpha` tool * `src/bin/tybg.c`: the `tybg` tool * `src/bin/tycat.c`: the `tycat` tool diff --git a/src/bin/termptysave.c b/src/bin/backlog.c similarity index 98% rename from src/bin/termptysave.c rename to src/bin/backlog.c index afb9db4..e3e8136 100644 --- a/src/bin/termptysave.c +++ b/src/bin/backlog.c @@ -1,7 +1,7 @@ #include "private.h" #include #include "termpty.h" -#include "termptysave.h" +#include "backlog.h" static int ts_comp = 0; diff --git a/src/bin/termptysave.h b/src/bin/backlog.h similarity index 100% rename from src/bin/termptysave.h rename to src/bin/backlog.h diff --git a/src/bin/meson.build b/src/bin/meson.build index dc6c2a7..6de1d17 100644 --- a/src/bin/meson.build +++ b/src/bin/meson.build @@ -31,7 +31,7 @@ terminology_sources = ['private.h', 'termptyops.c', 'termptyops.h', 'termptygfx.c', 'termptygfx.h', 'termptyext.c', 'termptyext.h', - 'termptysave.c', 'termptysave.h', + 'backlog.c', 'backlog.h', 'md5/md5.c', 'md5/md5.h', 'utf8.c', 'utf8.h', 'win.c', 'win.h', @@ -49,7 +49,7 @@ tycat_sources = ['tycommon.c', 'tycommon.h', 'tycat.c', 'extns.c', 'extns.h'] tyls_sources = ['extns.c', 'extns.h', 'tyls.c', 'tycommon.c', 'tycommon.h'] tysend_sources = ['tycommon.c', 'tycommon.h', 'tysend.c'] tyfuzz_sources = ['termptyesc.c', 'termptyesc.h', - 'termptysave.c', 'termptysave.h', + 'backlog.c', 'backlog.h', 'termptyops.c', 'termptyops.h', 'termptydbl.c', 'termptydbl.h', 'termptyext.c', 'termptyext.h', @@ -64,7 +64,7 @@ tyfuzz_sources = ['termptyesc.c', 'termptyesc.h', 'utils.c', 'utils.h', 'tyfuzz.c'] tytest_sources = ['termptyesc.c', 'termptyesc.h', - 'termptysave.c', 'termptysave.h', + 'backlog.c', 'backlog.h', 'termptyops.c', 'termptyops.h', 'termptydbl.c', 'termptydbl.h', 'termptyext.c', 'termptyext.h', diff --git a/src/bin/termpty.c b/src/bin/termpty.c index 879135f..2951710 100644 --- a/src/bin/termpty.c +++ b/src/bin/termpty.c @@ -6,7 +6,7 @@ #include "termpty.h" #include "termptyesc.h" #include "termptyops.h" -#include "termptysave.h" +#include "backlog.h" #include "keyin.h" #if !defined(ENABLE_FUZZING) && !defined(ENABLE_TESTS) # include "win.h" diff --git a/src/bin/termptyops.c b/src/bin/termptyops.c index 27c4399..208cb73 100644 --- a/src/bin/termptyops.c +++ b/src/bin/termptyops.c @@ -5,7 +5,7 @@ #include "termptydbl.h" #include "termptyops.h" #include "termptygfx.h" -#include "termptysave.h" +#include "backlog.h" #include "miniview.h" #include --
[EGIT] [apps/terminology] master 05/07: backlog: be smarter when changing backlog's size
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=77ab1efb9dc2e4c0a6cac4c84551ae53f049ee8e commit 77ab1efb9dc2e4c0a6cac4c84551ae53f049ee8e Author: Boris Faure Date: Sun Nov 24 16:14:00 2019 +0100 backlog: be smarter when changing backlog's size --- src/bin/backlog.c | 39 +++ 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index 62669b9..aac4db8 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -166,21 +166,52 @@ end: void termpty_backlog_size_set(Termpty *ty, size_t size) { + Termsave *new_back; + if (ty->backsize == size) return; - /* TODO: RESIZE: handle that case better: changing backscroll size */ termpty_backlog_lock(); - termpty_backlog_free(ty); + if (size == 0) + { +termpty_backlog_free(ty); +goto end; + } if (size > 0) { -ty->back = calloc(1, sizeof(Termsave) * size); -_accounting_change(sizeof(Termsave) * size); +size_t i; +if (size > ty->backsize) + { + new_back = realloc(ty->back, sizeof(Termsave) * size); + if (!new_back) + return; + memset(new_back + ty->backsize, 0, +sizeof(Termsave) * (size - ty->backsize)); + ty->back = new_back; + } +else + { + new_back = calloc(1, sizeof(Termsave) * size); + if (!new_back) + return; + for (i = 0; i < size; i++) + new_back[i] = ty->back[i]; + for (i = size; i < ty->backsize; i++) + termpty_save_free(ty, >back[i]); + free(ty->back); + ty->back = new_back; + } +_accounting_change(sizeof(Termsave) * (size - ty->backsize)); } else ty->back = NULL; +end: ty->backpos = 0; ty->backsize = size; + /* Reset beacon */ + ty->backlog_beacon.screen_y = 0; + ty->backlog_beacon.backlog_y = 0; + termpty_backlog_unlock(); } --
[EGIT] [apps/terminology] master 03/07: backlog: move related functions to that file
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=cf80e70faf0ecf3ebcac9a4be41ddc2cf93214f0 commit cf80e70faf0ecf3ebcac9a4be41ddc2cf93214f0 Author: Boris Faure Date: Sat Nov 23 23:31:21 2019 +0100 backlog: move related functions to that file --- src/bin/backlog.c | 85 +++ src/bin/backlog.h | 19 - src/bin/miniview.c| 1 + src/bin/termio.c | 1 + src/bin/termiointernals.c | 1 + src/bin/termiolink.c | 2 + src/bin/termpty.c | 173 ++ src/bin/termpty.h | 5 -- src/bin/termptyops.c | 24 --- 9 files changed, 128 insertions(+), 183 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index 131a2d5..b387b85 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -102,3 +102,88 @@ void termpty_backlog_unlock(void) { } + +void +termpty_backlog_free(Termpty *ty) +{ + size_t i; + + if (!ty || !ty->back) + return; + + for (i = 0; i < ty->backsize; i++) + termpty_save_free(ty, >back[i]); + free(ty->back); + ty->back = NULL; +} + +void +termpty_clear_backlog(Termpty *ty) +{ + int backsize; + + ty->backlog_beacon.screen_y = 0; + ty->backlog_beacon.backlog_y = 0; + + termpty_backlog_lock(); + termpty_backlog_free(ty); + ty->backpos = 0; + backsize = ty->backsize; + ty->backsize = 0; + termpty_backlog_size_set(ty, backsize); + termpty_backlog_unlock(); +} + +ssize_t +termpty_backlog_length(Termpty *ty) +{ + int backlog_y = ty->backlog_beacon.backlog_y; + int screen_y = ty->backlog_beacon.screen_y; + + if (!ty->backsize) + return 0; + + for (backlog_y++; backlog_y < (int)ty->backsize; backlog_y++) + { +int nb_lines; +const Termsave *ts; + +ts = BACKLOG_ROW_GET(ty, backlog_y); +if (!ts->cells) + goto end; + +nb_lines = (ts->w == 0) ? 1 : (ts->w + ty->w - 1) / ty->w; +screen_y += nb_lines; +ty->backlog_beacon.screen_y = screen_y; +ty->backlog_beacon.backlog_y = backlog_y; + } +end: + return ty->backlog_beacon.screen_y; +} + + +void +termpty_backlog_size_set(Termpty *ty, size_t size) +{ + if (ty->backsize == size) + return; + + /* TODO: RESIZE: handle that case better: changing backscroll size */ + termpty_backlog_lock(); + + if (ty->back) + { +size_t i; + +for (i = 0; i < ty->backsize; i++) + termpty_save_free(ty, >back[i]); +free(ty->back); + } + if (size > 0) + ty->back = calloc(1, sizeof(Termsave) * size); + else + ty->back = NULL; + ty->backpos = 0; + ty->backsize = size; + termpty_backlog_unlock(); +} diff --git a/src/bin/backlog.h b/src/bin/backlog.h index 91132ef..0c3e5ce 100644 --- a/src/bin/backlog.h +++ b/src/bin/backlog.h @@ -1,5 +1,5 @@ -#ifndef _TERMPTY_SAVE_H__ -#define _TERMPTY_SAVE_H__ 1 +#ifndef _BACKLOG_H__ +#define _BACKLOG_H__ 1 void termpty_save_register(Termpty *ty); void termpty_save_unregister(Termpty *ty); @@ -9,4 +9,19 @@ void termpty_save_free(Termpty *ty, Termsave *ts); Termsave *termpty_save_expand(Termpty *ty, Termsave *ts, Termcell *cells, size_t delta); +void termpty_backlog_lock(void); +void termpty_backlog_unlock(void); + +void +termpty_clear_backlog(Termpty *ty); +void +termpty_backlog_free(Termpty *ty); +void +termpty_backlog_size_set(Termpty *ty, size_t size); +ssize_t +termpty_backlog_length(Termpty *ty); + +#define BACKLOG_ROW_GET(Ty, Y) \ + (>back[(Ty->backsize + ty->backpos - ((Y) - 1 )) % Ty->backsize]) + #endif diff --git a/src/bin/miniview.c b/src/bin/miniview.c index 6149183..8eb7d55 100644 --- a/src/bin/miniview.c +++ b/src/bin/miniview.c @@ -12,6 +12,7 @@ #include "miniview.h" #include "utils.h" #include "main.h" +#include "backlog.h" /* specific log domain to help debug only miniview */ int _miniview_log_dom = -1; diff --git a/src/bin/termio.c b/src/bin/termio.c index f366cb5..4ab0ebb 100644 --- a/src/bin/termio.c +++ b/src/bin/termio.c @@ -6,6 +6,7 @@ #include "termio.h" #include "termiolink.h" #include "termpty.h" +#include "backlog.h" #include "termptyops.h" #include "termcmd.h" #include "termptydbl.h" diff --git a/src/bin/termiointernals.c b/src/bin/termiointernals.c index 598c724..f24764f 100644 --- a/src/bin/termiointernals.c +++ b/src/bin/termiointernals.c @@ -5,6 +5,7 @@ #include "termio.h" #include "miniview.h" #include "termpty.h" +#include "backlog.h" #include "termptydbl.h" #include "termptyops.h" #include "termiointernals.h" diff --git a/src/bin/termiolink.c b/src/bin/termio
[EGIT] [apps/terminology] master 07/07: backlog: take alignement into account for memory accounting
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=e16505f5f7719a7e02ba0707d26ee9c0fa46bda8 commit e16505f5f7719a7e02ba0707d26ee9c0fa46bda8 Author: Boris Faure Date: Sun Nov 24 19:00:31 2019 +0100 backlog: take alignement into account for memory accounting --- src/bin/backlog.c | 8 1 file changed, 8 insertions(+) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index 17a2b83..3941d21 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -14,6 +14,14 @@ static int64_t _mem_used = 0; static void _accounting_change(int64_t diff) { + if (diff > 0) + { +diff = ((diff + 16-1) / 16) * 16; + } + else + { +diff = ((-1 * diff + 16-1) / 16) * -16; + } _mem_used += diff; } --
[EGIT] [apps/terminology] master 06/07: options_behavior: display current memory usage of the backlog
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=9f58d6837115a03db64cd862638edc9f8eaa94a7 commit 9f58d6837115a03db64cd862638edc9f8eaa94a7 Author: Boris Faure Date: Sun Nov 24 18:06:21 2019 +0100 options_behavior: display current memory usage of the backlog --- src/bin/backlog.c | 10 -- src/bin/backlog.h | 3 +++ src/bin/options_behavior.c | 27 ++- 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index aac4db8..17a2b83 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -9,12 +9,18 @@ static int ts_uncomp = 0; static int ts_freeops = 0; static Eina_List *ptys = NULL; -static int64_t mem_used = 0; +static int64_t _mem_used = 0; static void _accounting_change(int64_t diff) { - mem_used += diff; + _mem_used += diff; +} + +int64_t +termpty_backlog_memory_get(void) +{ + return _mem_used; } diff --git a/src/bin/backlog.h b/src/bin/backlog.h index 0c3e5ce..dfe0fd7 100644 --- a/src/bin/backlog.h +++ b/src/bin/backlog.h @@ -21,6 +21,9 @@ termpty_backlog_size_set(Termpty *ty, size_t size); ssize_t termpty_backlog_length(Termpty *ty); +int64_t +termpty_backlog_memory_get(void); + #define BACKLOG_ROW_GET(Ty, Y) \ (>back[(Ty->backsize + ty->backpos - ((Y) - 1 )) % Ty->backsize]) diff --git a/src/bin/options_behavior.c b/src/bin/options_behavior.c index 1fc4e4a..c945d5d 100644 --- a/src/bin/options_behavior.c +++ b/src/bin/options_behavior.c @@ -4,6 +4,8 @@ #include #include #include +#include "termpty.h" +#include "backlog.h" #include "config.h" #include "termio.h" #include "options.h" @@ -17,6 +19,8 @@ typedef struct _Behavior_Ctx { Evas_Object *op_wh_current; Evas_Object *term; Evas_Object *sld_hide_cursor; + Evas_Object *backlock_label; + char *backlog_msg; Config *config; } Behavior_Ctx; @@ -85,6 +89,24 @@ sback_units_format(double d) return (char*)eina_stringshare_printf(_("%'d lines"), sback_double_to_expo_int(d)); } +static void +_update_backlog_title(Behavior_Ctx *ctx) +{ + char *factor = " KMG"; + double amount = termpty_backlog_memory_get(); + + while (amount > 1024.0 && factor[1] != '\0') + { +amount /= 1024; +factor++; + } + eina_stringshare_del(ctx->backlog_msg); + ctx->backlog_msg = (char*) eina_stringshare_printf( + _("Scrollback (current memory usage: %'.2f%cB):"), + amount, factor[0]); + elm_object_text_set(ctx->backlock_label, ctx->backlog_msg); +} + static void _cb_op_behavior_sback_chg(void *data, Evas_Object *obj, @@ -95,6 +117,7 @@ _cb_op_behavior_sback_chg(void *data, config->scrollback = (double) sback_double_to_expo_int(elm_slider_value_get(obj)); termio_config_update(ctx->term); + _update_backlog_title(ctx); config_save(config); } @@ -187,6 +210,7 @@ _parent_del_cb(void *data, { Behavior_Ctx *ctx = data; + eina_stringshare_del(ctx->backlog_msg); free(ctx); } @@ -563,7 +587,8 @@ options_behavior(Evas_Object *opbox, Evas_Object *term) o = elm_label_add(bx); evas_object_size_hint_weight_set(o, 0.0, 0.0); evas_object_size_hint_align_set(o, 0.0, 0.5); - elm_object_text_set(o, _("Scrollback:")); + ctx->backlock_label = o; + _update_backlog_title(ctx); elm_box_pack_end(bx, o); evas_object_show(o); --
[EGIT] [apps/terminology] master 04/07: backlog: take the size of backlog into account
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=e6b78bd4064a4e0751b70f058a5d513b3377d3e6 commit e6b78bd4064a4e0751b70f058a5d513b3377d3e6 Author: Boris Faure Date: Sun Nov 24 00:11:00 2019 +0100 backlog: take the size of backlog into account --- src/bin/backlog.c | 13 + 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index b387b85..62669b9 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -113,6 +113,7 @@ termpty_backlog_free(Termpty *ty) for (i = 0; i < ty->backsize; i++) termpty_save_free(ty, >back[i]); + _accounting_change(-1 * sizeof(Termsave) * ty->backsize); free(ty->back); ty->back = NULL; } @@ -171,16 +172,12 @@ termpty_backlog_size_set(Termpty *ty, size_t size) /* TODO: RESIZE: handle that case better: changing backscroll size */ termpty_backlog_lock(); - if (ty->back) + termpty_backlog_free(ty); + if (size > 0) { -size_t i; - -for (i = 0; i < ty->backsize; i++) - termpty_save_free(ty, >back[i]); -free(ty->back); +ty->back = calloc(1, sizeof(Termsave) * size); +_accounting_change(sizeof(Termsave) * size); } - if (size > 0) - ty->back = calloc(1, sizeof(Termsave) * size); else ty->back = NULL; ty->backpos = 0; --
[EGIT] [apps/terminology] master 02/07: backlog: early work to have memory accounting of the backlogs
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=0c87de9f5edd2c21fd8eff010734ced14ea9fce0 commit 0c87de9f5edd2c21fd8eff010734ced14ea9fce0 Author: Boris Faure Date: Sat Nov 23 23:06:34 2019 +0100 backlog: early work to have memory accounting of the backlogs --- src/bin/backlog.c | 13 + 1 file changed, 13 insertions(+) diff --git a/src/bin/backlog.c b/src/bin/backlog.c index e3e8136..131a2d5 100644 --- a/src/bin/backlog.c +++ b/src/bin/backlog.c @@ -9,6 +9,15 @@ static int ts_uncomp = 0; static int ts_freeops = 0; static Eina_List *ptys = NULL; +static int64_t mem_used = 0; + +static void +_accounting_change(int64_t diff) +{ + mem_used += diff; +} + + void termpty_save_register(Termpty *ty) { @@ -41,6 +50,7 @@ termpty_save_new(Termpty *ty, Termsave *ts, int w) if (!cells ) return NULL; ts->cells = cells; ts->w = w; + _accounting_change(w * sizeof(Termcell)); return ts; } @@ -57,7 +67,9 @@ termpty_save_expand(Termpty *ty, Termsave *ts, Termcell *cells, size_t delta) 0, delta * sizeof(Termcell)); TERMPTY_CELL_COPY(ty, cells, [ts->w], (int)delta); + _accounting_change(-1 * ts->w * sizeof(Termcell)); ts->w += delta; + _accounting_change(ts->w * sizeof(Termcell)); ts->cells = newcells; return ts; } @@ -77,6 +89,7 @@ termpty_save_free(Termpty *ty, Termsave *ts) } free(ts->cells); ts->cells = NULL; + _accounting_change(-1 * ts->w * sizeof(Termcell)); ts->w = 0; } --
[EGIT] [apps/terminology] master 01/01: Merge branch 'terminology-1.6'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=b2ff5f3ccdcd758af8a76c288ba758e6166197ae commit b2ff5f3ccdcd758af8a76c288ba758e6166197ae Merge: 7461c98 1333e80 Author: Boris Faure Date: Thu Nov 21 21:51:54 2019 +0100 Merge branch 'terminology-1.6' tests/selection_empty_lines.sh | 42 ++ tests/tests.results| 1 + 2 files changed, 43 insertions(+) --
[EGIT] [apps/terminology] terminology-1.6 01/01: tests: add one about selecting over empty lines
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=1333e80866591f4507b5e038f47aaf4647030399 commit 1333e80866591f4507b5e038f47aaf4647030399 Author: Boris Faure Date: Thu Nov 21 21:50:18 2019 +0100 tests: add one about selecting over empty lines --- tests/selection_empty_lines.sh | 42 ++ tests/tests.results| 1 + 2 files changed, 43 insertions(+) diff --git a/tests/selection_empty_lines.sh b/tests/selection_empty_lines.sh new file mode 100755 index 000..5bb671e --- /dev/null +++ b/tests/selection_empty_lines.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +# char width: 7 +# char height: 15 + +# clear screen +printf '\033[2J' + +# set color +printf '\033[46;31;3m' + +#move to 0,0 +printf '\033[H' + +# set text +TEXT="The path of the righteous man is beset on all sides by the iniquities of the selfish and the tyranny of evil men. Blessed is he who, in the name of charity and good will, shepherds the weak through the valley of darkness, for he is truly his brother's keeper and the finder of lost children. And I will strike down upon thee with great vengeance and furious anger those who would attempt to poison and destroy My brothers. And you will know My name is the Lord when I lay My vengeance u [...] +printf "%s\r\n\r\n%s" "$TEXT" "$TEXT" + + +# mouse down to start selection +printf '\033}td;16;85;1;0;0\0' + +# mouse move +printf '\033}tm;244;150;0\0' + +# mouse up +printf '\033}tu;244;150;1;0;0\0' + +# force render +printf '\033}tr\0' + +# selection is +printf '\033}tsdestroy My brothers. And you will know My name is the Lord when I lay My vengeance upon thee.\n\nThe path of the righteous man is beset on all sides by the iniquities of the selfish and the tyranny of evil men. B\0' + +# remove selection +printf '\033}td;0;0;1;0;0\0\033}tu;0;0;1;0;0\0' + +# force render +printf '\033}tr\0' + +# no more selection +printf '\033}tn\0' diff --git a/tests/tests.results b/tests/tests.results index bbc8190..356b5ad 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -121,3 +121,4 @@ shift_in_out.sh 3896bcc6887998bbc41b43840a6b2e33 osc-11-query.sh b762d503e40641ff896dac46391ad7a8 link_detection.sh bbe87a849586e8b922f26ad5d88146dc selection_with_tabs.sh 23557497a8f28ca246048bb2443b3dab +selection_empty_lines.sh 7a90d9bfde9e9fb7f067f6c08eac57ff --
[EGIT] [apps/terminology] master 01/01: Merge branch 'terminology-1.6'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=7461c9896df1448b5f25e94e832a5fb16ffe3ea2 commit 7461c9896df1448b5f25e94e832a5fb16ffe3ea2 Merge: 79dfb0f 8e3263d Author: Boris Faure Date: Wed Nov 20 23:09:57 2019 +0100 Merge branch 'terminology-1.6' --
[EGIT] [apps/terminology] terminology-1.6 02/04: terminology.desktop: set full path of icon
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=631aeeda970e9fa82074c13c74d991975ba5c4e3 commit 631aeeda970e9fa82074c13c74d991975ba5c4e3 Author: Boris Faure Date: Mon Nov 18 19:00:08 2019 +0100 terminology.desktop: set full path of icon --- data/desktop/meson.build | 14 -- .../{terminology.desktop => terminology.desktop.in}| 2 +- meson.build| 2 ++ 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/data/desktop/meson.build b/data/desktop/meson.build index 1eb4019..8c16dbe 100644 --- a/data/desktop/meson.build +++ b/data/desktop/meson.build @@ -1,2 +1,12 @@ -install_data('terminology.desktop', - install_dir: join_paths(get_option('datadir'), 'applications')) +icon_sed = 's~%ICON_PATH%~@0@~'.format(join_paths(get_option('prefix'), + get_option('datadir'), + 'icons/hicolor/128x128/apps')) + +custom_target( + 'terminology.desktop', + input : 'terminology.desktop.in', + output: 'terminology.desktop', + command : [sed, icon_sed, '@INPUT@'], + capture : true, + install : true, + install_dir : join_paths(get_option('datadir'), 'applications')) diff --git a/data/desktop/terminology.desktop b/data/desktop/terminology.desktop.in similarity index 95% rename from data/desktop/terminology.desktop rename to data/desktop/terminology.desktop.in index 020891d..6d57027 100644 --- a/data/desktop/terminology.desktop +++ b/data/desktop/terminology.desktop.in @@ -19,6 +19,6 @@ Comment[ru]=Эмулятор терминала Comment[ko]=터미널 에뮬레이터 Keywords=shell;prompt;command;commandline; Exec=terminology -Icon=terminology +Icon=%ICON_PATH%/terminology.png Categories=System;TerminalEmulator; StartupWMClass=terminology diff --git a/meson.build b/meson.build index b081ddc..baaf6e3 100644 --- a/meson.build +++ b/meson.build @@ -127,6 +127,8 @@ endif message('edje_cc set to:' + edje_cc) +sed = find_program('sed') + configure_file(output: 'terminology_config.h', configuration: config_data) --
[EGIT] [apps/terminology] terminology-1.6 04/04: snap: no plugs with classic confinement
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=8e3263d42af9eecb86884a36170eb1c601dcd33e commit 8e3263d42af9eecb86884a36170eb1c601dcd33e Author: Boris Faure Date: Tue Nov 19 23:00:21 2019 +0100 snap: no plugs with classic confinement --- snap/snapcraft.yaml | 12 1 file changed, 12 deletions(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 661ec13..737a586 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -16,18 +16,6 @@ apps: terminology: command: terminology desktop: usr/share/applications/terminology.desktop -plugs: - - desktop - - desktop-legacy - - network - - network-bind - - home - - opengl - - pulseaudio - - x11 - - wayland - - unity7 - - audio-playback tyalpha: command: tyalpha tybg: --
[EGIT] [apps/terminology] terminology-1.6 03/04: terminology.desktop.in: add french translation
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=a120692339cca4561c38c49e4cd1262ec68e7065 commit a120692339cca4561c38c49e4cd1262ec68e7065 Author: Boris Faure Date: Tue Nov 19 22:59:35 2019 +0100 terminology.desktop.in: add french translation Thanks to Philippe Jean Guillaumie --- data/desktop/terminology.desktop.in | 1 + 1 file changed, 1 insertion(+) diff --git a/data/desktop/terminology.desktop.in b/data/desktop/terminology.desktop.in index 6d57027..5fcfa40 100644 --- a/data/desktop/terminology.desktop.in +++ b/data/desktop/terminology.desktop.in @@ -12,6 +12,7 @@ Comment=Terminal emulator Comment[da]=Terminalemulator Comment[eo]=Terminalimitilo Comment[es]=Emulador de terminal +Comment[fr]=Émulateur de terminal Comment[gl]=Emulador de terminal Comment[it]=Emulatore di terminale Comment[pt]=Emulador de terminal --