LINUX.ORG.RU

Vifm 0.10

 , , ,

Vifm 0.10

4

5

Vifm является консольным файловым менеджером с Vim-подобным модальным управлением и некоторыми идеями, позаимствованными из почтового клиента mutt.

Новая версия привносит две часто запрашиваемые возможности: табы (вкладки) в интерфейсе и поддержку управления переносными устройствами.

Основные изменения:

  • табы (вкладки), которые могут работать в одном из двух режимов: включать обе панели и информацию об их взаимном расположении (tabscope=global) либо оперировать на уровне каждой панели по отдельности (tabscope=pane);
  • возможность синхронизации состояния регистров между группами экземпляров приложения ('syncregs');
  • добавлено меню операций над переносными устройствами (:media), для работы которого требуется внешняя программа ('mediaprg', скрипт с поддержкой udevil и udisks включён в поставку);
  • улучшено автоматическое позиционирование курсора, а также добавлена опция 'histcursor', позволяющая настраивать параметры его размещения;
  • возможность раскрашивать строку статуса более чем одним цветом (цветовые группы User1..User9).

>>> Скриншоты

>>> Ссылки для загрузки

>>> Подробности

★★★★★

Проверено: Shaman007 ()
Последнее исправление: xaizek (всего исправлений: 6)

Ответ на: комментарий от xaizek

Нажал Ctr-X без режима комстроки, он мне сразу файл переименовал какой-то. Причем переименовывает только файлы, содерживашие цифру в имени.

Это конечно все очень круто, но хорошо, что я заметил. А мог бы и не заметить. Вообще программа офигеть какая клевая.

Но поведение уж очень непредсказуемое бывает. Ляпнешь на какую-то клавишу и хз че она там на ФС натворит. Стрёмно ей пользоваться пока. Неплохо бы для начала хотя бы перед _любым_ изменением в ФС спрашивать подтверждение у юзера.

dikiy ★★☆☆☆
()
Последнее исправление: dikiy (всего исправлений: 1)
Ответ на: комментарий от xaizek

В mc шелл встроен в интерфейс. Но там ещё можно временно скрывать интерфейс, чтобы посмотреть состояние консоли. Это? Пару раз спрашивали что-то подобное, но ни разу не дали подтверждения, что именно оно нужно (добавить нетрудно).

да, именно оно. Поведение как по Ctrl-O в mc.

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

Здесь (или здесь, подсветки всё равно ни там ни там нет). Хотя надо будет закоммитить то, что не работало до v0.10.

а как ты подсветку сделал?

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

Нажал Ctr-X без режима комстроки, он мне сразу файл переименовал какой-то. Причем переименовывает только файлы, содерживашие цифру в имени.

Да, оно уменьшило первое число в имени файла.

Неплохо бы для начала хотя бы перед _любым_ изменением в ФС спрашивать подтверждение у юзера.

Такого нет. Но подтверждение запрашивается при необратимых изменениях, если не была использована сильная форма (:copy! вместо :copy, т.е. оно как --force действует). Остальное должно быть возможно отменить нажав u.

Поведение как по Ctrl-O в mc.

ОК, добавлю какую-нибудь команду (может :hide) для этого.

а как ты подсветку сделал?

Какую? Я говорил об отсутствии подсветки синтаксиса на github. Так для Vim в плагине есть файл подсветки синтаксиса vifm.

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

кстати, а что делает Shift-F key? Ищет первый файл на букву key? Это недокументированная возможность? ))

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

Не на скриптах, а через FUSE. И производительность там плоховатая, так как реализации FUSE не используют кеширования и очень много раз повторяют работу (это я смотрел archivemount, кажется).

это да. mc на архивах вроде tar реактивный, так как просто во временный каталог распаковывает.

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

Кстати, а может gvfs получше фузе работает? Ну в плане скорости

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

еще хотелось бы сохранить возможность переключения между табами, если в одном из них выполняется программа. Например редактирование файла в vim

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

кстати, а что делает Shift-F key? Ищет первый файл на букву key? Это недокументированная возможность? ))

Ищет в обратную сторону (справка):

[count]F[character]                            *vifm-F*
    search backward for file with [character] as first character in name.
    Search wraps around the end of the list.

Кстати, а может gvfs получше фузе работает? Ну в плане скорости

Я так понимаю, что он сам через тот же FUSE и работает.

еще хотелось бы сохранить возможность переключения между табами, если в одном из них выполняется программа. Например редактирование файла в vim

Это задача мультиплексера терминала. vifm знает о screen и tmux, смотри :screen.

автодополнение cd глючит если название директории на русском.

Как именно? Вроде, дополняет нормально.

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

пишу

Структура каталогов

Музыка/adir, Музыка/abdir

:cd Музы<Tab><Tab> пытаюсь набрать имя каталога, вместо этого получаю пробелы. На <BS> реагирует тоже странно.

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

Вложенные дополнять не попробовал. Действительно какая-то фигня получается, спасибо.

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

при запуске из urxvt не работает F1,F2,F3,F4. Правка .Xdefaults по типу

URxvt*keysym.F1:              \033OP
URxvt*keysym.F2:              \033OQ
URxvt*keysym.F3:              \033OR
URxvt*keysym.F4:              \033OS


помогает. Однако при запуске

urxvt -e vifm

опять фигня получается. Не могу никак поправить. А можно как-то ремаппинг прямо из vifmrc сделать?

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

Переопределить значение <f1> нельзя. Можно конечно биндить сами последовательности (какие они там у urxvt):

nnoremap <esc>OP something
Оно может не работать из-за неправильного $TERM. Там должно быть что-то вроде rxvt-unicode-256color.

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

написал программку, которая выводит состояние TERM в файл.

#include <stdio.h>
#include <stdlib.h>

void main() {
	char *c;
	
	
	char *path="/tmp/t.txt";
	FILE *f;

	c=getenv("TERM");

	f=fopen(path, "w");
	fprintf(f, "%s\n", c);
	fclose(f);
}


выходит TERM одинаковый остается.

dikiy@rosh:~/tmp$ env |grep TERM
TERM=xterm-256color
GNUTERM=wxt
COLORTERM=rxvt-256color
dikiy@rosh:~/tmp$ urxvt -e a.out 
dikiy@rosh:~/tmp$ cat /tmp/t.txt 
xterm-256color
dikiy@rosh:~/tmp


однако vifm по urxvt -e vifm глючит. А если просто запускать vifm, то норм.

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

Чтобы не глючил, внутри vifm $TERM должен быть правильным (:echo $TERM для проверки). Надо выяснить где неправильно ставится. Если я делаю:

urxvt -e env TERM=xterm-256color vifm
То у меня тоже функциональные клавиши перестают работать. То видимо правки .Xdefaults обеспечивают частичную работу.

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

да, оказалось, что это у меня руки из жопы.

Зачем-то руками прописывал TERM=xterm-256color в .bashrc, для того чтобы цвета работали. Потому что не догадался поставить rxvt-colored или как-там его. И так оно в .bashrc прописано и осталось.

Я системные скрипты автоматом переназначали клавиши F? при обнаружении urxvt, что есессно обнаружено быть не могло.

Короче, удалив свои костыли из .bashrc все заработало как надо.

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