Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.GOLDED
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.GOLDED с датами от 16 Jul 13 03:28:02 до 21 Jun 24 09:53:46, всего сообщений: 3579
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 645 из 3579 ========================================= RU.GOLDED =
От   : Vladislav Vetrov                 2:5020/2140.152    31 Oct 15 00:44:56
Кому : All                                                 31 Oct 15 00:44:56
Тема : Linux Golded+ 1.1.5 bugs fix ctrl/shift
FGHI : area://RU.GOLDED?msgid=2:5020/2140.152@Fidonet.org+5633e4de
На   : area://RU.GOLDED?msgid=2:5020/545+562f1b08
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.GOLDED?msgid=2:5025/121+56344e72
Ответ: area://RU.GOLDED?msgid=<1187502975@ddt.demos.su>+2a41f4fe
Ответ: area://RU.GOLDED?msgid=<1187502977@ddt.demos.su>+f37a38f1
Ответ: area://RU.GOLDED?msgid=<1187503062@ddt.demos.su>+626ac3ed
==============================================================================
Hello All!
27 окт 15 09:33, you wrote to Vladimir Fyodorov:

AV> Если кто-то скомпилирует - этот же кто-то может и проверить.

Скомпилировал, докладываю:

Ctrl-стрелки работают. Ура!
Shift-стрелки вправо, влево, вверх, вниз выделяют. Ура!
Shift-insert - вставляет из системного буфера Linux. Ура!
Shift-del - удаляет но не в буфер :(
Shift-Ctrl-стрелки пока ещё не работают :( Это комбинация просто рисует символы - 1"
Shift-Home, Shift-End не выделяет :(

$echo $TERM
xterm

_Hint_: огромное спасибо Сергею Леонтьеву 2:5020/400 за проделанную работу и за подсказку где копать, чтобы добить до конца.

*2All* - намекните, где брать определение для комбинации клавиш Shift-Ctrl-стрелки, Shift-end, Shift-home для конструкции типа define_key("\033[1;5D", G_KEY_CLEFT)? В чём может быть причина, что Shift-del просто удаляет мимо системного буфера Linux?

*PS*: Hебольшой _howto_ для линуксоидов, который хотят попробовать патч:

_1._ Текст ниже сохраните в отдельный файл, например bugsfix01.diff. Ограничивающие строки из знаков равно (====) в файл брать не надо:

======================================
diff -burN
golded+115-20150715/golded-plus/golded+/goldlib/gcui/gkbdbase.cpp
golded+115-20150715/golded-plus.new/golded+/goldlib/gcui/gkbdbase.cpp
- --- golded+115-20150715/golded-plus/golded+/goldlib/gcui/gkbdbase.cpp
2011-02-18 22:46:01.000000000 +0300
+++
golded+115-20150715/golded-plus.new/golded+/goldlib/gcui/gkbdbase.cpp
2015-10-26 19:06:08.000000000 +0300
@@ -182,6 +182,23 @@

   Init();

+  #if defined(__USE_NCURSES__)
+   // TODO: move G_KEY_BASE OI KEY_MAX-4,
+   // TODO: change array gkbd_curstable to std::map
+   // TODO: move define to header or begin of source file
+    #define G_KEY_BASE (KEY_RESIZE+3)
+    #define G_KEY_CUP    (G_KEY_BASE+0)
+    #define G_KEY_CDOWN  (G_KEY_BASE+1)
+    #define G_KEY_CRIGHT (G_KEY_BASE+2)
+    #define G_KEY_CLEFT  (G_KEY_BASE+3)
+
+       // TODO: Read Esc sequence from config files
+   // TODO: for Mac OSX create config file GED-KOI8.terminal
+    define_key("\033[1;5A", G_KEY_CUP);
+    define_key("\033[1;5B", G_KEY_CDOWN);
+    define_key("\033[1;5C", G_KEY_CRIGHT);
+    define_key("\033[1;5D", G_KEY_CLEFT);
+  #endif
   #if defined(__UNIX__) && !defined(__USE_NCURSES__) && !defined(__BEOS__)

   gkbd_keymap_init();
@@ -676,8 +693,8 @@
   -1,        //  KEY_CLEAR
   -1,        //  KEY_EOS
   -1,        //  KEY_EOL
-  -1,        //  KEY_SF
-  -1,        //  KEY_SR
+  Key_S_Dwn, //  KEY_SF
+  Key_S_Up,  //  KEY_SR
   Key_PgDn,  //  KEY_NPAGE
   Key_PgUp,  //  KEY_PPAGE
   Key_Tab,   //  KEY_STAB
@@ -750,7 +767,13 @@
   -1,        //  KEY_SUSPEND
   -1,        //  KEY_UNDO
   -1,        //  KEY_MOUSE
-  -1         //  KEY_RESIZE
+  -1,        //  KEY_RESIZE
+  -1,       //  KEY_EVENT
+  -1,       //
+  Key_C_Up,  //  G_KEY_CUP
+  Key_C_Dwn, //  G_KEY_CDOWN
+  Key_C_Rgt, //  G_KEY_CRIGHT
+  Key_C_Lft  //  G_KEY_CLEFT
 };

 int gkbd_cursgetch(int mode) {
@@ -1062,6 +1085,10 @@
     key = 0;
     switch(k) {
       case Key_C_Brk:
+      case Key_C_Up:
+      case Key_C_Dwn:
+      case Key_C_Rgt:
+      case Key_C_Lft:
         key = GCTRL;
         break;
       case Key_S_Tab:
@@ -1071,6 +1098,8 @@
       case Key_S_Lft:
       case Key_S_Rgt:
       case Key_S_End:
+      case Key_S_Dwn:
+      case Key_S_Up:
         key = LSHIFT;
         break;
     }

======================================

_2._ Скачайте исходники golded, файл gpsrc-115-20150715.tgz, ссылка:

http://sourceforge.net/projects/golded-plus/files/Golded%2B%201.1.5%20snapshots/2015.07.15/gpsrc-115-20150715.tgz/download

_3._ Разархивируйте файл и перейдите в директорию golded-plus/golded+/goldlib/gcui

_4._ Скопируйте в текущую директорию файл патча bugsfix01.diff

_5._ В текущей директории выполните следующую команду: patch -p5 < bugsfix01.diff

_6._ Перейдите в верхнюю директорию golded+ и запустите скрипт компиляции: dist-gpl.sh

_7._ При первом коротком запуске скрипта будет создан файл mygolded.h в поддиректории golded+/golded3. При желании отредактируйте его, вставив в него свои данные, но это делать не обязательно.

_8._ Запустите на выполнение скрипт dist-gpl.sh второй раз.

_9._ После успешной компиляции ищите готовые файлы в поддиректории golded+/bin:

    gedlnx
    gnlnx
    golded
    openbsd-vt220.sh
    rddtlnx
    screenrc_koi8r

_10._ Скопируйте их на место Ваших старых бинарных файлов, предварительно сделав их резервную копию.

_11._ Запустите golded и попробуйте различные комбинации клавиш с Ctrl-Shift, как было описано выше.

_12._ Hапишите свои замечания о работе патча в RU.GOLDED :)

Vladislav

... -= -x-X-x- =-
--- GoldED++/LNX 1.1.5bugslnxfix-b20130111 by ASA
* Origin: DON'T WASTE NO TIME (c) HP (2:5020/2140.152)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.041836 секунды