LINUX.ORG.RU

«Деодар» - новая рабочая среда для Linux

 деодар


1

2

«Деодар» (скриншот) - классическая двухпанельная рабочая среда для Linux, автор которой вдохновлялся Norton Commander, Volkov Commander, Dos Navigator, Far Manager.

Распространяется по антилицензии Unlicense.org. Безвозмездно, то есть даром. Основан на Node.js, написан на JavaScript с добавлением C++. Состоит из двух панелей, строки ввода и консоли, совместимой с color-xterm. Всё это удобно объединено друг с другом. Есть текстовый редактор и просмотрщик. Редактор «заточен» под правку исходных кодов. Интерфейс пользователя полностью русскоязычный.

Рабочая среда легко настраиваемая и расширяемая (за счёт того, что большая часть кода написана на JavaScript). Возможно подключение расширений npm (существует более 50,000 расширений).

Деодар опирается на библиотеку Intervision, напоминающую TurboVision. Поддерживается пользовательский ввод-вывод как знакового отображения, так и точечного. Не возникает проблем с Юникодом.

Исходный код и инструкция по сборке размещены на GitHub.

Скриншоты:

  • Быстрый поиск;
  • Выделение файлов;
  • Отображение файлов, чьи имена начинаются с точки (переключается нажатием Control-точка);
  • Виртуальный корень. Панели Деодара имеют способность считать некоторые каталоги дисками и не отображать две точки для перехода в родительский каталог, что помогает сосредоточиться на работе в данном каталоге;
  • Количество столбцов можно увеличить или уменьшить, нажимая Control-1 и Control-2;
  • Диалог начала переноса файлов;
  • Копирование файлов. Есть анимация хода выполнения. Пока что, настроек при копировании нет, все файлы заменяют уже существующие одноимённые, копируются все подкаталоги;
  • Удаление файлов и папок;
  • Простое руководство. Вы узнаете больше горячих клавиш, заглянув в norton.js и edit.js;
  • Окно вывода, отображает результат исполнения команд. На время исполнения команд строка ввода команд прячется. Зато, само окно вывода - это полноценная консоль, совместимая с xterm;
  • Поиск файлов по вхождению подстроки в название;
  • Поиск в содержимом файлов по вхождению подстроки. Найденный файл можно сразу редактировать нажатием F4;
  • Меню дисков. Но их в Линуксе нет, зато есть inodes, точки монтирования и прочая, поэтому привычная функция названа самым общим названием «Скачок». Изменены привычные горячие клавиши для вызова этого окошка, издревле это были Alt-F1 и Alt-F2, в Деодаре они заменены на F1 и F2. Такой радикальный шаг объясняется тем, что эта возможность используется очень часто;
  • Правка скачка. Список того, куда можно «скакнуть», настраивается самим пользователем, это обычный JavaScript, даже не JSON. Можно не просто ввести направление, а написать функцию, выполняющую любые действия, например, монтирующую диск перед скачком;
  • Правка нового файла начинается нажатием Shift-F4;
  • Правка исходного кода на JavaScript;
  • Светлая тема редактора;
  • Тёмная тема редактора;
  • Shift-Control-C помечает выделенные строки, как однострочные заметки (комментарии). Shift-Control-X выполняет обратное действие;
  • Поиск в режиме правки. Обратите внимание, что выделенный текст сразу помечается по всему экрану, можно, например, выделить имя переменной и сразу увидеть, где и сколько раз она встречается;
  • Постоянные метки: если нажать Control-M, выделенный текст становится постоянной меткой, можно просматривать и редактировать, а метка будет везде подсвечена;
  • bash, запущенный в Деодаре. Можно нажатием Control-O переключаться между bash и панелями, а в панелях править какой-нибудь файл;
  • Можно запустить ncurses-приложение, например Midnight Commander;
  • Видно, как соединены в единое целое панели и окно вывода. Эта важнейшая способность Деодара идейно наследуется от ещё от самого «Нортона» — системная консоль плотно и удобно интегрирована с остальными функциями;
  • Запущеное в консоли приложение можно остановить, нажав Control-C. Чтобы запустить приложение в фоновом режиме, к его имени следует добавить амперсанд;
  • Пример запуска sudo, можно оставить одну панель, очевидно, что терминал поддерживает цвета. Окно терминала имеет Scroll-Back, буфер истории, скроллинг колесом мышки и горячими клавишами Control-PageUp, Control-PageDown, Control-Home;
  • Вставка текста. Буфер обмена в консоли связан с системным буфером обмена, можно выделить URL на сайте GitHub и, нажав Control-Insert, получить данный URL в строке ввода команд;
  • Можно выделять текст в окне вывода, это делается правой кнопкой мышки.

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

anonymous

Проверено: mono ()
Последнее исправление: mono (всего исправлений: 1)

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

Не, не так. Зачем был нужен VC, когда был NC? И уже потом — зачем был нужен DN, когда был VC? :)

Волков умел больше, чем нортон и умещался на загрузочной дискете без проблем.
DN, если память мне не изменяет, тоже можно было уместить на загрузочной дискете.

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

Волков умел больше, чем нортон

Скажем так, их возможности заметно пересекались, но у каждого было что-то, что не умел конкурент.

DN, если память мне не изменяет, тоже можно было уместить на загрузочной дискете

Все три они без дополнительных плюшек занимали весьма небольшую часть дискетты :D NC 1.0 весил 36 кбайт ;)

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

Если он будет легче и проще mc, то нужно.

Чтоб стать легче ему еще PostgreSQL надо под капот. Тогда точно станет легче.

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

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

DN полный не умещался (но легко кастрировался). Он занимал 1.5 Mb. Но у него можно было открыть 15 файлов в редакторе. Редактор умел вертикальные блоки и как уже сказали резиновые таблицы. Были макросы вставки текста и в каталоге можно было положить меню которое заменяло стандартное F2. А еще у него были TurboVision стили оформления. Вообще даже Far в этом плане далек от DN.

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

NC 1.0 весил 36 кбайт ;)

Это 1.0 Народ обычно вспоминает 5.2 - то еще гавно было. ДН в сотни раз лучше был. А еще у ДН были свои плагины для архиваторов которые без вызова архиватора очень шустро показывал содержимое

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

Это 1.0 Народ обычно вспоминает 5.2 - то еще гавно было.

ну подумаешь позволял рекурсивно копировать директорию в саму себя.

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

И без расширителя памяти типа himem и emm386 (причем обоих) жрал столько, что кроме него вообще ничего запустить было невозможно

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

Зачем в ДОСе больше тысячи файлов в каталоге?

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

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

DN полный не умещался (но легко кастрировался). Он занимал 1.5 Mb.

А что по вашему означает слово «можно»?

andreyu ★★★★★
()

Основан на технологиях Node.js, XLib, OpenGL, Freetype.

Я так понимаю, без Х-ов он не работает, но ГУИ у него, типа, нет. Вопрос, для чего он нужен? Т.е. если делать консольный файловый менеджер, вдохновленный NC, VC и т.п. то он должен работать в консоли без ГУИ, а если ему нужна ГУИ, то можно уже навешать мышетыкательных кнопочек, няшных темок и т.п. (как в тотал коммандер, скажем). А так, получилось не вдохновление, а пародия какая-то...

c0smonaut
()

Кстати, DN кто-то таки портировал под Linux. NDN вроде называется. Правда, насколько я помню, пациент скорее мёртв, чем жив, но тем не менее...

Magister2k7
()
TFindWindow.can.title = function() {
  if (this.working) return 'Найдено: ' + this.matched + ' в ' + this.scanned + ' просмотреных'
  return 'Поиск файлов'
}

Мои глазаааааааааа...

Но если делал школьник, то круто, да.

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

Автор на хабре в комментах отжигает.

Вот из-за таких потом яваскрипт и не любят :)

Vit ★★★★★
()

Не пойму, этот файловый менеджер умеет поднимать панели вверх, освобождая больше строк для консоли? Это функция - аналог Ctrl-ArrowUp в Far. Этого всегда не хватало в MC. Если умеет, то зачет.

rimsleur
()

Прикольно, надо будет заценить такую оригинальщину. Интересно, сколько времени у него ушло на разработку.

Глянул предыдущую статью этого разработчика:

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

Оттуда же становится понятно, почему он выбрал JS.

dadd ★★★
()

Автор пытается обосновать выбор языка его популярностью, но при этом вместо оффтопика ведёт разработку для маргинального линукса. Похоже, двоемыслие начинает выползать из политоты и на другие области.

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

Все уже конечно высказались, но я дополню. на загрузочных rescue дискетах, когда грузишься на упоротом компе и там памяти мало и невозможно использовать emm386, то nc просто не работал. а vc работал и помогал спасти инфу/восстановить комп, например. не говоря уж том что другие озвучили.

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

Вся соль VC в том что это ОДИН .com файл, 63.5 Kb

Смотрю все забыли еще об одной фиче vc, убивать резидентники запущенные из под него. Этого не умел ни один фм.

anc ★★★★★
()
16 июня 2014 г.
Ответ на: комментарий от andreyu

doszip крутая штука. несколько десятков килобайт, zip инклюдед, до сих пор развивается. использую под фридосом и счастлив. :)

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