LINUX.ORG.RU

Пишу заготовку для аналога midnight commander


1

4

Python 2.x + C + PDCurses/ncursesw, поддержка UTF-8

Пока решил не делать модульную архитектуру приложения.
То есть, расширяемость за счет сторонних модулей добавлю позже.
Сейчас все функции зашиваю в один py-файл.
В ближайшее время планирую реализовать:
- панель для доступа к ftp-каталогу,
- git-каталогу,
- текстовый редактор.

Программа - кроссплатформенная. Будет распространяться как бинарник под Windows (py2exe), и в виде py-исходника под Linux. Лицензия - AGPLv3.

Приложение пишу чисто для себя, так как не хватает возможностей FAR manager, а файловым менеджером midnight commander стараюсь пользоваться по-минимуму. Любимые у меня - FAR manager, Norton commander 5.x и DOS Navigator.

Какие есть пожелания? Пишу всё это потихоньку, в свободное от работы время.

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

настроить цветовую гамму

Посмотрел в «Настройки : внешний вид». Нет там такого.
Неужели редактировать текстовый файл для этого надо?

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

Неужели редактировать текстовый файл для этого надо?

внезапно, да. Но можно взять одну из готовых тем

lazyklimm ★★★★★
()

есть пожелание:
1. Зделать нормальную авторизацию при подключении по ssh, что бы пароль не запрашивался снизу а выводился отдельным окошком, если я перепрошил устройство на IP mc не будет к нему подключатся (сделайте возможносьб редактирования known_hosts не прерывая сеанса), сделайте возможность сохранения подключений в виде списка (как в putty).
3.Избавьте от сообщений типа: команды не могут быть выполененны на удаленном хосте (счас точно не помню, но когда подключаешься по mc к хосту и делаешь mkdir folder он выдает что не может выполнить это там, а если через меню создать каталог то он его создает.)
4. Добавьте просмотр в виде HEX-кода.
5. Добавьте поддержку fgtk.
6.Добавьте режим а-ля :! в vim что бы при выводе результата была активна хотя бы одна панель.
7.Добавьте выбор точек монтирования для быстрого перехода (а-ля в фаре выбор дисков, что бы не лазить в /media)
8.Научите вашу прогу обениваться файлами по протоколам ymodem, хотелось бы спокойно лить файло через ком-порты на встраиваемые устройства.

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

Так вот под каким ником Дениска Попов на ЛОРе обитает!

Меня зовут Александр Лубягин.

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

Монтировать удаленные ФС с помощью fuse, а не своими велосипедами.

Под виндой будет работать только под 32-битной WinXP: http://www.rsdn.ru/forum/tools/2993239.1.aspx

А вообще, лишние абстракции - это зло. Убедился на собственном опыте.

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

4. Добавьте просмотр в виде HEX-кода.

Сделал вывод каталога файлов:
https://github.com/lubyagin/lubcom

Следующим шагом буду делать прокрутку списка имен файлов,
и далее - просмотрщик выбранного файла в виде hex-кода.

Думаю, сделать как в vim два режима: командный (by-default)
и режим редактирования (командной строки и т.п.).

pacify ★★★★★
() автор топика

1 - не нужно

2 - не взлетит

3 - портируй фар

4 - заведи девушку

drSchur ★★★
()

Оффтоп

Лучше бы аналог миранды написал, двухпанельники и так есть.

Deleted
()

- текстовый редактор

Зачем? Сделай интеграцию с emacs/vim/others. Вот как в mutt. Unix-way же.

urxvt ★★★★★
()

есть же мц, и под винду в том числе.зачем велосипедить то? лучше иди в мц патчи шли

snoopcat ★★★★★
()

Я не понимаю, почему все заладили уговаривать автора отказаться от проекта и слать патчи в mc. Например, если бы автор Spacefm, объективно лучшего гуй-файлового менеждера (форк pcmanfm, C/GTK) без remote places на сегодняшний день - поддался на такие уговоры - пользовались бы до сих пор дебильными тунарами, наутиласами и письманфм'ами.

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

без remote places на сегодняшний день

remote places это удалённые диски (в локальной сети и ftp)? Если да, то в наутилусе они есть.

пользовались бы до сих пор дебильными тунарами, наутиласами и письманфм'ами.

Ими и так пользуются.

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

то в наутилусе они есть.

я в курсе. В spacefm нет и не будет, такова позиция разработчика. Но уже возможно подключать remote places если монтировать их как devices и входить через соотв. панель.

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

Например, если бы автор Spacefm, объективно лучшего гуй-файлового гуй-файлового менеждера

начал бы пилить с нуля файловый менеджер - тот бы до сих нихрена бы не умел

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

письманфм

без кодовой базы этого «письманфм-а» spacefm не существовало бы

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

нет и не будет, такова позиция разработчика

История прямо как со вкладками (точнее с их отсутствием) в thunar.

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

А вообще, лишние абстракции - это зло. Убедился на собственном опыте.

Уже написанная и отлаженная VFS - это не лишняя абстракция. Более того, абстракции необходимы, чтобы иметь возможность прозрачно подменять реализацию интерфейса.

Почему все победители олимпиад по информатике, сильные математики, а также люди с безумной алгоритмической подготовкой в итоге оказываются говнокодерами, которые ни в какую ни хотят слышать про SRP, DIP и иже с ними?

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

...почему все заладили уговаривать автора отказаться...

Жалко чужих усилий вникуда. Есть масса более нужного, чем фм. Тот же фар портировать и то дело.

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

временами - системное, временами - общего (прикладного) плана

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

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

Я не вижу смысла копаться в чужом Си-коде без внятной проектной документации.

Ты реши для себя, что ты хочешь сделать. Очередное никому не нужное, кроме тебя, поделие или полезное что-то. При этом я не осуждаю, если первое - твой выбор. Просто называй вещи своими именами: «Парни, я хочу помаяться фигнёй, тупо для интереса».

Копаться в чужом коде - это опыт, между прочим. А ты как думал разрабатываются проекты? Насчёт документации - вот взял бы и написал. И другим было бы легче влиться в проект. И сам бы вник в проблему, и другим польза.

Тем паче - разработчики на самом ЛОРе есть. Если надо - пояснят, что и как. pacify, у тебя просто идеальные условия, чтобы сделать что-то полезное.

К сожалению, сдаётся мне, что ты как (да простят мне модераторы) говно в проруби. Тут поделал, там поделал. А толку ноль. Критикую во благо - если это не так, я рад.

anonymous
()

а файловым менеджером midnight commander стараюсь пользоваться по-минимуму

Почему?

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

есть пожелание: 1. Зделать нормальную авторизацию при подключении по ssh, что бы пароль не запрашивался снизу а выводился отдельным окошком, если я перепрошил устройство на IP mc не будет к нему подключатся (сделайте возможносьб редактирования known_hosts не прерывая сеанса), сделайте возможность сохранения подключений в виде списка (как в putty). 3.Избавьте от сообщений типа: команды не могут быть выполененны на удаленном хосте (счас точно не помню, но когда подключаешься по mc к хосту и делаешь mkdir folder он выдает что не может выполнить это там, а если через меню создать каталог то он его создает.) 4. Добавьте просмотр в виде HEX-кода. 5. Добавьте поддержку fgtk. 6.Добавьте режим а-ля :! в vim что бы при выводе результата была активна хотя бы одна панель. 7.Добавьте выбор точек монтирования для быстрого перехода (а-ля в фаре выбор дисков, что бы не лазить в /media) 8.Научите вашу прогу обениваться файлами по протоколам ymodem, хотелось бы спокойно лить файло через ком-порты на встраиваемые устройства.

Ох, все бы это в mc...

observer ★★★
()

Python 2.x + C + PDCurses/ncursesw, поддержка UTF-8

Я так и не собрался. Горячо поддерживаю :)

Только модульность + fuse, таки, обязательно!

KRoN73 ★★★★★
()

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

Поговорите же с Slavaz. Он лучше других расскажет в чем изначально ошибался, как лучше сделать и какие подводные камни вас ждут.

observer ★★★
()

Кстати, раз уж заговорили в файловых менеджерах в Linux. Что он позволяет сделать быстро (!), чего не позволяет shell? А если более прямолинейно: 146% сценариев работы в FM уже покрывается шеллом.

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

Что он позволяет сделать быстро (!), чего не позволяет shell?

1. Отмечаешь файлы *, копируешь/перемещаешь/удаляешь одной кнопкой.

2. Не надо постоянно вводить ls.

3. Удобная работа с FTP, SSH..

4. Весь необходимый функционал на горячих клавишах (+ можно перенастроить).

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

Отмечаешь файлы *

Insert-ом имел в виду, хотя * тоже пользую иногда.

observer ★★★
()

Есть еще одно пожелание выделение файлов для копирования/удаления в mc возможно только в одной директории, хотелось бы иметь возможность делать это не зависимо от того по каким директориям разбросаны файлы, но естественно как то показывать пользователю что он навыделял (может ставить литеру к директориям выше в которых уже были выделенны файлы)

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

Тот же фар портировать и то дело.

У любого тут пупок развяжется. FAR Team абсолютно не заинтересована в этом, а без поддержки со стороны девелоперов — затея a priori гиблая.

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

Жалко чужих усилий вникуда.

в никуда? автор конкретно огласил куда именно. это всё равно, что говорить подобное:

жалко усилий на awesome/xmonad, есть ведь dwm, шлите патчи!!1

Тот же фар портировать

что вам еще спортировать с уинды? каково думаете портировать что-либо чужое, если есть желание, знания и возможность создать нечто новое. Как вообще новый софт пишется? )

science ★★☆
()

Почитал я вас. Все так хотят FAR и даже Miranda под линуксом. Но жуют кактус mc. Странные вы, линуксоиды.

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

Меня и ванильный mc устраивает... Да и вообще чаще пользуюсь krusader или dolphin. Или консолью.. чистой (rm,cp,mv,tar,...)

BattleCoder ★★★★★
()

Python 2.x + C + PDCurses/ncursesw, поддержка UTF-8

facepalm, а почему еще не добавить perl, lisp, fortran, cobol, haskell? почему только питон и С ?

накер мне в системе нужен питон, я тогда mc поставлю без зависимостей

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

Без обид, если что - просто 90% затей «проще написать свой, чем копаться в этом» именно так и заканчиваются.

90% - это сильно заниженная цифра 8).

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

Но нужно лишь делать по маленьким кусочкам и сразу видеть результат, радоватся ему и делать дальше с удвоенной силой. А многие пишет одной большой глыбой, в конце концов запутиваются/устают а там еще и конца и края до чего то рабочего не видно. Или потом дебажат эту глыбу 2 мес если осилили написать.

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

fortran, cobol, haskell?

Фейспальм, никто не засталяет оставлять либы: можно подождать бинарей или установить-собрать-«удалить сборочную среду»

perl

А что за дистрибутив без perl, себе хочу такой?

lisp

ну может только это в кассу, впрочем был (есть?) пакетный менеджер для арча - образ вкомпилен, разумеется размер немаленький (под 60 метров)

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

есть желание

Хотеть не вредно.

создать нечто новое

Ну разве не бугагец?

Как вообще новый софт пишется?

Новый софт начинается с новой идеи

Впрочем, успехов ТС.

drSchur ★★★
()

Какие есть пожелания?

Писать на Си.

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

Эта программа нужна _мне_.

чтобы не было скучно

А, это меняет дело. Извини камрад, удачи.

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