@tugo

Есть ли консольный редактор для Linux, в котором просто выделять весь текст?

Просто выделить весь текст, как Ctrl-A в винде.
Просто сочетанием клавиш.

Vim не надо.

Чтобы вставить текст из буфера обмена и он бы заменил выделенный текст.
  • Вопрос задан
  • 178 просмотров
Пригласить эксперта
Ответы на вопрос 6
solotony
@solotony
покоряю пик Балмера
micro спасет отца русской демократии
Ответ написан
ky0
@ky0
Миллиардер, филантроп, патологический лгун
> filename ; %ваш_любимый_редактор% filename, Shift+Insert
Ответ написан
kotomyava
@kotomyava
Системный администратор
Вы путаете операцию внутри редактора, и операцию с буфером обмена, о котором ваши консольные приложения ничего не знают - для них операция вставки фактически это набор вами такого же текста. А со вставкой/копированием работает терминальное приложение на стороне вашей операционки.

Заменить выделение ни в одном консольном редакторе содержимое буфера обмена не сможет, как это происходит в вашем локальном редакторе. Вам надо сначала удалить нужный фрагмент в файле, или его очистить, а потом вставить.

Ваш вопрос, скорее надо скорее задать так: В каком консольном редакторе можно простой комбинацией клавиш очистить редактируемый файл или выделение в нём.
Например, в каком-нибудь nano можно от текущей позиции всё удалить через Alt+T. Или заранее очистить файл, как предложил ky0 а потом открыть его в консольном редакторе и вставить туда нужное.
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
Vim не надо.

а emacs ?)

как вариант попробуйте тильду ( tilde ) (выделить все Ctrl+A)

п.с.
наткнулся на интересный консольный редактор dte
очень гибкий и весит меньше чем nano
$HOME/.dte/rc
alias select-all        'bof; select -l; eof'
alias select-all-paste  'select-all; pipe-from -m wl-paste -p'

bind C-A      'select-all'
bind M-a      'select-all-paste'

здесь мы создали файл($HOME/.dte/rc) настроек программы dte и прописали в нём алиасы нужных нам команд(select-all и select-all-paste) после чего повесили их на сочетания клавиш(Ctrl+a и Alt+a)
select-all - выделяет весь текст
select-all-paste - выделяет весь текст и заменяет его на содержимое буфера обмена (чтобы два раза не вставать)

здесь wl-paste это внешняя утилита для работы с буфером обмена Wayland
wl-paste -- буфер скопированного
wl-paste -p -- буфер выделенного

для X-сов вместо wl-paste можно использовать к примеру тот же xsel с нужными ключами:
Selection options
-p, --primary Operate on the PRIMARY selection (default)
-s, --secondary Operate on the SECONDARY selection
-b, --clipboard Operate on the CLIPBOARD selection

то есть при замене wl-paste на xsel будет примерно так:
alias select-all-paste  'select-all; pipe-from -m xsel -p'
Ответ написан
drygdryg
@drygdryg
Начинающий Python-разработчик
Используйте xclip, чтобы работать буфером обмена.
Скопировать файл в буфер обмена:
$ cat file.txt | xclip -sel clip
Заменить содержимое файла содержимым буфера обмена (эквивалент Ctrl + A, Ctrl + V в редакторе):
$ xclip -sel clip -o > file.txt
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
А что подразумевается под буфером обмена?
Ты сидишь в линуксе под линуксовым текстовым терминалом?
Ты сидишь в линуксе под гуи и запускаешь терминал?
Ты сидишь и подключешься к линуксу удаленной машиной и буфер обмена у тебя не в линуксе а в твоей локальной машине, который нужно передать удаленно по ssh?

Когда поймешь что у тебя скорее всего третий вариант, ты поймешь, что буфер обмена это не просто так.
даже vi вполне подойдет, чтобы удалять/заменять текст.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы