From ca9627e70852f6b2e835660df870fe3ab405882d Mon Sep 17 00:00:00 2001 From: "Suren A. Chilingaryan" Date: Sun, 1 Sep 2019 00:00:32 +0200 Subject: Initial import --- x11-terms/xterm/Manifest | 28 ++++ .../files/xterm-197-alt-keysym-index.patch.bz2 | Bin 0 -> 354 bytes .../xterm/files/xterm-199-alt-meta-mod.patch.bz2 | Bin 0 -> 692 bytes .../xterm/files/xterm-199-biarch-utmp.patch.bz2 | Bin 0 -> 326 bytes x11-terms/xterm/files/xterm-LANG.patch | 41 ++++++ x11-terms/xterm/files/xterm-ds-config-278.patch | 86 ++++++++++++ x11-terms/xterm/files/xterm-ds-config.patch | 73 +++++++++++ x11-terms/xterm/files/xterm-ds-copy-225.patch | 36 ++++++ x11-terms/xterm/files/xterm-ds-copy-243.patch | 36 ++++++ x11-terms/xterm/files/xterm-ds-copy.patch | 33 +++++ x11-terms/xterm/files/xterm-ds-input-225.patch | 12 ++ x11-terms/xterm/files/xterm-ds-input.patch | 11 ++ x11-terms/xterm/files/xterm-ds-metaesc.patch | 9 ++ x11-terms/xterm/files/xterm-ds-paste-225.patch | 12 ++ x11-terms/xterm/files/xterm-ds-paste-278.patch | 12 ++ x11-terms/xterm/files/xterm-ds-paste.patch | 12 ++ x11-terms/xterm/files/xterm-ds-sm-243.patch | 144 +++++++++++++++++++++ x11-terms/xterm/files/xterm-ds-sm.patch | 129 ++++++++++++++++++ x11-terms/xterm/files/xterm-ds-utf8mode.patch | 12 ++ x11-terms/xterm/files/xterm215-ds-copy.patch | 36 ++++++ x11-terms/xterm/xterm-215-r3.ebuild | 125 ++++++++++++++++++ x11-terms/xterm/xterm-225-r1.ebuild | 113 ++++++++++++++++ x11-terms/xterm/xterm-243-r1.ebuild | 112 ++++++++++++++++ x11-terms/xterm/xterm-278-r1.ebuild | 110 ++++++++++++++++ x11-terms/xterm/xterm-278-r2.ebuild | 114 ++++++++++++++++ 25 files changed, 1296 insertions(+) create mode 100644 x11-terms/xterm/Manifest create mode 100644 x11-terms/xterm/files/xterm-197-alt-keysym-index.patch.bz2 create mode 100644 x11-terms/xterm/files/xterm-199-alt-meta-mod.patch.bz2 create mode 100644 x11-terms/xterm/files/xterm-199-biarch-utmp.patch.bz2 create mode 100644 x11-terms/xterm/files/xterm-LANG.patch create mode 100644 x11-terms/xterm/files/xterm-ds-config-278.patch create mode 100644 x11-terms/xterm/files/xterm-ds-config.patch create mode 100644 x11-terms/xterm/files/xterm-ds-copy-225.patch create mode 100644 x11-terms/xterm/files/xterm-ds-copy-243.patch create mode 100644 x11-terms/xterm/files/xterm-ds-copy.patch create mode 100644 x11-terms/xterm/files/xterm-ds-input-225.patch create mode 100644 x11-terms/xterm/files/xterm-ds-input.patch create mode 100644 x11-terms/xterm/files/xterm-ds-metaesc.patch create mode 100644 x11-terms/xterm/files/xterm-ds-paste-225.patch create mode 100644 x11-terms/xterm/files/xterm-ds-paste-278.patch create mode 100644 x11-terms/xterm/files/xterm-ds-paste.patch create mode 100644 x11-terms/xterm/files/xterm-ds-sm-243.patch create mode 100644 x11-terms/xterm/files/xterm-ds-sm.patch create mode 100644 x11-terms/xterm/files/xterm-ds-utf8mode.patch create mode 100644 x11-terms/xterm/files/xterm215-ds-copy.patch create mode 100644 x11-terms/xterm/xterm-215-r3.ebuild create mode 100644 x11-terms/xterm/xterm-225-r1.ebuild create mode 100644 x11-terms/xterm/xterm-243-r1.ebuild create mode 100644 x11-terms/xterm/xterm-278-r1.ebuild create mode 100644 x11-terms/xterm/xterm-278-r2.ebuild (limited to 'x11-terms') diff --git a/x11-terms/xterm/Manifest b/x11-terms/xterm/Manifest new file mode 100644 index 0000000..f41f243 --- /dev/null +++ b/x11-terms/xterm/Manifest @@ -0,0 +1,28 @@ +AUX xterm-197-alt-keysym-index.patch.bz2 354 RMD160 0d9c6dde482efcf8666c7d5ffa1c4675ead3efb9 SHA1 cb5b4c7241f2d95cbbf234e7760bdd4a945bc70d SHA256 d7025b8225b711393949a98282c1d9e9b5832277e80bd59cab617e0d82c1e729 +AUX xterm-199-alt-meta-mod.patch.bz2 692 RMD160 839adad8d91a55956c703dcd495992106e150cc6 SHA1 406be01d971485e45f67ddb3946d45e558605839 SHA256 423466b0961d948d80a2ccb0b067cb15bf2a1f53b41c7eb87bd34cdf400aaabe +AUX xterm-199-biarch-utmp.patch.bz2 326 RMD160 e9baad8e8afb204d9d5e6f522285ffc5672bb316 SHA1 032002942055c2a97c359c0435dd9b810171d750 SHA256 56d200a8d507967943552dca649bbef0f6bc0e15e359fa6888b6587ab12797cd +AUX xterm-LANG.patch 1698 RMD160 8f442cbb3d39cd18645f656970d717c5bab84a2d SHA1 4ff6b11ac3ac8b590c7da294bd0c12dabd9013eb SHA256 b2e646c2f4c86cd8132a5a54a362363453f1f02a4f976751c41d7418b3d772c5 +AUX xterm-ds-config-278.patch 3509 RMD160 2d4231f34862f5fca6eff2dcf606f56e96316d43 SHA1 d965ebd9485829ed3ab97032d1350afda3ee10a6 SHA256 1f00ca7c2cd58c331ac64b283d5eb6bc7abb63560b4c3f8c8a416efd47bffb84 +AUX xterm-ds-config.patch 3026 RMD160 dd37dcf72980ee8fb3e162c0d744302274a0a8c0 SHA1 97bf54d7e4fd94f96b821d892076c20928744f38 SHA256 2317a3b521c4f2e586b46144f1ac2a10c151993d5fc04a15cca18d1173e71084 +AUX xterm-ds-copy-225.patch 1478 RMD160 e1fe530ec7c00b5b43a9e1910f872687542f1288 SHA1 a7362380ec7c8806c42f1230f41ca4266f70b18a SHA256 9ee6afbddf26fae1625d54bf9adf8ed30df33b675d95a3128a90f9fe8b74f6be +AUX xterm-ds-copy-243.patch 1467 RMD160 af5e9328eaf247252f45f0616e643e3e0cb2da2c SHA1 20be1497e48196c1dc5a9c8d151732081396c12d SHA256 e57940b1675c146c6bd149371e92d4e98869b1d457d4a21ed324429e443e31ce +AUX xterm-ds-copy.patch 1292 RMD160 09bbd5df49a84d095baf90e21c39a8429fe64539 SHA1 ed3e49519ea60cb6c685d9597456c08191987462 SHA256 c61394b4736e69f516173179344200e6ff7130f42573a2e48f4697f3cfc33048 +AUX xterm-ds-input-225.patch 405 RMD160 cd3db8a71e09c8e1ad47adacef90bbb7791ddb8f SHA1 0bd8a63499fcf34b2bb9f28e5fe81b7a3748c85d SHA256 79de426f66e89a7ea419b4e5efc535fa36e6d6598e0e31fa6da362c9249f75c4 +AUX xterm-ds-input.patch 284 RMD160 90c6215006241d8d7690752b92886ef4febe7016 SHA1 4ce7afb3865916fb3e7e0ad468edba2524c42f18 SHA256 954814e335cdd60adc3b2e6a6ab2881802272c1554ee1f1da546f713ca39b5a4 +AUX xterm-ds-metaesc.patch 300 RMD160 47ab6dcb4ef4a19ee1998fe5cd701feea79cc7b1 SHA1 00334f1c910c4c623ee59069e9489e5526bbb832 SHA256 8e590fc34b79fed733b4464e501d60e85bed4811e9649dacade51c2cffc72ab9 +AUX xterm-ds-paste-225.patch 420 RMD160 d0409d2200a5653a12a5eaa3fa97ac0eb4accf64 SHA1 42901b4ca49982e57ff2e83660d8a2ec49a6f685 SHA256 7534f3ae11ddcbb6ca1a373de4cd46d71e8f61252ec6b269f7525cceb3207264 +AUX xterm-ds-paste-278.patch 452 RMD160 a2c7075c4191dca93cfaee9afa759363ca5c0bcd SHA1 343f69f3d5220458ee01a59dadc89806e536bbbf SHA256 b5be53bcf3d1fd1f832c11c9aeb3231d69907efb15762edea703b7d26b193c7a +AUX xterm-ds-paste.patch 438 RMD160 054d27dba5472a11637a12743ac84ad1e9e4714c SHA1 7fdfcb8a45f43092d7f0b5055f1eef29e68841a9 SHA256 9eb6f56e5035a075f8a2cc7961a931b9a75a3c3976ceade1e1431ac03f686586 +AUX xterm-ds-sm-243.patch 3796 RMD160 029fefce2bdf3ca76c140529087b9cfb6953cad2 SHA1 5e138c2e3053603841c01a4a473bd3ff6c51f2e2 SHA256 e11828ee573fa58ade9c26ce066f1afcc0ef8c6e7c34acb131c4b42c3c2a7f73 +AUX xterm-ds-sm.patch 3587 RMD160 2182a966d3c4d9bea2830b4a52c789c42bbd8fbc SHA1 3c07c5caa298eebac368577692fd8cbedc45210d SHA256 59371083ce9a362fb555a96c65c04e3af664aaeb31feaf1cf965102cdeb81668 +AUX xterm-ds-utf8mode.patch 476 RMD160 7e072e1881fbba1283131b24594b5e41e7e02248 SHA1 8012064ed4bf82b6e194ed6039f7a44de1f6e420 SHA256 84bb2867dfd9d7e9dfcedfa0a4c541bc0db272f2838dc75aa107608414ef633f +AUX xterm215-ds-copy.patch 1460 RMD160 00e40d82fe220414e9359bd240630046a3a6c64c SHA1 4b251d14547b689be51f0d665acb7ecf290630ca SHA256 fb050a025159d8c09ecee036817fe92d23d927a19ed33588168d5bbd0906d3c5 +DIST xterm-215.tgz 784236 RMD160 458c14aa97503bdac5da3881491de14e2d87f52a SHA1 d2cb4919d3a2bada27c5ff6e32727b9aecb2266a SHA256 4564c646a4a4f56e49e8c8cda1d4aa027e228db2d4bb2a4ad0f055f34373734f +DIST xterm-225.tgz 821717 RMD160 ceba9372d85ef1a74f3a2ebeb37199bc80949006 SHA1 55598c979da15fe219ddd07bfdd15eb08460026b SHA256 d21ca1b0c9f47da42944b1d1c06f50c7f8ac541cd6047edacfc5837e331af47e +DIST xterm-243.tgz 874033 RMD160 0099382feb4c6b97fb37fa77edebfb6903a38835 SHA1 2d21f9ac13df846053b43d9fcf6ae70eaa63715a SHA256 2621e7362713b588d1ec035f969194f160896b77f6455a26fd81dcc6e29b9877 +DIST xterm-278.tgz 996716 RMD160 f8b7370530979453489891aae49f9788ab54e322 SHA1 753ad19e1a0979e875eb2dc2db60f1fb270486ee SHA256 1372f9afe07bc35bfd47482db146c649223dadd0b472da31f8c337ab37f90585 +EBUILD xterm-215-r3.ebuild 3242 RMD160 1a7e869845ea71d3b4669b05e1f216283ec8ecf6 SHA1 94ee2651413aef84211c48fddddbf93748d8c49e SHA256 08c1d0e0c8ccdfb5c88a1c14ee1f06821f0d2a9e886c5b28503c331da24867ab +EBUILD xterm-225-r1.ebuild 3172 RMD160 10cf5341611568c6e1b7a9e6e4e2df288f6cbe36 SHA1 542f17d5aa3c12089805eb9c8ea652ecdfd2cb22 SHA256 e5accd0166ca0e646f33511dc92cfbb4192c15675a8582b938149d8a737053b8 +EBUILD xterm-243-r1.ebuild 3261 RMD160 7c6e0c7fbd7e6cf1327e0c08d269abfa4e635220 SHA1 f7d2a43c00a0964b948d80bde27caacecb5a5e4b SHA256 a42a0eb235b5f293bb2111ebb835735c3935c590b492581bf6f29eba5922500d +EBUILD xterm-278-r1.ebuild 3122 RMD160 e883b11422d123afa9cc66c06abf44fbebd4a5f1 SHA1 4bb6ed2d203f8785902b690c61f51048bf7066dd SHA256 539d28289e226ed9268f5adc053f99be6d1bbaef8319933506909ee50c686567 +EBUILD xterm-278-r2.ebuild 3180 RMD160 558828972b1e6bacdab99d243b0374d79b12f96a SHA1 ad851815dd4274fcf26c4b796d98ab5cefeef191 SHA256 b0f26d1b14fcd5ff38180f603195ccf9b29a43df0019acab94d7c26587bc53c7 diff --git a/x11-terms/xterm/files/xterm-197-alt-keysym-index.patch.bz2 b/x11-terms/xterm/files/xterm-197-alt-keysym-index.patch.bz2 new file mode 100644 index 0000000..a011d9f Binary files /dev/null and b/x11-terms/xterm/files/xterm-197-alt-keysym-index.patch.bz2 differ diff --git a/x11-terms/xterm/files/xterm-199-alt-meta-mod.patch.bz2 b/x11-terms/xterm/files/xterm-199-alt-meta-mod.patch.bz2 new file mode 100644 index 0000000..0be45fd Binary files /dev/null and b/x11-terms/xterm/files/xterm-199-alt-meta-mod.patch.bz2 differ diff --git a/x11-terms/xterm/files/xterm-199-biarch-utmp.patch.bz2 b/x11-terms/xterm/files/xterm-199-biarch-utmp.patch.bz2 new file mode 100644 index 0000000..d3dfce2 Binary files /dev/null and b/x11-terms/xterm/files/xterm-199-biarch-utmp.patch.bz2 differ diff --git a/x11-terms/xterm/files/xterm-LANG.patch b/x11-terms/xterm/files/xterm-LANG.patch new file mode 100644 index 0000000..d344d5b --- /dev/null +++ b/x11-terms/xterm/files/xterm-LANG.patch @@ -0,0 +1,41 @@ +The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in +option parsing, it may break. + +http://bugs.gentoo.org/105369 + +--- xterm/configure ++++ xterm/configure +@@ -46,6 +46,16 @@ + infodir='${prefix}/info' + mandir='${prefix}/man' + ++# NLS nuisances. ++# Only set these to C if already set. These must not be set unconditionally ++# because not all systems understand e.g. LANG=C (notably SCO). ++# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! ++# Non-C LC_CTYPE values break the ctype check. ++if test "${LANG+set}" = set; then LANG=C; export LANG; fi ++if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi ++if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi ++if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi ++ + # Initialize some other variables. + subdirs= + MFLAGS= MAKEFLAGS= +@@ -502,16 +512,6 @@ + esac + done + +-# NLS nuisances. +-# Only set these to C if already set. These must not be set unconditionally +-# because not all systems understand e.g. LANG=C (notably SCO). +-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! +-# Non-C LC_CTYPE values break the ctype check. +-if test "${LANG+set}" = set; then LANG=C; export LANG; fi +-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi +-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi +- + # confdefs.h avoids OS command line length limits that DEFS can exceed. + rm -rf conftest* confdefs.h + # AIX cpp loses on an empty file, so make sure it contains at least a newline. diff --git a/x11-terms/xterm/files/xterm-ds-config-278.patch b/x11-terms/xterm/files/xterm-ds-config-278.patch new file mode 100644 index 0000000..98d8e13 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-config-278.patch @@ -0,0 +1,86 @@ +diff -dPNur xterm-278/XTerm.ad xterm-278-ds/XTerm.ad +--- xterm-278/XTerm.ad 2011-07-11 12:52:16.000000000 +0200 ++++ xterm-278-ds/XTerm.ad 2012-01-22 16:21:47.000000000 +0100 +@@ -101,21 +101,23 @@ + *vtMenu*vthide*Label: Hide VT Window + *vtMenu*altscreen*Label: Show Alternate Screen + +-*fontMenu.Label: VT Fonts +-*fontMenu*fontdefault*Label: Default +-*fontMenu*font1*Label: Unreadable +-*VT100.font1: nil2 +-*IconFont: nil2 +-*fontMenu*font2*Label: Tiny +-*VT100.font2: 5x7 +-*fontMenu*font3*Label: Small +-*VT100.font3: 6x10 +-*fontMenu*font4*Label: Medium +-*VT100.font4: 7x13 +-*fontMenu*font5*Label: Large +-*VT100.font5: 9x15 +-*fontMenu*font6*Label: Huge +-*VT100.font6: 10x20 ++*fontMenu.Label: VT Fonts ++*fontMenu*fontdefault*Label: Default ++*fontMenu*font1*Label: Large ++*VT100*font1: -xos4-terminus-medium-r-normal--32-320-72-72-c-160-koi8-r ++#*fontMenu*font2*Label: KOI8 ++#*VT100*font2: -sony-fixed-medium-r-normal--24-170-100-100-c-120-koi8-1 ++*fontMenu*font2*Label: KOI8 ++*VT100*font2: koi9x15 ++*fontMenu*font3*Label: WIN ++*VT100*font3: win9x15 ++*fontMenu*font4*Label: ALT ++*VT100*font4: alt9x15 ++*fontMenu*font5*Label: ISO ++*VT100*font5: iso9x15 ++*fontMenu*font6*Label: Unreadable ++*VT100*font6: koinil2 ++ + *fontMenu*fontescape*Label: Escape Sequence + *fontMenu*fontsel*Label: Selection + !fontescape and fontsel overridden by application +@@ -135,12 +137,13 @@ + *fontMenu*allow-title-ops*Label: Allow Title Ops + *fontMenu*allow-window-ops*Label: Allow Window Ops + +-*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1 +-*VT100.utf8Fonts.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1 +-*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 +-*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1 +-*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 +-*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1 ++*VT100.utf8Fonts.font: -misc-fixed-medium-r-normal*-90-iso10646-1 ++#*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1 ++#*VT100.utf8Fonts.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1 ++#*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 ++#*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1 ++#*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 ++#*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1 + + *tekMenu.Label: Tek Options + *tekMenu*tektextlarge*Label: Large Characters +@@ -159,6 +162,13 @@ + *tek4014*font3: 6x13 + *tek4014*fontSmall: 6x10 + ++*.vt100.wideChars: on ++*.vt100.font: -xos4-terminus-medium-r-normal--24-240-72-72-c-120-koi8-r ++#*.vt100.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1 ++*.vt100.encodingMode: locale ++*.PtyInitialErase: on ++*.backarrowKeyIsErase: on ++ + ! If xterm is built with a toolbar, the widget hierarchy looks like this, + ! showing widget name / class names. The complete menu hierarchy is built + ! at startup because it is needed to make the layout work for the menubar: +@@ -254,3 +264,9 @@ + !*allowTcapOps: false + !*allowTitleOps: false + !*allowWindowOps: false ++ ++*metaSendsEscape: true ++ ++XTerm*VT100.Translations: #override\n\ ++ Ctrl Shift Insert:insert-selection(SELECT, CUT_BUFFER0)\n\ ++ Shift Insert:insert()\n diff --git a/x11-terms/xterm/files/xterm-ds-config.patch b/x11-terms/xterm/files/xterm-ds-config.patch new file mode 100644 index 0000000..f47b7ea --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-config.patch @@ -0,0 +1,73 @@ +diff -dPNur xterm-207/XTerm.ad xterm-207-new/XTerm.ad +--- xterm-207/XTerm.ad 2005-11-03 13:17:27.000000000 +0000 ++++ xterm-207-new/XTerm.ad 2005-12-26 13:56:48.000000000 +0000 +@@ -70,21 +70,20 @@ + *vtMenu*vthide*Label: Hide VT Window + *vtMenu*altscreen*Label: Show Alternate Screen + +-*fontMenu.Label: VT Fonts +-*fontMenu*fontdefault*Label: Default +-*fontMenu*font1*Label: Unreadable +-*VT100.font1: nil2 +-*IconFont: nil2 +-*fontMenu*font2*Label: Tiny +-*VT100.font2: 5x7 +-*fontMenu*font3*Label: Small +-*VT100.font3: 6x10 +-*fontMenu*font4*Label: Medium +-*VT100.font4: 7x13 +-*fontMenu*font5*Label: Large +-*VT100.font5: 9x15 +-*fontMenu*font6*Label: Huge +-*VT100.font6: 10x20 ++*fontMenu.Label: VT Fonts ++*fontMenu*fontdefault*Label: Default ++*fontMenu*font1*Label: Unreadable ++*VT100*font1: koinil2 ++*fontMenu*font2*Label: UTF8 ++*VT100*font2: -misc-fixed-medium-r-normal*-90-iso10646-1 ++*fontMenu*font3*Label: WIN ++*VT100*font3: win9x15 ++*fontMenu*font4*Label: ALT ++*VT100*font4: alt9x15 ++*fontMenu*font5*Label: KOI8 ++*VT100*font5: koi9x15 ++*fontMenu*font6*Label: ISO ++*VT100*font6: iso9x15 + *fontMenu*fontescape*Label: Escape Sequence + *fontMenu*fontsel*Label: Selection + !fontescape and fontsel overridden by application +@@ -94,12 +93,13 @@ + *fontMenu*render-font*Label: TrueType Fonts + *fontMenu*utf8-mode*Label: UTF-8 + +-*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1 +-*VT100.utf8Fonts.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1 +-*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 +-*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1 +-*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 +-*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1 ++*VT100.utf8Fonts.font: -misc-fixed-medium-r-normal*-90-iso10646-1 ++#*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1 ++#*VT100.utf8Fonts.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1 ++#*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 ++#*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1 ++#*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 ++#*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1 + + *tekMenu.Label: Tek Options + *tekMenu*tektextlarge*Label: Large Characters +@@ -118,6 +118,13 @@ + *tek4014*font3: 6x13 + *tek4014*fontSmall: 6x10 + ++*.vt100.wideChars: on ++*.vt100.font: koi9x15 ++#*.vt100.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1 ++*.vt100.encodingMode: locale ++*.PtyInitialErase: on ++*.backarrowKeyIsErase: on ++ + ! If xterm is built with a toolbar, the widget hierarchy looks like this, + ! showing widget name / class names. The complete menu hierarchy is built + ! at startup because it is needed to make the layout work for the menubar: diff --git a/x11-terms/xterm/files/xterm-ds-copy-225.patch b/x11-terms/xterm/files/xterm-ds-copy-225.patch new file mode 100644 index 0000000..bcd8ad5 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-copy-225.patch @@ -0,0 +1,36 @@ +diff -dPNur xterm-225/button.c xterm-225-new/button.c +--- xterm-225/button.c 2007-03-20 00:42:48.000000000 +0100 ++++ xterm-225-new/button.c 2007-04-03 00:54:58.000000000 +0200 +@@ -3179,28 +3179,28 @@ + } + } + #if OPT_WIDE_CHARS +- else if (screen->wide_chars && *target == XA_STRING) { ++ else if (screen->utf8_mode && *target == XA_STRING) { + TRACE(("ConvertSelection XA_STRING - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStringStyle); +- } else if (screen->wide_chars && *target == XA_UTF8_STRING(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_UTF8_STRING(dpy)) { + TRACE(("ConvertSelection XA_UTF8_STRING(dpy) - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XUTF8StringStyle); +- } else if (screen->wide_chars && *target == XA_TEXT(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_TEXT(dpy)) { + TRACE(("ConvertSelection XA_TEXT(dpy) - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStdICCTextStyle); +- } else if (screen->wide_chars && *target == XA_COMPOUND_TEXT(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_COMPOUND_TEXT(dpy)) { + TRACE(("ConvertSelection XA_COMPOUND_TEXT(dpy) - wide\n")); + result = + _ConvertSelectionHelper(w, diff --git a/x11-terms/xterm/files/xterm-ds-copy-243.patch b/x11-terms/xterm/files/xterm-ds-copy-243.patch new file mode 100644 index 0000000..ca489b6 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-copy-243.patch @@ -0,0 +1,36 @@ +diff -dPNur xterm-243/button.c xterm-243-copy/button.c +--- xterm-243/button.c 2009-03-27 01:00:56.000000000 +0100 ++++ xterm-243-copy/button.c 2009-06-14 05:41:44.000000000 +0200 +@@ -3475,28 +3475,28 @@ + } + } + #if OPT_WIDE_CHARS +- else if (screen->wide_chars && *target == XA_STRING) { ++ else if (screen->utf8_mode && *target == XA_STRING) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStringStyle); + TRACE(("...Xutf8TextListToTextProperty:%d\n", result)); +- } else if (screen->wide_chars && *target == XA_UTF8_STRING(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_UTF8_STRING(dpy)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XUTF8StringStyle); + TRACE(("...Xutf8TextListToTextProperty:%d\n", result)); +- } else if (screen->wide_chars && *target == XA_TEXT(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_TEXT(dpy)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStdICCTextStyle); + TRACE(("...Xutf8TextListToTextProperty:%d\n", result)); +- } else if (screen->wide_chars && *target == XA_COMPOUND_TEXT(dpy)) { ++ } else if (screen->utf8_mode && *target == XA_COMPOUND_TEXT(dpy)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, diff --git a/x11-terms/xterm/files/xterm-ds-copy.patch b/x11-terms/xterm/files/xterm-ds-copy.patch new file mode 100644 index 0000000..c866984 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-copy.patch @@ -0,0 +1,33 @@ +diff -dPNur xterm-179/button.c xterm-179-new/button.c +--- xterm-179/button.c 2003-12-06 00:32:53.000000000 +0100 ++++ xterm-179-new/button.c 2003-12-06 00:31:36.000000000 +0100 +@@ -2481,25 +2481,25 @@ + result = True; + } + #if OPT_WIDE_CHARS +- else if (screen->wide_chars && *target == XA_STRING) { ++ else if (screen->utf8_mode && *target == XA_STRING) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStringStyle); +- } else if (screen->wide_chars && *target == XA_UTF8_STRING(d)) { ++ } else if (screen->utf8_mode && *target == XA_UTF8_STRING(d)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XUTF8StringStyle); +- } else if (screen->wide_chars && *target == XA_TEXT(d)) { ++ } else if (screen->utf8_mode && *target == XA_TEXT(d)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStdICCTextStyle); +- } else if (screen->wide_chars && *target == XA_COMPOUND_TEXT(d)) { ++ } else if (screen->utf8_mode && *target == XA_COMPOUND_TEXT(d)) { + result = + _ConvertSelectionHelper(w, + type, value, length, format, diff --git a/x11-terms/xterm/files/xterm-ds-input-225.patch b/x11-terms/xterm/files/xterm-ds-input-225.patch new file mode 100644 index 0000000..dcd25aa --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-input-225.patch @@ -0,0 +1,12 @@ +diff -dPNur xterm-225/input.c xterm-225-new/input.c +--- xterm-225/input.c 2007-03-20 00:58:54.000000000 +0100 ++++ xterm-225-new/input.c 2007-04-03 01:01:44.000000000 +0200 +@@ -498,7 +498,7 @@ + /* + * Exclude the keys already covered by a modifier. + */ +- if (kd->is_fkey ++ if (0 && kd->is_fkey + || IsEditFunctionKey(kd->keysym) + || IsKeypadKey(kd->keysym) + || IsCursorKey(kd->keysym) diff --git a/x11-terms/xterm/files/xterm-ds-input.patch b/x11-terms/xterm/files/xterm-ds-input.patch new file mode 100644 index 0000000..8ca0b5d --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-input.patch @@ -0,0 +1,11 @@ +diff -dPNur xterm-179/input.c xterm-179-new/input.c +--- xterm-179/input.c 2003-05-18 20:47:32.000000000 -0400 ++++ xterm-179-new/input.c 2003-07-19 04:20:31.000000000 -0400 +@@ -500,6 +500,7 @@ + #if OPT_VT52_MODE + && screen->ansi_level != 0 + #endif ++ && 0 + ) { + /* + * Modifier codes: diff --git a/x11-terms/xterm/files/xterm-ds-metaesc.patch b/x11-terms/xterm/files/xterm-ds-metaesc.patch new file mode 100644 index 0000000..34996cf --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-metaesc.patch @@ -0,0 +1,9 @@ +diff -dPNur xterm-243/XTerm.ad xterm-243-new/XTerm.ad +--- xterm-243/XTerm.ad 2009-02-13 01:14:13.000000000 +0100 ++++ xterm-243-new/XTerm.ad 2009-06-14 07:05:49.000000000 +0200 +@@ -210,3 +210,5 @@ + !*allowTcapOps: false + !*allowTitleOps: false + !*allowWindowOps: false ++ ++*metaSendsEscape: true diff --git a/x11-terms/xterm/files/xterm-ds-paste-225.patch b/x11-terms/xterm/files/xterm-ds-paste-225.patch new file mode 100644 index 0000000..9d004fd --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-paste-225.patch @@ -0,0 +1,12 @@ +diff -dPNur xterm-225/button.c xterm-225-new/button.c +--- xterm-225/button.c 2007-03-20 00:42:48.000000000 +0100 ++++ xterm-225-new/button.c 2007-04-03 00:50:40.000000000 +0200 +@@ -1586,7 +1586,7 @@ + text_prop.nitems = *length; + + #if OPT_WIDE_CHARS +- if (screen->wide_chars) { ++ if (screen->utf8_mode) { + if (*type == XA_UTF8_STRING(dpy) || + *type == XA_STRING || + *type == XA_COMPOUND_TEXT(dpy)) { diff --git a/x11-terms/xterm/files/xterm-ds-paste-278.patch b/x11-terms/xterm/files/xterm-ds-paste-278.patch new file mode 100644 index 0000000..75b2d3a --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-paste-278.patch @@ -0,0 +1,12 @@ +diff -dPNur xterm-278/button.c xterm-278-ds/button.c +--- xterm-278/button.c 2012-01-07 03:00:35.000000000 +0100 ++++ xterm-278-ds/button.c 2012-01-22 07:39:01.000000000 +0100 +@@ -1989,7 +1989,7 @@ + text_prop.nitems)); + + #if OPT_WIDE_CHARS +- if (XSupportsLocale() && screen->wide_chars) { ++ if (XSupportsLocale() && screen->utf8_mode) { + if (*type == XA_UTF8_STRING(dpy) || + *type == XA_STRING || + *type == XA_COMPOUND_TEXT(dpy)) { diff --git a/x11-terms/xterm/files/xterm-ds-paste.patch b/x11-terms/xterm/files/xterm-ds-paste.patch new file mode 100644 index 0000000..9d31268 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-paste.patch @@ -0,0 +1,12 @@ +diff -dPNur xterm-172/button.c xterm-172-new/button.c +--- xterm-172/button.c 2002-10-05 13:57:11.000000000 -0400 ++++ xterm-172-new/button.c 2003-07-12 11:25:39.000000000 -0400 +@@ -1364,7 +1364,7 @@ + text_prop.nitems = *length; + + #if OPT_WIDE_CHARS +- if (screen->wide_chars) { ++ if (screen->utf8_mode) { + if (*type == XA_UTF8_STRING(XtDisplay(w)) || + *type == XA_STRING || + *type == XA_COMPOUND_TEXT(XtDisplay(w))) { diff --git a/x11-terms/xterm/files/xterm-ds-sm-243.patch b/x11-terms/xterm/files/xterm-ds-sm-243.patch new file mode 100644 index 0000000..bb35ee2 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-sm-243.patch @@ -0,0 +1,144 @@ +diff -dPNur xterm-243/menu.c xterm-243-sm/menu.c +--- xterm-243/menu.c 2009-03-28 18:27:57.000000000 +0100 ++++ xterm-243-sm/menu.c 2009-06-14 05:54:26.000000000 +0200 +@@ -186,6 +186,10 @@ + static void do_font_loadable PROTO_XT_CALLBACK_ARGS; + #endif + ++#if OPT_WIDE_CHARS ++static void do_font_multibyte PROTO_XT_CALLBACK_ARGS; ++#endif ++ + #if OPT_HP_FUNC_KEYS + static void do_hp_fkeys PROTO_XT_CALLBACK_ARGS; + #endif +@@ -245,6 +249,15 @@ + static void do_font_utf8_title PROTO_XT_CALLBACK_ARGS; + #endif + ++static void ++UpdateMenuItem( ++#if OPT_TRACE ++ const char *func, ++#endif ++ MenuEntry * menu, ++ int which, ++ Bool val); ++ + /* + * The order of entries MUST match the values given in menu.h + */ +@@ -365,6 +378,7 @@ + { "render-font", do_font_renderfont,NULL }, + #endif + #if OPT_WIDE_CHARS ++ { "font-multibyte", do_font_multibyte, NULL }, + { "utf8-mode", do_font_utf8_mode,NULL }, + { "utf8-title", do_font_utf8_title,NULL }, + #endif +@@ -697,6 +711,14 @@ + } + } + #endif ++#if OPT_WIDE_CHARS ++ if ((term->screen.utf8_mode>255)||(!term->screen.wide_chars)) { ++ SetItemSensitivity(fontMenuEntries[fontMenu_font_multibyte].widget, ++ False); ++ } else { ++ update_font_multibyte(); ++ } ++#endif + } + break; + +@@ -1560,6 +1582,23 @@ + } + #endif + ++#if OPT_WIDE_CHARS ++static void ++do_font_multibyte(Widget gw GCC_UNUSED, ++ XtPointer closure GCC_UNUSED, ++ XtPointer data GCC_UNUSED) ++{ ++ term->screen.font_multibyte = !term->screen.font_multibyte; ++ if (term->screen.font_multibyte) { ++ term->screen.utf8_mode=1; ++ } else { ++ term->screen.utf8_mode=0; ++ } ++ update_font_multibyte(); ++ Redraw(); ++} ++#endif ++ + /* + * tek menu + */ +@@ -2221,6 +2260,18 @@ + } + #endif + ++#if OPT_WIDE_CHARS ++void ++HandleFontMultibyte(Widget w, ++ XEvent * event GCC_UNUSED, ++ String * params, ++ Cardinal * param_count) ++{ ++ handle_toggle(do_font_multibyte, (int) term->screen.font_multibyte, ++ params, *param_count, w, (XtPointer) 0, (XtPointer) 0); ++} ++#endif ++ + #if OPT_BOX_CHARS + void + HandleFontBoxChars(Widget w, +diff -dPNur xterm-243/menu.h xterm-243-sm/menu.h +--- xterm-243/menu.h 2009-02-13 20:55:26.000000000 +0100 ++++ xterm-243-sm/menu.h 2009-06-14 05:57:56.000000000 +0200 +@@ -90,6 +90,7 @@ + extern void HandleFontBoxChars PROTO_XT_ACTIONS_ARGS; + extern void HandleFontDoublesize PROTO_XT_ACTIONS_ARGS; + extern void HandleFontLoading PROTO_XT_ACTIONS_ARGS; ++extern void HandleFontMultibyte PROTO_XT_ACTIONS_ARGS; + extern void HandleHardReset PROTO_XT_ACTIONS_ARGS; + extern void HandleHpFunctionKeys PROTO_XT_ACTIONS_ARGS; + extern void HandleJumpscroll PROTO_XT_ACTIONS_ARGS; +@@ -264,6 +265,9 @@ + fontMenu_font_loadable, + #endif + #endif ++#if OPT_WIDE_CHARS ++ fontMenu_font_multibyte, ++#endif + + #if OPT_RENDERFONT || OPT_WIDE_CHARS + fontMenu_line2, +@@ -470,6 +474,15 @@ + #define FS2MI(n) (n) /* font_size_to_menu_item */ + #define MI2FS(n) (n) /* menu_item_to_font_size */ + ++#if OPT_WIDE_CHARS ++#define update_font_multibyte() \ ++ UpdateMenuItem (fontMenuEntries, \ ++ fontMenu_font_multibyte, \ ++ term->screen.font_multibyte) ++#else ++#define update_font_multibyte() /* nothing */ ++#endif ++ + #if OPT_TEK4014 + extern void set_tekfont_menu_item(int n,int val); + #else +diff -dPNur xterm-243/ptyx.h xterm-243-sm/ptyx.h +--- xterm-243/ptyx.h 2009-03-24 23:20:06.000000000 +0100 ++++ xterm-243-sm/ptyx.h 2009-06-14 05:59:38.000000000 +0200 +@@ -1358,6 +1358,7 @@ + int unicode_font; /* font uses unicode encoding */ + int utf_count; /* state of utf_char */ + IChar utf_char; /* in-progress character */ ++ int font_multibyte; /* is UTF mode switched on */ + int last_written_col; + int last_written_row; + XChar2b *draw_buf; /* drawXtermText() data */ diff --git a/x11-terms/xterm/files/xterm-ds-sm.patch b/x11-terms/xterm/files/xterm-ds-sm.patch new file mode 100644 index 0000000..12c1258 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-sm.patch @@ -0,0 +1,129 @@ +diff -dPNur xterm-207-new/menu.c xterm-207/menu.c +--- xterm-207-new/menu.c 2005-11-13 23:10:36.000000000 +0000 ++++ xterm-207/menu.c 2005-12-26 13:58:51.000000000 +0000 +@@ -175,6 +175,10 @@ + static void do_font_loadable PROTO_XT_CALLBACK_ARGS; + #endif + ++#if OPT_WIDE_CHARS ++static void do_font_multibyte PROTO_XT_CALLBACK_ARGS; ++#endif ++ + #if OPT_HP_FUNC_KEYS + static void do_hp_fkeys PROTO_XT_CALLBACK_ARGS; + #endif +@@ -339,6 +343,7 @@ + { "render-font", do_font_renderfont,NULL }, + #endif + #if OPT_WIDE_CHARS ++ { "font-multibyte", do_font_multibyte, NULL }, + { "utf8-mode", do_font_utf8_mode,NULL }, + #endif + #endif /* toggles for other font extensions */ +@@ -683,6 +688,15 @@ + #if OPT_WIDE_CHARS + update_font_utf8_mode(); + #endif ++#if OPT_WIDE_CHARS ++ if ((term->screen.utf8_mode==2)||(!term->screen.wide_chars)) { ++ set_sensitivity(mw, ++ fontMenuEntries[fontMenu_font_multibyte].widget, ++ False); ++ } else { ++ update_font_multibyte(); ++ } ++#endif + } + FindFontSelection(NULL, True); + set_sensitivity(mw, +@@ -1423,6 +1437,23 @@ + } + #endif + ++#if OPT_WIDE_CHARS ++static void ++do_font_multibyte(Widget gw GCC_UNUSED, ++ XtPointer closure GCC_UNUSED, ++ XtPointer data GCC_UNUSED) ++{ ++ term->screen.font_multibyte = !term->screen.font_multibyte; ++ if (term->screen.font_multibyte) { ++ term->screen.utf8_mode=1; ++ } else { ++ term->screen.utf8_mode=0; ++ } ++ update_font_multibyte(); ++ Redraw(); ++} ++#endif ++ + /* + * tek menu + */ +@@ -2054,6 +2085,18 @@ + } + #endif + ++#if OPT_WIDE_CHARS ++void ++HandleFontMultibyte(Widget w, ++ XEvent * event GCC_UNUSED, ++ String * params, ++ Cardinal * param_count) ++{ ++ handle_toggle(do_font_multibyte, (int) term->screen.font_multibyte, ++ params, *param_count, w, (XtPointer) 0, (XtPointer) 0); ++} ++#endif ++ + #if OPT_BOX_CHARS + void + HandleFontBoxChars(Widget w, +diff -dPNur xterm-207-new/menu.h xterm-207/menu.h +--- xterm-207-new/menu.h 2005-11-03 13:17:28.000000000 +0000 ++++ xterm-207/menu.h 2005-12-26 13:58:51.000000000 +0000 +@@ -87,6 +87,7 @@ + extern void HandleFontBoxChars PROTO_XT_ACTIONS_ARGS; + extern void HandleFontDoublesize PROTO_XT_ACTIONS_ARGS; + extern void HandleFontLoading PROTO_XT_ACTIONS_ARGS; ++extern void HandleFontMultibyte PROTO_XT_ACTIONS_ARGS; + extern void HandleHardReset PROTO_XT_ACTIONS_ARGS; + extern void HandleHpFunctionKeys PROTO_XT_ACTIONS_ARGS; + extern void HandleJumpscroll PROTO_XT_ACTIONS_ARGS; +@@ -252,6 +253,9 @@ + fontMenu_font_loadable, + #endif + #endif ++#if OPT_WIDE_CHARS ++ fontMenu_font_multibyte, ++#endif + + #if OPT_RENDERFONT || OPT_WIDE_CHARS + fontMenu_line2, +@@ -430,6 +434,15 @@ + #define FS2MI(n) (n) /* font_size_to_menu_item */ + #define MI2FS(n) (n) /* menu_item_to_font_size */ + ++#if OPT_WIDE_CHARS ++#define update_font_multibyte() \ ++ update_menu_item (term->screen.fontMenu, \ ++ fontMenuEntries[fontMenu_font_multibyte].widget, \ ++ term->screen.font_multibyte) ++#else ++#define update_font_multibyte() /* nothing */ ++#endif ++ + #if OPT_TEK4014 + extern void set_tekfont_menu_item(int n,int val); + #else +diff -dPNur xterm-207-new/ptyx.h xterm-207/ptyx.h +--- xterm-207-new/ptyx.h 2005-11-03 13:17:28.000000000 +0000 ++++ xterm-207/ptyx.h 2005-12-26 13:59:17.000000000 +0000 +@@ -1237,6 +1237,7 @@ + int unicode_font; /* font uses unicode encoding */ + int utf_count; /* state of utf_char */ + IChar utf_char; /* in-progress character */ ++ int font_multibyte; /* is UTF mode switched on */ + int last_written_col; + int last_written_row; + #endif diff --git a/x11-terms/xterm/files/xterm-ds-utf8mode.patch b/x11-terms/xterm/files/xterm-ds-utf8mode.patch new file mode 100644 index 0000000..2dacec7 --- /dev/null +++ b/x11-terms/xterm/files/xterm-ds-utf8mode.patch @@ -0,0 +1,12 @@ +diff -dPNur xterm-207/menu.c xterm-207-new/menu.c +--- xterm-207/menu.c 2005-12-26 14:00:13.000000000 +0000 ++++ xterm-207-new/menu.c 2005-12-26 14:02:30.000000000 +0000 +@@ -689,7 +689,7 @@ + update_font_utf8_mode(); + #endif + #if OPT_WIDE_CHARS +- if ((term->screen.utf8_mode==2)||(!term->screen.wide_chars)) { ++ if ((term->screen.utf8_mode>255)||(!term->screen.wide_chars)) { + set_sensitivity(mw, + fontMenuEntries[fontMenu_font_multibyte].widget, + False); diff --git a/x11-terms/xterm/files/xterm215-ds-copy.patch b/x11-terms/xterm/files/xterm215-ds-copy.patch new file mode 100644 index 0000000..2029430 --- /dev/null +++ b/x11-terms/xterm/files/xterm215-ds-copy.patch @@ -0,0 +1,36 @@ +diff -dPNur xterm-215/button.c xterm-215-new/button.c +--- xterm-215/button.c 2006-07-25 01:12:23.000000000 +0500 ++++ xterm-215-new/button.c 2006-07-25 01:13:31.000000000 +0500 +@@ -3121,28 +3121,28 @@ + } + } + #if OPT_WIDE_CHARS +- else if (screen->wide_chars && *target == XA_STRING) { ++ else if (screen->utf8_mode && *target == XA_STRING) { + TRACE(("ConvertSelection XA_STRING - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStringStyle); +- } else if (screen->wide_chars && *target == XA_UTF8_STRING(d)) { ++ } else if (screen->utf8_mode && *target == XA_UTF8_STRING(d)) { + TRACE(("ConvertSelection XA_UTF8_STRING(d) - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XUTF8StringStyle); +- } else if (screen->wide_chars && *target == XA_TEXT(d)) { ++ } else if (screen->utf8_mode && *target == XA_TEXT(d)) { + TRACE(("ConvertSelection XA_TEXT(d) - wide\n")); + result = + _ConvertSelectionHelper(w, + type, value, length, format, + Xutf8TextListToTextProperty, + XStdICCTextStyle); +- } else if (screen->wide_chars && *target == XA_COMPOUND_TEXT(d)) { ++ } else if (screen->utf8_mode && *target == XA_COMPOUND_TEXT(d)) { + TRACE(("ConvertSelection XA_COMPOUND_TEXT(d) - wide\n")); + result = + _ConvertSelectionHelper(w, diff --git a/x11-terms/xterm/xterm-215-r3.ebuild b/x11-terms/xterm/xterm-215-r3.ebuild new file mode 100644 index 0000000..9f5aef2 --- /dev/null +++ b/x11-terms/xterm/xterm-215-r3.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-terms/xterm/xterm-215-r1.ebuild,v 1.1 2006/07/11 10:53:47 exg Exp $ + +inherit flag-o-matic + +DESCRIPTION="Terminal Emulator for X Windows" +HOMEPAGE="http://dickey.his.com/xterm/" +SRC_URI="http://dside.dyndns.org/files/darklin/${P}.tgz" + +LICENSE="X11" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd" +IUSE="truetype Xaw3d unicode toolbar paste64" + +RDEPEND="|| ( ( x11-libs/libX11 + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXmu + x11-libs/libxkbfile + x11-libs/libXft + x11-libs/libXaw + unicode? ( x11-apps/luit ) ) + virtual/x11 ) + Xaw3d? ( x11-libs/Xaw3d ) + sys-libs/libutempter" + +DEPEND="${RDEPEND} + || ( x11-proto/xproto virtual/x11 )" + + +pkg_setup() { + if has_version "x11-libs/libX11"; then + DEFAULTS_DIR="/usr/share/X11/app-defaults" + else + DEFAULTS_DIR="/etc/X11/app-defaults" + fi +} + +#SDS +src_unpack() { + unpack ${A} + cd ${S} + +#MDK +# epatch ${FILESDIR}/xterm-199-biarch-utmp.patch.bz2 + epatch ${FILESDIR}/xterm-197-alt-keysym-index.patch.bz2 + epatch ${FILESDIR}/xterm-199-alt-meta-mod.patch.bz2 + +#DarkLin + epatch ${FILESDIR}/xterm-ds-config.patch + epatch ${FILESDIR}/xterm-ds-sm.patch + epatch ${FILESDIR}/xterm-ds-paste.patch + epatch ${FILESDIR}/xterm-ds-input.patch + epatch ${FILESDIR}/xterm215-ds-copy.patch + epatch ${FILESDIR}/xterm-ds-utf8mode.patch +} +#EDS + + +src_compile() { + filter-flags "-fstack-protector" + + local myconf="" + + if has_version "x11-libs/libX11"; then + myconf="--disable-narrowproto" + fi + + econf \ + --libdir=/etc \ + --with-x \ + --with-utempter \ + --disable-setuid \ + --disable-full-tgetent \ + --disable-imake \ + --enable-ansi-color \ + --enable-256-color \ + --enable-broken-osc \ + --enable-broken-st \ + --enable-load-vt-fonts \ + --enable-i18n \ + --enable-wide-chars \ + --enable-doublechars \ + --enable-warnings \ + --enable-tcap-query \ + --enable-logging \ + --enable-dabbrev \ + --with-app-defaults=${DEFAULTS_DIR} \ + $(use_enable toolbar) \ + $(use_enable truetype freetype) \ + $(use_enable unicode luit) $(use_enable unicode mini-luit) \ + $(use_with Xaw3d) \ + $(use_enable paste64) \ + ${myconf} \ + || die + + emake || die "failed to compile xterm" +} + +src_install() { + make DESTDIR=${D} install || die + dodoc README{,.i18n} ctlseqs.txt xterm.log.html + + # Fix permissions -- it grabs them from live system, and they can + # be suid or sgid like they were in pre-unix98 pty or pre-utempter days, + # respectively (#69510). + # (info from Thomas Dickey) - Donnie Berkholz + fperms 0755 /usr/bin/xterm + + # restore the navy blue + sed -i "s:blue2$:blue:" ${D}${DEFAULTS_DIR}/XTerm-color + + # Fix for bug #91453 at Thomas Dickey's suggestion: + echo "*allowWindowOps: false" >> ${D}/${DEFAULTS_DIR}/XTerm + echo "*allowWindowOps: false" >> ${D}/${DEFAULTS_DIR}/UXTerm +} + +pkg_postinst() { + if use paste64 ; then + elog "bracketed paste mode requires the allowWindowOps resource to be true" + elog "which is false by default for security reasons (see bug #91453)." + elog "To be able to use it add 'allowWindowOps: true' to your resources" + fi +} diff --git a/x11-terms/xterm/xterm-225-r1.ebuild b/x11-terms/xterm/xterm-225-r1.ebuild new file mode 100644 index 0000000..849fb16 --- /dev/null +++ b/x11-terms/xterm/xterm-225-r1.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-terms/xterm/xterm-225.ebuild,v 1.1 2007/03/24 19:58:16 seemant Exp $ + +inherit flag-o-matic + +DESCRIPTION="Terminal Emulator for X Windows" +HOMEPAGE="http://dickey.his.com/xterm/" +SRC_URI="ftp://invisible-island.net/${PN}/${P}.tgz" + +LICENSE="X11" +SLOT="0" +KEYWORDS="~alpha !amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc !x86 ~x86-fbsd" +IUSE="truetype Xaw3d unicode toolbar paste64" + +RDEPEND="x11-libs/libX11 + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXmu + x11-libs/libxkbfile + x11-libs/libXft + x11-libs/libXaw + unicode? ( x11-apps/luit ) + Xaw3d? ( x11-libs/Xaw3d ) + sys-libs/libutempter" +DEPEND="${RDEPEND} + x11-proto/xproto" + +pkg_setup() { + DEFAULTS_DIR="/usr/share/X11/app-defaults" +} + +#SDS +src_unpack() { + unpack ${A} + cd ${S} + +#MDK +# epatch ${FILESDIR}/xterm-199-biarch-utmp.patch.bz2 + epatch ${FILESDIR}/xterm-197-alt-keysym-index.patch.bz2 +# epatch ${FILESDIR}/xterm-199-alt-meta-mod.patch.bz2 + +#DarkLin + epatch ${FILESDIR}/xterm-ds-config.patch + epatch ${FILESDIR}/xterm-ds-sm.patch + epatch ${FILESDIR}/xterm-ds-paste-225.patch + epatch ${FILESDIR}/xterm-ds-input-225.patch + epatch ${FILESDIR}/xterm-ds-copy-225.patch + epatch ${FILESDIR}/xterm-ds-utf8mode.patch +} +#EDS + + +src_compile() { + filter-flags "-fstack-protector" + replace-flags "-Os" "-O2" # work around gcc-4.1.1-r[01] bugs + + econf --libdir=/etc \ + --with-x \ + --with-utempter \ + --disable-setuid \ + --disable-full-tgetent \ + --disable-imake \ + --disable-narrowproto \ + --enable-ansi-color \ + --enable-256-color \ + --enable-broken-osc \ + --enable-broken-st \ + --enable-load-vt-fonts \ + --enable-i18n \ + --enable-wide-chars \ + --enable-doublechars \ + --enable-warnings \ + --enable-tcap-query \ + --enable-logging \ + --enable-dabbrev \ + --with-app-defaults=${DEFAULTS_DIR} \ + $(use_enable toolbar) \ + $(use_enable truetype freetype) \ + $(use_enable unicode luit) $(use_enable unicode mini-luit) \ + $(use_with Xaw3d) \ + $(use_enable paste64) + + emake || die "emake failed." +} + +# Parallel make causes File exists error and dies. Forcing -j1 for now. +src_install() { + emake -j1 DESTDIR="${D}" install || die "emake install failed." + dodoc README{,.i18n} ctlseqs.txt + dohtml xterm.log.html + + # Fix permissions -- it grabs them from live system, and they can + # be suid or sgid like they were in pre-unix98 pty or pre-utempter days, + # respectively (#69510). + # (info from Thomas Dickey) - Donnie Berkholz + fperms 0755 /usr/bin/xterm + + # restore the navy blue + sed -i "s:blue2$:blue:" ${D}${DEFAULTS_DIR}/XTerm-color + + # Fix for bug #91453 at Thomas Dickey's suggestion: + echo "*allowWindowOps: false" >> ${D}/${DEFAULTS_DIR}/XTerm + echo "*allowWindowOps: false" >> ${D}/${DEFAULTS_DIR}/UXTerm +} + +pkg_postinst() { + if use paste64 ; then + elog "bracketed paste mode requires the allowWindowOps resource to be true" + elog "which is false by default for security reasons (see bug #91453)." + elog "To be able to use it add 'allowWindowOps: true' to your resources" + fi +} diff --git a/x11-terms/xterm/xterm-243-r1.ebuild b/x11-terms/xterm/xterm-243-r1.ebuild new file mode 100644 index 0000000..2e869cf --- /dev/null +++ b/x11-terms/xterm/xterm-243-r1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-terms/xterm/xterm-243.ebuild,v 1.1 2009/05/05 12:41:03 ssuominen Exp $ + +EAPI=2 +inherit flag-o-matic + +DESCRIPTION="Terminal Emulator for X Windows" +HOMEPAGE="http://dickey.his.com/xterm/" +SRC_URI="ftp://invisible-island.net/${PN}/${P}.tgz" + +LICENSE="X11" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd" +IUSE="truetype Xaw3d unicode toolbar" + +RDEPEND="x11-libs/libX11 + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXmu + x11-libs/libxkbfile + x11-libs/libXft + x11-libs/libXaw + x11-apps/xmessage + unicode? ( x11-apps/luit ) + Xaw3d? ( x11-libs/Xaw3d ) + sys-libs/libutempter" +DEPEND="${RDEPEND} + x11-proto/xproto" + +pkg_setup() { + DEFAULTS_DIR="/usr/share/X11/app-defaults" +} + +#SDS +src_unpack() { + unpack ${A} + cd ${S} + +#MDK +# epatch ${FILESDIR}/xterm-199-biarch-utmp.patch.bz2 +# epatch ${FILESDIR}/xterm-197-alt-keysym-index.patch.bz2 +# epatch ${FILESDIR}/xterm-199-alt-meta-mod.patch.bz2 + +#DarkLin + epatch ${FILESDIR}/xterm-ds-metaesc.patch || die + epatch ${FILESDIR}/xterm-ds-config.patch || die + epatch ${FILESDIR}/xterm-ds-sm-243.patch || die + epatch ${FILESDIR}/xterm-ds-paste-225.patch || die + epatch ${FILESDIR}/xterm-ds-input-225.patch || die + epatch ${FILESDIR}/xterm-ds-copy-243.patch || die +# Embedded in SM patch +## epatch ${FILESDIR}/xterm-ds-utf8mode.patch +} +#EDS + +src_configure() { + filter-flags "-fstack-protector" + replace-flags "-Os" "-O2" # work around gcc-4.1.1-r[01] bugs + + econf --libdir=/etc \ + --with-x \ + --with-utempter \ + --disable-setuid \ + --disable-full-tgetent \ + --disable-imake \ + --disable-narrowproto \ + --enable-ansi-color \ + --enable-256-color \ + --enable-broken-osc \ + --enable-broken-st \ + --enable-load-vt-fonts \ + --enable-i18n \ + --enable-wide-chars \ + --enable-doublechars \ + --enable-warnings \ + --enable-tcap-query \ + --enable-logging \ + --enable-dabbrev \ + --with-app-defaults=${DEFAULTS_DIR} \ + --x-libraries="${ROOT}usr/lib" \ + $(use_enable toolbar) \ + $(use_enable truetype freetype) \ + $(use_enable unicode luit) $(use_enable unicode mini-luit) \ + $(use_with Xaw3d) +} + +# Parallel make causes File exists error and dies. Forcing -j1 for now. +src_install() { + emake -j1 DESTDIR="${D}" install || die "emake install failed" + dodoc README{,.i18n} ctlseqs.txt + dohtml xterm.log.html + + # Fix permissions -- it grabs them from live system, and they can + # be suid or sgid like they were in pre-unix98 pty or pre-utempter days, + # respectively (#69510). + # (info from Thomas Dickey) - Donnie Berkholz + fperms 0755 /usr/bin/xterm + + # restore the navy blue + sed -i "s:blue2$:blue:" "${D}"${DEFAULTS_DIR}/XTerm-color + + # Fix for bug #91453 at Thomas Dickey's suggestion: + echo "*allowWindowOps: false" >> "${D}"/${DEFAULTS_DIR}/XTerm + echo "*allowWindowOps: false" >> "${D}"/${DEFAULTS_DIR}/UXTerm +} + +pkg_postinst() { + elog "bracketed paste mode requires the allowWindowOps resource to be true" + elog "which is false by default for security reasons (see bug #91453)." + elog "To be able to use it add 'allowWindowOps: true' to your resources" +} diff --git a/x11-terms/xterm/xterm-278-r1.ebuild b/x11-terms/xterm/xterm-278-r1.ebuild new file mode 100644 index 0000000..63a1bd9 --- /dev/null +++ b/x11-terms/xterm/xterm-278-r1.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-terms/xterm/xterm-278.ebuild,v 1.1 2012/01/19 19:01:38 ssuominen Exp $ + +EAPI=4 +inherit eutils multilib + +DESCRIPTION="Terminal Emulator for X Windows" +HOMEPAGE="http://dickey.his.com/xterm/" +SRC_URI="ftp://invisible-island.net/${PN}/${P}.tgz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="toolbar truetype unicode Xaw3d" + +COMMON_DEPEND="kernel_linux? ( sys-libs/libutempter ) + kernel_FreeBSD? ( sys-libs/libutempter ) + >=sys-libs/ncurses-5.7-r7 + x11-apps/xmessage + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXft + x11-libs/libxkbfile + x11-libs/libXmu + x11-libs/libXrender + x11-libs/libXt + unicode? ( x11-apps/luit ) + Xaw3d? ( x11-libs/libXaw3d )" +RDEPEND="${COMMON_DEPEND} + media-fonts/font-misc-misc" +DEPEND="${COMMON_DEPEND} + dev-util/pkgconfig + x11-proto/kbproto + x11-proto/xproto" + +pkg_setup() { + DEFAULTS_DIR="${EPREFIX}"/usr/share/X11/app-defaults +} + +#SDS +src_unpack() { + unpack ${A} + cd ${S} + +#MDK +# epatch ${FILESDIR}/xterm-199-biarch-utmp.patch.bz2 +# epatch ${FILESDIR}/xterm-197-alt-keysym-index.patch.bz2 +# epatch ${FILESDIR}/xterm-199-alt-meta-mod.patch.bz2 + +#DarkLin + epatch ${FILESDIR}/xterm-ds-config-278.patch || die + epatch ${FILESDIR}/xterm-ds-paste-278.patch || die + epatch ${FILESDIR}/xterm-ds-input-225.patch || die + epatch ${FILESDIR}/xterm-ds-copy-243.patch || die +# Embedded in SM patch +## epatch ${FILESDIR}/xterm-ds-utf8mode.patch +# Since 278 is provided internaly +## epatch ${FILESDIR}/xterm-ds-sm-243.patch || die +# Incorporated into the config patch +## epatch ${FILESDIR}/xterm-ds-metaesc.patch || die +} +#EDS + +src_configure() { + # looking for reason why crosscompile failed? try restoring this: + # --x-libraries="${ROOT}usr/$(get_libdir)" + # -ssuominen, 2011 + + econf \ + --libdir="${EPREFIX}"/etc \ + --disable-full-tgetent \ + --with-app-defaults=${DEFAULTS_DIR} \ + --disable-setuid \ + --disable-setgid \ + --with-utempter \ + --with-x \ + $(use_with Xaw3d) \ + --disable-imake \ + --enable-256-color \ + --enable-broken-osc \ + --enable-broken-st \ + --enable-exec-xterm \ + $(use_enable truetype freetype) \ + --enable-i18n \ + --enable-load-vt-fonts \ + --enable-logging \ + $(use_enable toolbar) \ + $(use_enable unicode mini-luit) \ + $(use_enable unicode luit) \ + --enable-wide-chars \ + --enable-dabbrev \ + --enable-warnings +} + +src_install() { + emake DESTDIR="${D}" install + dodoc README{,.i18n} ctlseqs.txt + dohtml xterm.log.html + domenu *.desktop + + # Fix permissions -- it grabs them from live system, and they can + # be suid or sgid like they were in pre-unix98 pty or pre-utempter days, + # respectively (#69510). + # (info from Thomas Dickey) - Donnie Berkholz + fperms 0755 /usr/bin/xterm + + # restore the navy blue + sed -i -e "s:blue2$:blue:" "${ED}"${DEFAULTS_DIR}/XTerm-color +} diff --git a/x11-terms/xterm/xterm-278-r2.ebuild b/x11-terms/xterm/xterm-278-r2.ebuild new file mode 100644 index 0000000..fdb5eb8 --- /dev/null +++ b/x11-terms/xterm/xterm-278-r2.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-terms/xterm/xterm-278.ebuild,v 1.1 2012/01/19 19:01:38 ssuominen Exp $ + +EAPI=4 +inherit eutils multilib + +DESCRIPTION="Terminal Emulator for X Windows" +HOMEPAGE="http://dickey.his.com/xterm/" +SRC_URI="ftp://invisible-island.net/${PN}/${P}.tgz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="toolbar truetype unicode Xaw3d" + +COMMON_DEPEND="kernel_linux? ( sys-libs/libutempter ) + kernel_FreeBSD? ( sys-libs/libutempter ) + >=sys-libs/ncurses-5.7-r7 + x11-apps/xmessage + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXft + x11-libs/libxkbfile + x11-libs/libXmu + x11-libs/libXrender + x11-libs/libXt + unicode? ( x11-apps/luit ) + Xaw3d? ( x11-libs/libXaw3d )" +RDEPEND="${COMMON_DEPEND} + media-fonts/font-misc-misc" +DEPEND="${COMMON_DEPEND} + dev-util/pkgconfig + x11-proto/kbproto + x11-proto/xproto" + +pkg_setup() { + DEFAULTS_DIR="${EPREFIX}"/usr/share/X11/app-defaults +} + +#SDS +src_unpack() { + unpack ${A} + cd ${S} + +#MDK +# epatch ${FILESDIR}/xterm-199-biarch-utmp.patch.bz2 +# epatch ${FILESDIR}/xterm-197-alt-keysym-index.patch.bz2 +# epatch ${FILESDIR}/xterm-199-alt-meta-mod.patch.bz2 + +#DarkLin + epatch ${FILESDIR}/xterm-ds-config-278.patch || die + epatch ${FILESDIR}/xterm-ds-paste-278.patch || die + epatch ${FILESDIR}/xterm-ds-input-225.patch || die + epatch ${FILESDIR}/xterm-ds-copy-243.patch || die +# Embedded in SM patch +## epatch ${FILESDIR}/xterm-ds-utf8mode.patch +# Since 278 is provided internaly +## epatch ${FILESDIR}/xterm-ds-sm-243.patch || die +# Incorporated into the config patch +## epatch ${FILESDIR}/xterm-ds-metaesc.patch || die +} +#EDS + +src_configure() { + # looking for reason why crosscompile failed? try restoring this: + # --x-libraries="${ROOT}usr/$(get_libdir)" + # -ssuominen, 2011 + +#SDS + --disable-maximize +#EDS + econf \ + --libdir="${EPREFIX}"/etc \ + --disable-full-tgetent \ + --with-app-defaults=${DEFAULTS_DIR} \ + --disable-setuid \ + --disable-setgid \ + --with-utempter \ + --with-x \ + $(use_with Xaw3d) \ + --disable-imake \ + --enable-256-color \ + --enable-broken-osc \ + --enable-broken-st \ + --enable-exec-xterm \ + $(use_enable truetype freetype) \ + --enable-i18n \ + --enable-load-vt-fonts \ + --enable-logging \ + $(use_enable toolbar) \ + $(use_enable unicode mini-luit) \ + $(use_enable unicode luit) \ + --enable-wide-chars \ + --enable-dabbrev \ + --disable-maximize \ + --enable-warnings +} + +src_install() { + emake DESTDIR="${D}" install + dodoc README{,.i18n} ctlseqs.txt + dohtml xterm.log.html + domenu *.desktop + + # Fix permissions -- it grabs them from live system, and they can + # be suid or sgid like they were in pre-unix98 pty or pre-utempter days, + # respectively (#69510). + # (info from Thomas Dickey) - Donnie Berkholz + fperms 0755 /usr/bin/xterm + + # restore the navy blue + sed -i -e "s:blue2$:blue:" "${ED}"${DEFAULTS_DIR}/XTerm-color +} -- cgit v1.2.3