On 2015-12-20, Oleksandr Gavenko wrote: > Можно ли как то запретить вставку текста с переносом строки в Xterm? Или > ограничить текст до первого переноса?
В общем мне подсказали в приват, благодарности Евгению: $ cat ~/.Xdefaults urxvt*perl-ext-common: default,confirm-paste $ man 1 urxvt-confirm-paste NAME confirm-paste - ask for confirmation before pasting multiline text DESCRIPTION Displays a confirmation dialog when a paste containing at least a full line is detected. > Команды можно прописать поряд. Итого в ~/.Xdefaults: > > *VT100*translations: #override Meta <KeyPress> Insert: exec-formatted("sh > -c 'echo xxx | xsel -p; xmessage ok'", SELECT) insert-selection(PRIMARY) > Но есть сомнения - exec-formatted выполняет команду асинхронно. > Нужна команда, вставляющая результат выполнения команды, такого не > обнаружил... Затратил я вренени немало на мучение с xterm. Ранее использовал rxvt, потому как в Msys / Cygwin был его порт. Затем разработчик из Cygwin седелал mintty на базе rxvt. Когда установил Debian дома то использовал rxvt, но тогда был переход на UTF-8, чего оригинальный rxvt вроде не умел, потому где то лет 8 пользовал xterm. У меня набралось немного настроек, в основном это цвета, а то git --simplify-by-decoration плюет текст желтым, на белом фоне не разглядишь, стал оранжевым, т.к. в виджетах Midnight Commander он активно используется и должен различаться на синем/циановом: XTerm*background: white XTerm*foreground: black XTerm*cursorColor: brown XTerm*color3: tan XTerm*color10: MediumSeaGreen XTerm*color11: orange XTerm*color14: DarkCyan ! Allow Alt as Meta in Emacs: XTerm*eightBitInput: false XTerm*metaSendsEscape: true XTerm*saveLines: 10000 В Debian несколько вариаций: rxvt - Rxvt is an 8-bit clean, color xterm replacement that uses significantly less memory than a conventional xterm, mostly since it doesn't support toolkit configurability or Tek graphics, but also since features can be removed at compile-time to reflect your needs. rxvt-ml - This package contains three versions of rxvt: krxvt and crxvt, which support Japanese and Chinese characters, and grxvt, which supports both ELOT-928 (ISO-8859-7 standard) and IBM-437 keyboard translations for Greek character entry. rxvt-unicode - is a modern, Unicode-aware color xterm replacement that uses significantly less memory than a conventional xterm and many other Unicode supporting terminal emulators. It supports using multiple fonts at the same time, including Xft fonts, and client-server technology to reduce memory consumption when using multiple windows. rxvt-unicode-256color - This package is configured with 256-color support, and TERM set to "rxvt-unicode-256color". Any other systems you log into must have this terminfo entry installed! rxvt-unicode-lite - This package contains the small version with only a few extra features and without Freetype support. Ничего не понял про rxvt-unicode-256color, потому как почти половину цветов Emacs "M-x list-colors-display" показал в rxvt-unicode, когда я его TERM подделал: $ TERM=rxvt-unicode-256color emacsclient -t Хотя из за второй неподдерживаемой половины Emacs полураскрашеный... А итоге остановился rxvt-unicode-256color. Emacs в нем выглядит неотличимо от GTK версии. В обоих случаях неразличимые цаета и шрифт одинаковый - 7x14, что есть: emacs.font: -misc-fixed-medium-r-normal-*-14-*-*-*-c-*-iso10646-1 ================================================================ Итого urxvt выглядит интересным, цвета адаптировать не составит труда. Есть возможность написания плагинов на Perl. Память xterm и urxvt (256color) ест одинаково. Это все: $ ls /usr/share/man/man1/urxvt-* /usr/share/man/man1/urxvt-background.1.gz /usr/share/man/man1/urxvt-bell-command.1.gz /usr/share/man/man1/urxvt-block-graphics-to-ascii.1.gz /usr/share/man/man1/urxvt-clipboard-osc.1.gz /usr/share/man/man1/urxvt-confirm-paste.1.gz /usr/share/man/man1/urxvt-digital-clock.1.gz /usr/share/man/man1/urxvt-eval.1.gz /usr/share/man/man1/urxvt-example-refresh-hooks.1.gz /usr/share/man/man1/urxvt-extensions.1.gz /usr/share/man/man1/urxvt-keysym-list.1.gz /usr/share/man/man1/urxvt-kuake.1.gz /usr/share/man/man1/urxvt-matcher.1.gz /usr/share/man/man1/urxvt-option-popup.1.gz /usr/share/man/man1/urxvt-overlay-osc.1.gz /usr/share/man/man1/urxvt-readline.1.gz /usr/share/man/man1/urxvt-remote-clipboard.1.gz /usr/share/man/man1/urxvt-searchable-scrollback.1.gz /usr/share/man/man1/urxvt-selection.1.gz /usr/share/man/man1/urxvt-selection-autotransform.1.gz /usr/share/man/man1/urxvt-selection-pastebin.1.gz /usr/share/man/man1/urxvt-selection-popup.1.gz /usr/share/man/man1/urxvt-selection-to-clipboard.1.gz /usr/share/man/man1/urxvt-tabbed.1.gz /usr/share/man/man1/urxvt-xim-onthespot.1.gz можно запихнуть в: $ cat ~/.Xdefaults urxvt*perl-ext-common: default,confirm-paste,clipboard-osc,digital-clock Разве что еще не понял как сделать аналог xterm: *VT100*translations: #override Meta <KeyPress> /:dabbrev-expand() Это когда автопродолшение по тексту, который отобразился на скрине (не не в истории команд Readline!). Мне кажется это очень удобным, всегда хотел, жаль что узнал о таком позавчера. -- Best regards!