LINUX.ORG.RU

vim как viewer в Midnight Commander


0

1

Делаю так: в файле /etc/bashrc, в конце, добавляю строки
export EDITOR=vim
export VIEWER=vi
в файле /root/.bashrc вставляю alias vi='vim -R'

После этого обычная консоль ведет себя адекватно.
vi /some-file откроет файл в vim только для чтения
vim /some-file откроет файл в vim для редактироваания

Дальше в mc, в настройках, снимаю галочки с «встроенный редактор», «встроенный просмотр»
и на клавише F3 в mc, просмотрщик будет vi что меня не устраивает так как в нем нет цветов, но показывает, что я на верном пути: F4=vim F3=vi
=======================
Если в /etc/bashrc делать export VIEWER='vim -R' или VIEWER=`vim -R` то никакого просмотрщика на F3 не будет. mc просто отказывается срабатывать на такую запись. Хотя, как я писал раньше, на export VIEWER=vi, Midnight Commander срабатывает так как прописано

Вопрос, что я делаю не так и как сделать синтаксичкски грамотно export переменной с ключем, чтобы в mc на F3 был 'vim -R'

Примечание:
Midnight Commander, версия 2006-09-25-14
CentOS 5.3
Переменные изменяются после logoff/logon
Буду рад рассмотреть все предложения


Ничего не понял. На хрена править системные переменные? Чем правки в ~/ не устраивают?

Что за переменная VIEWER? Она точно есть? Ибо PAGER знаю, EDITOR вроде тоже есть. А вот VIEWER в моем дебиане отсутствует.

another ★★★★★ ()
Ответ на: комментарий от another

И при этом все работает.

Midnight Commander, версия 2006-09-25-14

2006??? Обновись, чтоль. И прочти справку по mc.

another ★★★★★ ()
Ответ на: комментарий от another

VIEWER переменная прписывается прекрасно. Прочитай еще раз как она у меня работает для mc

mc -v в студию, очень интересно что там за версия в дебиане если он stable :)))

Как с помощью «правки в ~/» сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

dromer ()
Ответ на: комментарий от BSD

Вы основное сообщение читаете, я же писал:

Дальше в mc, в настройках, снимаю галочки с «встроенный редактор», «встроенный просмотр» получается внешний просмотр. Но этого недостаточно

Вопрос попрежнему открыт,
Как сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

dromer ()

> VIEWER=`vim -R`

Бред не пишите...

Вопрос, что я делаю не так

Не знаю. У меня работает

VIEWER=«vim -R» mc

Не r/o в виме, правда, но работает. mc-4.7.4

переменной с ключем

Блин, как же задолбало! В суффиксах после шипящей под ударением пишется o, без ударения е. Например: ключом, мячом, девчонкой.

akk ★★★★★ ()
Ответ на: комментарий от akk

«Не r/o в виме» я и сам знаю это VIEWER=vim

Вопрос про read only в виме. Чуть выше спрашивал: Как сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

dromer ()
Ответ на: комментарий от dromer

> mc -v в студию, очень интересно что там за версия в дебиане если он stable :)))

Стэйбл? На домашней машинке? Нунафих, у меня Sid. ;)

VIEWER переменная прписывается прекрасно. Прочитай еще раз как она у меня работает для mc

Лениво проверять и возиться с переменными, но действительно, $PAGER вроде не имеет отношения ко всему этому бардаку. При этом VIEWER у меня не определена. В качестве просмотра по-умолчанию используется view, если в настройках сменить в mc внутренний просмотрщик на внешний. Как и где это определяется пока не выяснил, ибо лениво, меня устраивает.

Как с помощью «правки в ~/» сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

Все перменные из конфигов в ~/ перекрывают настройки из /etc. Ибо так и должно быть. Потому править bashrc из /etc если локальная машина на одного-двух пользователей - кощунство. ;)

Есть кстати такая вещь как файл расширений. «Команда-Файл расширений» в меню. Там есть возможность настроить свои причуды под каждое расширение файла. См. самый конец оного конфига.

another ★★★★★ ()
Ответ на: комментарий от another

Ну раз вопрос замыливается, попробую ответить to another

Стэйбл? На домашней машинке? Нунафих, у меня Sid

--Я думаю и для Sid, mc -v даст тот же результат. Во всяком случае для CentOS & RHEL -> Midnight Commander, версия 2006-09-25-14 последняя официальная версия.

Лениво проверять и возиться с переменными

--Хмм. строка export VIEWER=vi, logoff/logon вроде даже меньше по труду, чем твой ответ

В качестве просмотра по-умолчанию используется view, если в настройках сменить в mc внутренний просмотрщик на внешний. Как и где это определяется пока не выяснил, ибо лениво, меня устраивает

--Можно например в /etc/bashrc вставить VIEWER=vi. Там это и определяется для всех пользователей. Касаемо лениво - ваше право, а мне надо и подсветка синтаксиса и read only Как если бы сделать vim -R /some-text-file только через F3 в mc

Все перменные из конфигов в ~/ перекрывают настройки из /etc. Ибо так и должно быть

--Это понятно. Вопрос не про место для глобального (всем пользователям) или локального (одному) прописывания переменной и кто кого перекроет, вопрос КАК сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

Там есть возможность настроить свои причуды под каждое расширение файла

-- Не совсем то что мне нужно. См вопрос. Во всяком случае не нашел

Может еще какие идеи?

dromer ()

> Midnight Commander, версия 2006-09-25-14

Обновитесь из http://rpm.zaytsev.net/mc/epel-5-i386/ или http://rpm.zaytsev.net/mc/epel-5-x86_64/

Если в /etc/bashrc делать export VIEWER='vim -R' или VIEWER=`vim -R` то никакого просмотрщика на F3 не будет. mc просто отказывается срабатывать на такую запись.


http://www.midnight-commander.org/ticket/1425

пофикшено и работает, но при условии обновления из указанных источников. Без обновления берите патчи из тикета и сами бэкпортируйте на версию 2006-09-25-14

Slavaz ★★★★★ ()
Ответ на: комментарий от Slavaz

Дополню: в крайнем случае создайте шелл-скрипт, в котором будет exec вима с нужными параметрами.. но это костыль :)

Slavaz ★★★★★ ()

а в чём смысл городить вот это?

export VIEWER=vi в файле /root/.bashrc вставляю alias vi='vim -R'

ведь `view' — это тот же `vim -R'

beastie ★★★★★ ()
Ответ на: комментарий от dromer

Вопрос про read only в виме. Чуть выше спрашивал: Как сделать чтобы в mc при нажатии клавиши F3 файл открывался в vim read only?

export VIEWER='view'

beastie ★★★★★ ()
Ответ на: комментарий от beastie

Да, export VIEWER='view' это тот же 'vim -R' маленьким исключением - нет подсветки синтаксиса. А он мне нужен

to Slavaz Попробовал новую версию mc по ссылке. vim -R не получается, срабатывает просто как vim :(

создайте шелл-скрипт, в котором будет exec вима с нужными параметрами.. но это костыль :)

--Как шел скрипт привязывается к F3? В каком конфиге?

dromer ()
Ответ на: комментарий от dromer

маленьким исключением - нет подсветки синтаксиса.

извените, но это пи***ж и провокация, УМВР

echo syntax on >> $HOME/.vimrc
beastie ★★★★★ ()
Ответ на: комментарий от beastie

извените, но это пи***ж и провокация

хмм Я думаю все-таки нет
# whereis vim
vim: /usr/bin/vim /usr/share/vim /usr/share/man/man1/vim.1.gz

# whereis view
view: /bin/view /usr/share/man/man1/view.1.gz

Две разные вещи эти view и vim и настройки включения подсветки синтаксиса в vim не коснулись view.
Команду echo syntax on >> $HOME/.vimrc я проверил. Не работает

dromer ()
Ответ на: комментарий от dromer

ясно, не думал, что в красной шапочке всё так запущенно (гугление выявило, что в rpm-ную сборку vim'а не включён view)

в таком случае один раз:

sudo ln /usr/bin/{vim,view}

а дальше по тексту:

export VIEWER=/usr/bin/view
export EDITOR=/usr/bin/vim
beastie ★★★★★ ()
Ответ на: комментарий от beastie

Решено

Преогромное спасибо тебе Дмитрий (beastie)! Все работает так как я хочу! И как все просто!

Хотя я и далеко от Берлина, но если занесет туда, с меня пиво.

Еще раз для тех кому трудно продраться через поток сознания данной ветки и тех кто пришел сюда по гуглу. Решение от beastie такое:

# ln /usr/bin/{vim,view}

# vim /etc/bashrc
добавить в конце две строки

export VIEWER=/usr/bin/view
export EDITOR=/usr/bin/vim


Перелогинится

dromer ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.