mc и внешний редактор(F4), просмотрщик(F3)

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

pavelvat
Сообщения: 64
ОС: Arch Linux i686

mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

OS Arch Linux.
Добавил в ~/.bashrc export EDITOR=vim , в настройках mc убрал пункты использовать внутренний редактор и внутренний просмотрщик.
Тогда если сначала открыть konsole и затем в ней выполнить mc то по F4 как и должно открывается vim, а вот по F3 открывается что-то похожее на обрезанный vim если набрать в нём команду :version выдаёт это: Version 4.0 (gritter) 3/25/05

Если же создать в KDE ссылку на приложение mc и указать в ней "запускать в терминале", то и по F3 и по F4 запускается этот обрезанный vim, мне удалось добиться для этого случая чтобы по F4 запускался vim только когда я прописал в /etc/bash.bashrc export EDITOR=vim и перезагрузился, по F3 по-прежнему запускается этот обрезанный vim.

Как так сделать чтобы ссылка на приложение в KDE с опцией "запускать в терминале" использовала мой локальный ~/.bashrc ?
Как сделать чтобы по F3 запускался тоже vim?
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

~/.bashrc — это файл конфигурации bash. Если KDE напрямую запускает приложение в терминале, то делается это помимо bash и ~/.bashrc роли не играет. Именно поэтому, не надо устанавливать переменные среды в ~/.bashrc.

F3 запускает не редактор, насколько я помню mc, а просмотрщик. Просмотрщик традиционно задаётся переменной среды PAGER, а не EDITOR, если mc поддерживает это соглашение.
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
25.04.2010 19:46
~/.bashrc — это файл конфигурации bash. Если KDE напрямую запускает приложение в терминале, то делается это помимо bash и ~/.bashrc роли не играет. Именно поэтому, не надо устанавливать переменные среды в ~/.bashrc.

Непонятно, ведь команды обрабатывает именно bash или та оболочка которая установлена по умолчанию. Тут проблема в том, что та копия bash которая запускается в KDE из созданной ссылки на приложение mc, берёт только глобальные настройки из /etc/bash.bashrc, настройки ~/.bashrc из домашнего каталога пользователя игнорируются.

Вопрос: как задать переменную среды только для данного пользователя чтобы KDE её подхватывало?

watashiwa_daredeska писал(а): ↑
25.04.2010 19:46
F3 запускает не редактор, насколько я помню mc, а просмотрщик. Просмотрщик традиционно задаётся переменной среды PAGER, а не EDITOR, если mc поддерживает это соглашение.

Спасибо помогло, добавил в ~/.bashrc
export PAGER=vim
теперь по F3 тоже vim.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

wilgib писал(а): ↑
25.04.2010 20:55
ведь команды обрабатывает именно bash или та оболочка которая установлена по умолчанию.
Даже если «та оболочка которая установлена по умолчанию» — не bash, то ~/.bashrc уже не обрабатывается. KDE у меня не стоит, на 100% уверен быть не могу, однако на 99% уверен, что то, что написано в ссылках KDE обрабатывается не shell'ом вообще, а самим KDE, поэтому файлы конфигурации bash не имеют к нему никакого отношения.

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

wilgib писал(а): ↑
25.04.2010 20:55
export PAGER=vim
теперь по F3 тоже vim.
Рекомендую хотя бы read only: view или, что тоже самое, vim -R
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
25.04.2010 21:04
то, что написано в ссылках KDE обрабатывается не shell'ом вообще, а самим KDE, поэтому файлы конфигурации bash не имеют к нему никакого отношения.

В самом первом сообщении я же написал, что при прописывании в /etc/bash.bashrc
export EDITOR=vim
и перезагрузки, по F4 стало открываться в vim, т.е. эта переменная подхватилась.

При опции "открывать в терминале" в ссылке на приложение, в KDE запускается konsole и следовательно shell по-умолчанию, а у меня это bash и из него уже запускается программа из ссылки.

mc ведь всегда запускается из какой-либо оболочки - bash или какой-нибудь другой и его можно временно свернуть по Ctrl+O и пользоваться оболочкой из которой он запущен.
Как можно запустить программу без какого-нибудь shell?

watashiwa_daredeska писал(а): ↑
25.04.2010 21:04
Вот, наколбасил статейку в нашу Вики: Настройка переменных среды, а то, что-то больно часто стали попадаться эти грабли на форуме.

За статью спасибо.

watashiwa_daredeska писал(а): ↑
25.04.2010 21:04
wilgib писал(а): ↑
25.04.2010 20:55
export PAGER=vim
теперь по F3 тоже vim.
Рекомендую хотя бы read only: view или, что тоже самое, vim -R

Спасибо за совет, поставил vim -R.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

wilgib писал(а): ↑
25.04.2010 21:45
В самом первом сообщении я же написал, что при прописывании в /etc/bash.bashrc
И перезагрузились. Попробуйте для эксперимента прописать в ~/.bashrc и перезагрузиться, должно получиться то же самое.

wilgib писал(а): ↑
25.04.2010 21:45
запускается konsole и следовательно shell по-умолчанию
Из запуска эмулятора терминала совершенно не следует запуск шелла.

wilgib писал(а): ↑
25.04.2010 21:45
mc ведь всегда запускается из какой-либо оболочки - bash или какой-нибудь другой и его можно временно свернуть по Ctrl+O и пользоваться оболочкой из которой он запущен.
Всё с точностью до наоборот. Это шелл запущен в mc и mc убирает свой интерфейс по Ctrl+O и даёт поработать в запущенном им шелле.

wilgib писал(а): ↑
25.04.2010 21:45
Как можно запустить программу без какого-нибудь shell?
Очень просто. Средствами ОС для запуска программ. shell точно такая же программа, как и все остальные, просто со слегка особенным назначением.
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
25.04.2010 22:56
Попробуйте для эксперимента прописать в ~/.bashrc и перезагрузиться, должно получиться то же самое.

Уже пробовал перезагружаться, не получается - запускается что-то похожее на урезанный vim, я это описал в первом сообщении. Видимо где-то ещё прописаны глобальные значения для переменных среды EDITOR и PAGER в которых указан этот урезанный vim. Т.е. получается, что при запуске mc через ссылку на приложение в KDE, с опцией "запускать в терминале", mc запускает shell который берёт значение переменной среды EDITOR из /etc/bash.bashrc (после внесения изменений в этот файл надо перезагрузиться), и не считывает значение EDITOR из ~/.bashrc, вот что странно, если свернуть mc по Ctrl+O и набрать echo $EDITOR то выводится значение указанное в ~/.bashrc.
В тоже время, если сначала запустить konsole, а затем в ней запустить mc, то тогда по F4 открывается именно vim.
Если значение переменной среды EDITOR я ни в каком файле не указывал, то echo $EDITOR выводит пустую строку.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

Так а если по статье, которую я привёл, всё сделать, работает?
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
26.04.2010 00:22
Так а если по статье, которую я привёл, всё сделать, работает?

Работает если создать файл ~/.profile и в нём указать нужные переменные среды(как оказалось перезагружаться необязательно, достаточно перелогиниться), причём работает в обоих случаях и через ссылку на приложение и через запуск mc из уже запущенной консоли.
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

После такого задания переменной среды PAGER(в любом конфигурационном файле):
export PAGER=vim
сломалось отображение man-страниц, так что такой способ указания просмотрщика по F3 не подходит.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

Для отображения man-страниц можно установить export MANPAGER=less
Но лучше, конечно, PAGER=less, а в настройках mc указать vim -R, если ещё осталась такая настройка. Лет 10 назад была.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5513
ОС: Gentoo

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение /dev/random »

btw, на мой взгляд для просмотра удобнее vimpager, а не vim -R. При запуске через vimpager перенастраиваются комбинации клавиш, становясь более less-подобными.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

/dev/random писал(а): ↑
26.04.2010 18:42
При запуске через vimpager перенастраиваются комбинации клавиш, становясь более less-подобными.
Мне кажется, основная проблема тут в том, что man отсылает на вход $PAGER не plain text, а текст с терминальными последовательностями для выделения всяческих секций цветом. less умеет такое понимать, как заставить vim такое понимать — не знаю.
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
26.04.2010 18:29
Для отображения man-страниц можно установить export MANPAGER=less
Но лучше, конечно, PAGER=less, а в настройках mc указать vim -R, если ещё осталась такая настройка. Лет 10 назад была.

В том и проблема, что нет такой настройки - нельзя просто указать пути к программам для просмотра и редактирования. Сейчас в mc такая система: в настройках имеются включённые опции - использовать внутренний редактор и использовать внутренний просмотрщик если снять с этих опций крестик, то будет использоваться то что указано в переменных окружения EDITOR и PAGER.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение watashiwa_daredeska »

wilgib писал(а): ↑
26.04.2010 18:46
если снять с этих опций крестик, то будет использоваться то что указано в переменных окружения EDITOR и PAGER.
А каких-нибудь персональных переменных он не понимает? Как, например, man — если установлена $MANPAGER, использует её, если нет, использует $PAGER, если и она не установлена, использует что-то по-умолчанию.
Спасибо сказали:
pavelvat
Сообщения: 64
ОС: Arch Linux i686

Re: mc и внешний редактор(F4), просмотрщик(F3)

Сообщение pavelvat »

watashiwa_daredeska писал(а): ↑
26.04.2010 18:50
А каких-нибудь персональных переменных он не понимает? Как, например, man — если установлена $MANPAGER, использует её, если нет, использует $PAGER, если и она не установлена, использует что-то по-умолчанию.

Не знаю, я только недавно пересел на mc, может и можно как-то настроить.
Спасибо сказали: