LINUX.ORG.RU

Хочу работу с мышкой как в терминале ConEmu

 ,


1

2

Привет. Мне понравилось, что в виндовом ConEmu терминале можно мышь (курсор) тыкать в любое место команды и редактировать её (даже в XP, лол). В общем, поведение как в текстовом редакторе, а не старом терминале. Для правки длинной команды не надо жать стрелку влево и адски долго ждать пока курсор доползёт до нужного места. Конечно, знаю, что в линуксе есть горячие клавиши, облегчающие редактирование. Например, быстрая навигация по словам Alt+B (назад), Alt+F (вперёд). Есть ещё какие-то клавиши для возврата в начало, в конец. Но это не так удобно, как просто тыкнуть мышью и надо запоминать эти хоткеи.

Вот и хочу спросить, а нет ли в линуксе терминалов, в которых редактирование как в текстовом редакторе, как в ConEmu? А то что же получается, линукс король терминала, а винда его обскакала. Я, конечно, понимаю, что это наследие старых систем, где взаимодействие с текстом было линейным (строчным) и без графического интерфейса, но времена-то меняются. И я без стёба спрашиваю. Действительно, обидно. Может быть есть какие-то похожие решения? Хотя, в линуксе есть другие удобные фичи (типа, мышиного буфера, истории). А получается вместе всё лучшее совместить нельзя. Нет, я не считаю, что у меня странная просьба, скорее, я смотрю в будущее.



Последнее исправление: netrium (всего исправлений: 2)
Ответ на: комментарий от kaldeon

В dash нет такой проблемы

Спс за очередную полезную инфу. Кстати, автор котёнка сказал, что вырезание текста требует кооперации с shell или такой мерзости, как отдельное окно в warp и добавлять не будет. Штош, kitty всё равно неплох. И 9term найдётся применение. Очень легковесный (8мб в ram).

netrium
() автор топика
15 декабря 2025 г.

Если в системе есть xclip и gtkdialog, можно протестировать этот простенький псевдо терминал .

#!/bin/sh
[ ! -f /tmp/commands ] && echo 'find /home -type f  -mtime -30 | while read i; do echo "$(date -r "$i" +"%d-%m-%y_%H:%M") $i" ; done | sort -t "-" -nk3 -nk2' > /tmp/commands
[ ! -f /tmp/commands_back ] && touch /tmp/commands_back
  
export TERM2='<window  title="PSEUDO TERM"><vbox>
<edit wrap-mode="3"><variable>EDITOR1</variable></edit><hbox>

<button tooltip-text="clear"><label>↑clear↑</label> <action>clear:EDITOR1</action></button>

<button tooltip-text="view history commands"><label>history</label><action>cat /tmp/commands_back > /tmp/commands</action></button>

<button tooltip-text="RUN XCLIP"><label>↓XCLIP↓</label><action>( aaa=$(xclip -o -sel primary); echo "$aaa" | sed G >> /tmp/commands_back; echo "$(eval "$aaa")" > /tmp/commands ) &</action></button>

<button tooltip-text="RUN EDIT"><label>↓EDIT↓</label><action>echo "$EDITOR1" | sed G >> /tmp/commands_back; echo "$(eval "$EDITOR1")" > /tmp/commands</action></button></hbox> 

<hbox height-request="300">
<edit auto-refresh="true" wrap-mode="3" editable="true" justify="3" scrollable="true" selectable="true">
 <input file>/tmp/commands</input></edit> 	</hbox>
 </vbox></window>'
gtkdialog -p TERM2 -G  1000x550 &
#trap  'rm -f /tmp/commands' EXIT
nik120s
()
Последнее исправление: nik120s (всего исправлений: 1)