Файловый менеджер Far: исполнение желаний

Автор: Veged
Дата: 15.07.2003
Все фото статьи
При любом использовании компьютера возникает аспект работы с файлами. В этом, порой непростом, деле помочь предназначены файловые менеджеры. Каждый из пользователей имеет своего "фаворита" из всего их многообразия. Пользователь использует конкретную программу чаще других и, как правило, её функциональность вполне его устраивает. Но бывают ситуации, в которых желания пользователя остаются неосуществлёнными. Кому-то не хватает удобства, кому-то - красоты, кому-то - скорости, а кому-то - ещё чего-нибудь. В большинстве таких случаев человек смиряется с "недостатками" используемого файлового менеджера, считая их неизбежными. Цель данной статьи - показать, что иногда любимая программа таит в себе способы исполнения самых смелых желаний пользователя. Речь пойдёт об одном из самых распространённых файловых менеджеров, о FAR. На момент написания статьи последней версией является FAR 1.70 beta 5 build 1634, о ней и будем говорить. Автор не ставит целью увеличить число поклонников этого программного продукта. В статье на примерах будут рассмотрены некоторые возможные желания пользователя и способы их удовлетворения. Практические же выводы предстоит сделать каждому лично.

Примечание. Потенциальные возможности FAR практически бесконечны, за счёт поддержки внешних модулей и макрокоманд. Поэтому мы будем рассматривать только стандартный состав и его возможности. Всё, что касается дополнительных плагинов и адд-онов, вы можете найти на официальном сайте дополнений: http://plugring.farmanager.com/.



Список стандартных плагинов

Перед тем, как перейти непосредственно к проблемным ситуациям, необходимо выразить общую для всей статьи рекомендацию: "Более подробную информацию обо всех описываемых вещах вы можете найти в стандартной справке FAR (вызывается контекстно клавишей "F1"), справке по внешним модулям ("Shift+F2" в окне справки), а также на страницах официальных FAQ (http://plugring.farmanager.com/faq/echo/ и http://plugring.farmanager.com/faq/). Статья лишь описывает основные идеи и направления дальнейшего поиска".

Желание 1. Я настроил параметры FAR и хочу использовать их на другом компьютере.
Исполнение. Сохранить текущие настройки можно в файлы "Far\FarSave1.reg" и "Far\FarSave2.reg" с помощью командного файла "Far\SaveSettings.bat". Для восстановления же настроек достаточно импортировать reg-файлы в системный реестр (можно использовать "Far\RestoreSettings.bat").


Импорт reg-файла в системный реестр

Желание 2. Хочу получать больше информации с "одного взгляда" на панели файлов.
Исполнение. Значительно увеличит информативность панелей файлов включение опции "Раскраска файлов" в окне "Параметры -> Настройки панели" и настройка этой самой раскраски в окне "Параметры -> Раскраска файлов". Вы можете задать определённый цвет и даже специальный значок-символ для того, чтобы сразу видеть наличие интересующих вас групп файлов и папок.


Окно настройки раскраски файлов

Желание 3. Я настроил цвета FAR в пунктах "Параметры -> Цвета" и "Параметры -> Раскраска файлов" и хочу использовать их на другом компьютере.
Исполнение. Экспорт и импорт настроек цвета можно выполнить с помощью командных файлов export_colors.bat и import_colors.bat из директории "Far\Addons\Colors\". Кроме этого в директориях "Custom Highlighting" и "Default Highlighting" вы найдёте дополнительные цветовые схемы.


Директория "Far\Addons\Colors\"

Желание 4. В Windows я могу очень быстро попасть в любой из часто используемых каталогов (например, "Мои документы", "Рабочий стол" и др.). Я хочу того же самого и в FAR.
Исполнение. В FAR реализована система "Ссылки на папки" (меню "Команды"). Она позволяет обеспечить быстрый доступ к часто используемым папкам. Создать ссылку на текущую папку нужно либо из диалогового окна "Ссылки на папки", либо нажав "Ctrl+Shift+0..9" в панели файлов. После этого, можно использовать "ПравыйCtrl+0..9" в панелях, для перехода к папке, записанной в ссылке. Так же "ПравыйCtrl+0..9", при нажатии в строках редактирования, вставит путь ссылки в место курсора.


Окно "Ссылки на папки"

Кроме того, FAR может обрабатывать команду "cd" для текущей панели. Вызывая её с соответствующим параметром тогда, когда нужно перейти в какую-нибудь директорию, можно добиться даже большей гибкости, чем в Windows. Вызывать на исполнение команды в FAR можно тремя способами: в консоли, в пользовательских меню и в макросах (если быть точным, то макрос лишь автоматизирует ввод и выполнение команды в консоли). Первый способ не даёт требуемого удобства. А вот второй и третий сводят проблему перехода в определённые заранее папки к нажатию горячих клавиш. Главное пользовательское меню можно использовать и редактировать с помощью клавиши "F2". Записать и назначить макрокоманду можно с помощью сочетания клавиш "Ctrl+Shift+." (первое нажатие для начала записи, второе - для конца), в этом случае необходимо корректно установить параметры макрокоманды "Пустая командная строка" и "На панели плагина".


Окно "Редактирование пользовательского меню"



Окно "Редактирование пользовательского меню"

Желание 5. Я работаю с тремя типами файлов: тексты, изображения и аудиозаписи. Хранятся они в одноимённых директориях. Я хочу, чтобы, находясь в папке с текстами, из пользовательского меню можно было запускать текстовый процессор, в папке с изображениями - графический редактор, а в папке с аудиозаписями - звуковой микшер.
Исполнение. Подобную структуру может обеспечить местное пользовательское меню. Создать его можно с помощью команды "Параметры -> Меню пользователя". Вы также можете редактировать его в файле "FarMenu.ini" соответствующего каталога.


Создание местного меню

Желание 6. Один из редакторов, установленных на моём компьютере, создаёт файлы *.bak (резервные копии изменённых документов). Я хочу, чтобы по нажатию "Enter" на одном из них в текущем каталоге удалялись все эти временные файлы.
Исполнение. Для этого достаточно задать ассоциацию для маски "*.bak" с помощью пункта меню "Команды -> Ассоциации файлов". Где в качестве команды, выполняемой по "Enter" указать "del *.!`". Здесь "!`" является метасимволом, который заменяется расширением файла.


Создание местного меню

Желание 7. Я хочу на основании каталога с моими документами создавать виртуальный диск, имя которого заранее неизвестно, т. е. вводится при создании.
Исполнение. Для определения параметров команды непосредственно при её выполнении в FAR предусмотрен метасимвол "!?<title>?<init>!", который заменяется данными, введенными пользователем. Здесь "<title>" и "<init>" - заголовок и исходный текст строки редактирования. Таким образом, достаточно создать команду меню вида "subst !?Какой диск?Z!: "C:\Мои документы"", и при её выполнении изменять параметр по умолчанию (в данном случае "Z") на требуемую букву диска.


Создание команды меню для монтирования виртуального диска

Желание 8. Хочется автоматизировать выполнение одинаковых команд для нескольких файлов сразу.
Исполнение. Специально для этого служит команда "Применить команду" ("Ctrl+G") из меню "Файлы". При этом имена файлов должны обозначаться с использованием тех же символов, что и в "Ассоциации файлов".


Диалоговое окно "Применить команду"

Желание 9. Каждый раз, заходя в свой каталог "Unsorted" я убеждаюсь, что работать нормально с файлами разных типов количеством больше тридцати в одном месте - невозможно. Хочется, чтобы можно было не сортировать их по директориям, без ущерба удобству.
Исполнение. Действительно, иногда очень трудно нормально классифицировать и разложить файлы по папкам, так, чтобы потом не заблудиться в многоуровневой структуре. Куда проще побросать всё в один каталог и воспользоваться возможностью FAR "Фильтр панели файлов". Нажав "Ctrl+I" можно создать очень гибкий составной фильтр для текущей панели на основе присутствующих файлов (по расширению) и пользовательских масок. Удобна возможность задания как масок включения, так и исключения.


Настройка фильтров файловой панели

Желание 10. Я часто копирую файлы на дискету, для переноса их на другой компьютер. И, дабы обезопасить себя от неприятностей с повреждением некоторых секторов, создаю копии на этой же дискете. Этот процесс отнимает массу времени: надо скопировать первый раз, потом создать директорию "A:\Copy\" и скопировать второй раз. Хочется упростить все эти действия.
Исполнение. Безусловно, свести эту задачу к более простой можно различными способами. Но наиболее интересным автору представляется использование для этого опции диалога копирования "Обрабатывать несколько имен файлов". При её включении строка назначения может содержать более одной цели. В качестве разделителей между ними используются символы ";" и ",". Рекомендуется, так же, включить опции "История в строках ввода диалогов" и "Автозавершение в строках ввода" в диалоге "Настройки интерфейса" - это значительно увеличит скорость выполнения рассмотренной задачи.


Сохранение на дискету с автоматическим созданием копий

Желание 11. Хочу иметь быстрый и удобный доступ к цифрам свободного и максимально доступного места на моих дисках.
Исполнение. Свободное место на текущем диске (в байтах) показывается на панелях файлов при включённой опции "Показывать свободное место". Объём и занятость диска (в байтах) можно также посмотреть на панели информации ("Ctrl+L"). Но наиболее удобным является отображение дополнительной информации в "Меню выбора диска". Сочетания клавиш "Ctrl+5", "Ctrl+6" и "Ctrl+8" переключают соответственно режимы отображения общего и свободное место на диске (жёстком), параметров сменных дисков и параметров компакт-дисков. Правда, при замедленном обращении к некоторым из внешних дисков (например, флоппи) не рекомендуется держать постоянно включённым отображение параметров сменных дисков. Поскольку обращение за информацией происходит каждый раз при вызове меню дисков.


Меню дисков с дополнительной информацией

Желание 12. Мне неудобно тянуться к кнопке "Eject" на CD-ROM. Хочется выполнять это действие с помощью клавиатуры.
Исполнение. Меню дисков FAR позволяет использовать клавиши "Del" и "Ins" на соответствующих строках для открытия и закрытия CD-ROM (и других подобных приводов). Кроме этого клавиша "Del" позволяет отсоединить сетевой диск и удалить SUBST диск.


Меню дисков

Желание 13. При работе в полноэкранном режиме мне существенно не хватает панели задач Windows. Хочется иметь доступ из FAR к активным на данный момент задачам.
Исполнение. Специально для этих целей в FAR предусмотрен "Список задач". Вызвав его либо из меню "Команды", либо с помощью "Ctrl+W", вы сможете переключаться на окно задачи ("Enter" на необходимой строчке) и/или немедленно завершать задачу ("Del").


Список задач

Желание 14. Я использую FAR недавно, и у меня осталась необходимость некоторые операции выполнять с помощью Проводника Windows. Я хочу большей интеграции этих двух программ.
Исполнение. Это желание можно разделить на две части: запуск FAR "в нужном месте" из Проводника и запуск "в нужном месте" Проводника из FAR. Для обеспечения первого в директории "Far\Addons\Shell\" есть файл "FARHere.inf". Будучи установлен (в контекстном меню Проводника для этого файла выбрать "Установить", при этом проверьте последнюю строчку файла, она должна содержать путь к FAR на вашем компьютере), он добавит к контекстному меню Проводника пункт "Far Here" для любого каталога (или диска). Это позволит открыть текущую директорию в FAR. Кроме этого, дополнительные возможности добавляет использование параметров командной строки FAR. Вы можете по необходимости использовать команды: "far /e[<строка>[:<позиция>]] <filename>" - для открытия на редактирование файла (по желанию используется указание строки и позиции в строке); и "far /v <filename>" - для открытия на просмотр файла. Запуск Проводника из FAR не требует никаких особых приготовлений. Просто нажимая "Ctrl+Enter" на любой папке вы сможете открыть её в Проводнике. Тоже самое справедливо и для дисков в меню выбора диска. Если описанных возможностей вам мало, то смотрите Желание 22.


Пункт "Far Here" в контекстном меню Проводника

Желание 15. Я иногда забываю переключить раскладку клавиатуры и обнаруживаю это когда напечатано уже достаточно много. Не хочется постоянно перенабирать текст.
Исполнение. Для решения проблем переключения "QWERTY<->ЙЦУКЕН" в директории "Far\Addons\XLat\Russian\" расположены reg-файлы, один из которых ("Qwerty.reg") содержит таблицы перевода английских букв в русские, а остальные файлы позволят назначить горячие клавиши для функции перекодировки файла под курсором. Так импортировав, например, файл "CtrlShiftX.reg" вы сможете нажатием "Ctrl+Shift+X" в редакторе, командной строке и диалоговых окнах исправлять последствия набора с неверным языком.


Директория "Far\Addons\XLat\Russian\" и использование перекодировки QWERTY<->ЙЦУКЕН"

Желание 16. Я знаю о возможности переключения кодировки символов по "Shift+F8" в редакторе и программе просмотра FAR. Но вот тех таблиц кодировки, которые представлены по умолчанию, мне не хватает. Хочется большего.
Исполнение. На самом деле, в стандартную поставку входит достаточно большое количество кодировочных таблиц. Наверное, именно поэтому все они не подключаются к FAR сразу. Но вы всегда можете выбрать в каталоге "Far\Addons\Tables\"" нужную вам и импортировать соответствующий reg-файл в реестр. После этого она будет доступна в меню выбора таблицы символов ("Shift+F8").


Использование различных таблиц кодировки символов

Желание 17. В исполнении Желания 4 я прочитал о макрокомандах. Но я не хочу мучаться с назначением простых действий на очевидные для них клавиши.
Исполнение. Специально для людей с разными привычками к горячим клавишам некоторые распространённые, но не реализованные в FAR по умолчанию, сочетания представлены в директории "Far\Addons\Macros\" в виде reg-файлов. Их описание вы найдёте в файле "Descript.ion".


Директория "Far\Addons\Macros\"

Желание 18. Мне часто приходится одновременно просматривать и редактировать большое количество текстовых файлов. Неудобно постоянно выходить в панель файлов, закрывая текущий просмотр/редактирование и искать следующий файл для работы. Хочется больше удобства.
Исполнение. В FAR присутствует целый ряд функций, способных обеспечить удобную работу с несколькими файлами одновременно. Переключение между экранами с помощью клавиш "Ctrl+Tab", "Ctrl+Shift+Tab" и "F12" позволяет открыть несколько копий встроенной программы просмотра/редактора. Кроме того, по нажатию "F6" происходит переключение между редактором и программой просмотра для текущего файла. Клавиши "+" (перейти к следующему файлу) и "-" (перейти к предыдущему файлу) в окне просмотра вообще избавляют от необходимости выходить в меню файлов, если работа идёт в пределах одной директории.


Окно списка экранов

Желание 19. Хочется не запоминать какие файлы, и в каких директориях я редактировал или просматривал недавно, а иметь быстрый доступ к ним.
Исполнение. FAR хранит историю смены папок и историю просмотра и редактирования файлов (хранить историю в пределах одного сеанса или нет - определяется соответствующими опциями из диалога системных параметров). Для доступа к окну "История смены папок" используйте "Alt+F12" на панелях файлов или в окне консоли. Для доступа же к окну "История просмотра и редактирования" - "Alt+F11" на панелях файлов, в окне консоли, в окне редактора или просмотра.


Окно "История смены папок"



Окно "История просмотра и редактирования"

Желание 20. На своих NTFS дисках я использую жесткие (HardLink) и символические (SymLink) связи. Хочется иметь возможность в FAR работать со связями.
Исполнение. FAR умеет создавать как жёсткие, так и символические связи на локальных дисках, файловая система которых поддерживает эти возможности. Жёсткие связи реализованы в NTFS начиная с NT 4.0. Символьные связи, известные как "directory junctions", поддерживаются в NTFS, начиная с версии 5.0 (Windows 2000/XP). Для создания соответствующей связи используется сочетание "Alt+F6" для файла или папки. Кроме этого, FAR способен отображать количество жестких связей для каждого файла в отдельной колонке (по умолчанию - это последняя колонка в 9-м режиме панелей ("ЛевыйCtrl+9")), а также сортировать файлы по количеству жестких связей.


Создание связи

Желание 21. На моём компьютере FAR использует несколько человек, и каждый из них имеет персональные настройки. Я хочу, чтобы они могли запускать FAR сразу со своими настройками.
Исполнение. Наиболее логичным в этом случае будет использование многопользовательских возможностей FAR. При запуске с параметром командной строки "/u <username>" можно указать, от имени какого пользователя он запускается. Все персональные настройки сохраняются в отдельной соответствующей ветке реестра Windows.


Хранение персональных настроек пользователей в реестре Windows

Желание 22. Мне хочется выполнять из пользовательского меню команды самого FAR, а не только внешние программы.
Исполнение. FAR способен обрабатывать команды внешних модулей. В стандартную же поставку входит специальный плагин "FAR Commands", который, помимо прочего, обеспечивает работу с редактором, программой просмотра и макросами. Общий синтаксис команд внешних модулей для использования в командной строке (а также в пользовательском меню и ассоциациях файлов) выглядит так: "<префикс>:<команда> [<параметры>]". В данном случае, префиксом будет "far", командами соответственно: "view" - для программы просмотра, "edit" - для редактора, "macro" - для работы с макросами. Параметры рассмотрим в каждом конкретном случае. У команды "view" единственный параметр - имя файла, открываемого для просмотра (общий вид: "far:view ИмяФайла"). Команда "edit" имеет схожие параметры. Отличие состоит в том, что при желании можно указать строку или позицию, на которой необходимо открыть файл для редактирования (общий вид: "far:edit ИмяФайла", или "far:edit[строка] ИмяФайла", или "far:edit[строка,колонка] ИмяФайла", квадратные скобки обязательны). Команда "macro" используется со следующими параметрами: "load" - загружает макросы из реестра, "save" - сохраняет макросы в реестр, "post <sequence>" (<sequence> - последовательность названий клавиш в том виде как их хранит FAR в реестре, например "c d Space c : \ Enter") - выполнить команды соответствующие последовательности клавиш. Соответственно общий вид: "far:macro load", "far:macro save" и "far:macro post <sequence>". Для исполнения желания наиболее интересной является команда "far:macro post <sequence>", дающая возможность выполнить практически любое действие FAR. Кроме этого стоит обратить внимание на использование других плагинов из командной строки (подробную информация об этом вы найдёте в справке к конкретному плагину).


Создание команды меню для действия: "перейти на обоих панелях на диск "C:" и выйти из FAR"

Желание 23. Я хочу использовать в FAR контекстное меню Проводника.
Исполнение. Для работы с контекстным меню Проводника в стандартную поставку FAR входит плагин "EMenu". Он способен отображать текстовое и графическое контекстное меню для файлов и директорий под курсором, для выделенных файлов и/или директорий, а так же для дисков. Запускается EMenu двумя способами: из меню "Команды внешних модулей" ("F11") и с помощью префиксов командной строки (rclk: [файлы] - показать контекстное меню, rclk_txt: [файлы] - показать текстовое контекстное меню, rclk_gui: [файлы] - показать графическое контекстное меню, rclk_cmd: <команда> [файлы] - выполнить заданную команду, rclk_item: <название> [файлы] - выполнить заданный пункт меню). Для удобства вызова меню в файле "Far\Plugins\EMenu\Hotkey.reg" хранятся клавиатурные макрокоманды. После его импорта в системный реестр доступны будут следующие функции: "Apps" - показать текстовое меню, "Shift+Apps" - показать графическое меню, "Ctrl+Apps" - показать меню для выбора между текстовым и графическим меню.


Текстовое контекстное меню

Желание 24. Я хочу работать с группами файлов и папок, расположенных в различных местах моего диска так, как если бы они находились в одной директории.
Исполнение. Эти и другие возможности предоставляет стандартный плагин FAR "Временная панель". Вызвать её можно или из меню "Команды внешних модулей" (F11), или из панели дисков, или с помощью соответствующего префикса командной строки. Так же панель вызывается из окна "Поиск файла" для размещения на ней результатов поиска. По умолчанию настройки плагина позволяют использовать до десяти временных панелей. Для переключения между панелями служат клавиши "Alt+Shift+F12" (показать список всех временных панелей), и от "Alt+Shift+0" до "Alt+Shift+9" (непосредственное переключение). Сохранение и последующее возвращение к содержимому временной панели осуществляется посредством так называемых файл-списков (по умолчанию файлы "*.temp"). Клавиши "Alt+Shift+F2" создают файл список на основании содержания текущей временной панели. Загрузить сохранённые данные можно, нажав на файле-списке "Enter" или "Ctrl+PgDn".


Сохранение содержимого временной панели в файл

В заключение хотелось бы сказать, что рассмотренные советы охватывают далеко не все возможности FAR. Стоит обратить внимание на использование раскрасок файлов, ассоциаций, пользовательских меню. Среди незатронутых вопросов большой интерес представляют следующие плагины: "FTP клиент", "Просмотр сети", "Менеджер печати" и "Модуль работы с архивами". Помните, даже стандартная комплектация таит в себе массу возможностей по облегчению работы. Данная статья лишь пытается сказать об их наличии. Поиск же и реализация "исполнений желаний" всецело возлагается на энтузиазм и упорство пользователей.

Удобных настроек и быстрой работы вам. Всего доброго!