LINUX.ORG.RU
ФорумTalks

mc, частично починена перекодировка файлов


0

0

Не умею я новости писать, да и не тянет ИМХО это на новость - многое из задуманного пока не сделано. Короче, линк, там расписано и разжёвано:

http://forum.redhat-club.org/viewtopic.php?pid=34768#p34768

ЗЫ. Кому хочется скора - оформите новостью.

★★★★★

Да брось. mc не нужен.

Серьёзно. Эта программа, по моему скромному мнению, умерла вместе с Досом. Кому надо было с Нортона Коммандера перейти на *nix уже давно умерли. Остальные или используют консоль, ну и там конквареры всякие.

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

>Остальные или используют консоль

почему у тебя консоль не умерла вместе с досом?

по этой логике ты сейчас пользуешься неким мета-объектноориентированным многомерным кластерным менеджером коллекций структур блоков данных.

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

Ну, как минимум, мне нужен. Я вообще-то думал подправить mc и юзать его самолично. Но как-то подняли тему на ЛОРе - "кто чем сейчас занимается". Я возьми и ляпни: "колупаю mc" :)
И ещё два человека попросили известить их, когда закончу. Извещаю.
Если ещё кому-то пригодится - буду рад. Серьёзно.

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

Тогда включите еще и мой патчик, который позволяет переключать режимы панелей по хоткеям:
Meta + . - включает/выключает отображение файлов начинающихся с точки.
Meta + , - переключает режим расположения панелей (горизонтальное / вертикальное).

http://www.ugolnik.info/?p=578

andreyu ★★★★★
()

пользуюсь исключительно mc, но не вкурсе про проблему с кодировкой...

зы - лучше пофиксите кто-нить наконец, анноющую багу с:

1.терминал занят(команда уже выплняется)
2.после Ctrl+О меняется текущая панель

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

О! Точно. Займусь на досуге. Насколько я представляю. там нужно распознавать, выполняется ли что в фоне за панелями, или просто строка ввода непустая. Если непустая или выплняется, то скрывать нижнюю строку ввода команд с отображёнными панелями... как-то так. Поколупаю, короче.

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

> Тогда включите еще и мой патчик, который позволяет переключать режимы панелей по хоткеям:

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

К опу: а что, кто-то еще пользует mcedit?

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

> зы - лучше пофиксите кто-нить наконец, анноющую багу с:

фикси ее каждый раз сам еще одним нажатием энтера. ;) Хотя согласен, доставало когда-то, пока не привык.

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

> а что, кто-то еще пользует mcedit?

я ещё две недели назад активно использовал, сейчас больше вимом пользуюсь, а mcedit — только для мелких правок.

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

mc и mcedit пользуюсь постоянно. Тут больше рассуждают что тру а что не тру - лично мне все равно кто и что думает - мне они нужны.

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

>ИМХО, mc проще заново переписать с нуля.

Идея, может, и неплоха, но вот кто бы взялся?

Deleted
()

Из файловых менеджеров используюю только mc. Так что однозначно нужно. А указанные баги действительно надоели.

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

> О! Точно. Займусь на досуге. Насколько я представляю. там нужно распознавать, выполняется ли что в фоне за панелями, или просто строка ввода непустая. Если непустая или выплняется, то скрывать нижнюю строку ввода команд с отображёнными панелями... как-то так. Поколупаю, короче.

Если скрыть панель (Ctrl + O), ввести строку (или хоть один символ), удалить его, отобразить панель (Ctrk + O), то MC будет ругаться на уже исполняемую команду.

Я в эту сторону не смотрел, но думаю, что фикс должен быть простым.

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

> Добавлять хоткеи патчами? Ну-ну, это круто. Лучше бы кто-нибудь написал патч, повзоляющий выставлять произвольные хоткеи на любое доступное действие.

Так кто мешает - займитесь. Мне менять хоткеи не нужно, меня устраивают те, которые я привел.

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

> Дежавю :) Где-то это я уже видел :)))) ИМХО, mc проще заново переписать с нуля.

Да, глядя на код, первые пару часов просто офигеваешь - как оно вообще работает?

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

> по теме, использую mc ооочень редко, mcedit разучился пользоваться, пуки привыкли к виму

Простите, кто привык? ;)

p.s. Чаще использую VIM, но и от mcedit не отказываюсь.

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

то с чем ты в конке будешь возится полчаса, в mc можно сделать за минуту.

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

>2.после Ctrl+О меняется текущая панель 

* Tue Sep  2 2008 Jindrich Novy <jnovy@redhat.com> 4.6.2-6.pre1
- do not change directory in panel to subshell directory
  when switched back from subshell (#460633)

брать понятно откуда

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

C фарой ситуация совсем хреновая - он на WinAPI. Но в принципе разруливаемая. Время на это надо. А его не хватает. Особенно, когда есть основная работа :)

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

Я в свое время смотрел в эту сторону, потом плюнул :) Там засада в том, что шелл - это не уже не совсем mc. А по сему есть мнение, что реализовывать подобные вещи надо либо так, либо как это делается в DOS/Windows/OS2 менеджерах... Может быть я не прав, если есть более инетересные идеи, с удовольствием выслушаю.

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

> Лучше far портировать.

Нафиг не надо. В MC достаточно очень немного добавить/поправить, чтобы он стал функционально _ничем_ не хуже Far. А значит, он будет лучше. Far полон костылей для сами-знаете-какой-недо-ОС.

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

Аноним, спасибо и поклон за наводку :) . Я ступил - взял сырцы не от 10-й, а от 8-й Федорки. Сейчас в репозитории в основе лежит mc от 10-й федорки + патчи из src.rpm + туча других патчей. Только-только привёл в божеский вид.

2Алл:

http://people.redhat-club.org/slavaz

Там trac. Анонимусам можно создавать тикеты, в связи с чем просьба: не срите там, пожалуйста. Плагин удаления тикетов стоит, конечно, но не хочется проснуться утром и увидеть несколько тысяч тикетов высера...

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

> Лучше far портировать.

Ну портируй. Исходники под модифицированной лицензией BSD открыты. Удачи. Правда боюсь, одной удачи тут будет совсем мало. Разрабы даже юникод к нему прикрутить никак не могут, а ты портировать собрался. ;)

Алсо, нахер он никому не нужен под линуксом. Как уже и под вендой, по сути.

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

>* Tue Sep 2 2008 Jindrich Novy <jnovy@redhat.com> 4.6.2-6.pre1 - do not change directory in panel to subshell directory when switched back from subshell (#460633)

>брать понятно откуда

надо чтоб оно вообще эту хрень не писало про то что команда уже выполняется. тогда и директорию после Control-O исправлять не надо.

и ведь кривости это СТОЛЬКО лет ... насколько я помню в mc-mp такого не было.

tommy ★★★★★
()

а как комментировать в тикете?

alex_custov ★★★★★
()

>>3) Какой именно поиск? При редактировании или по файловой ситеме?

поиск по файловой системе. Сделать нормальным :) С учётом регистра, с опцией отключающей регэкспы и т.д. Как минимум, как в Фаре.

>>4) динамическое редактирование списка что по F2 - его можно редактировать. В Red Hat?-подобных файл-меню находится в /etc/mc/mc.menu (~/.mc/menu - у пользователя).

это статическое редактирование. Хотелось бы типа как редакторе - нажал F2 и можно удалять элементы из списка по Del, добавлять по Ins и редактировать по F4.

>>6) Сам давно думал такое же сделать. Короче, повесить на F3 функцию "Размеры каталогов" при условии, что даванули клавишу на каталоге.

Да. И сделать это опцией в настройках, чтобы можно было поменять на старое поведение, кому это нужно.

7) да, ещё добавить в синтаксис подсветки новые правила. Чтобы определял .moc файлы как cpp, и хотя бы разукрашивал актуальные макросы для Qt типа Q_OBJECT. Что-то типа

keyword whole Q_OBJECT brightred
keyword whole Q_PROPERTY brightred
keyword whole Q_CLASSINFO brightred

keyword whole signals brightred
keyword whole slots brightred

keyword whole SIGNAL brightred
keyword whole SLOT brightred

keyword whole foreach yellow

--

С меня как минимум 5-литровая бочка пива, я серьёзно говорю.

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

Прошу прощения, TIKET_CREATE был для анонимуса, TICKET_APPEND - нет. Уже можно комментарить. :)

QT я абсолютно не знаю, поэтому кроме как ждать соответствующего файла-расцветки ничего не остаётся...

Поиск фо файловой системе по имени файла - поддерживаются
[Ff]ile.?.*.ext

Как оно в Far - я не знаю.

динамическое редактирование списка - нужно время, чтобы реализовать. Будет - сделаю. Обещать ничего не буду, ибо начиналось-то всё с моего копупания всего-лишь на предмет перекодировки в редактировании/просмотре. Цель достигнута, всё остальное уже буду доделывать, ставя новые цели.

Ещё раз прошу прощения за невозможность комментирования тикетов и прошу: пишите там пожелания - комментарить можно. :)

BTW, если реализую - будет возможность проставить мне пиво =) Я думаю посетить LVEE'2009... :)



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

1) по поводу Qt - можно добавить хотя бы то что я написал в файл расцветки для C++. Там Q_* макросов вообще побольше, но это хотя бы самое необходимое. По поводу .moc файлов - это просто ещё одна маска в Syntax:

file ..\*\\.([hC]|CC|moc|cxx|cc|cpp|CPP|CXX|hxx|H|h\.in)$ C/C\+\+\sProgram
include cxx.syntax

Сюда же добавлены .H-ки из FLTK (большая 'H')

2) да, забыл что для C/C++ очень неплохо было бы добавить расширенные правила для подсветки чисел из JS (js.syntax). Там они где-то со строчки 100 начинаются. Просто скопировать их в cxx.syntax и c.syntax

3) поиск хорошо бы сделать нерекурсивным (галочка). С поддержкой размеров, дат изменений, содержимого без учёта регистра (галочка), содержимого НЕ в виде регэкспа (галочка) и т.д. Для примера - KFind.

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

Подсветка синтаксиса - оформлю сам тикет

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

Это есть

> С поддержкой размеров, дат изменений

Этого нету... тикет?

> содержимого без учёта регистра (галочка), содержимого НЕ в виде регэкспа (галочка)


Это есть.

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

>Да брось. mc не нужен.

очень тяжело бороться с условными рефлексами. Да и стоит ли?

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

Блин, ты настоящий Ъ :) По ссылке не ходил... ;)

Вместе с патчем для QT и подсветки moc и H файлов я добавил и подсветку чисел.

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

порядок насколько я знаю меняется просто именем патча, которое начинается с числа (так же как и в init scripts).

Я тут скачал mc из Interpid'a - да, ты знаешь поиск тут наконец появился нормальный, плюс куча патчей, редактирование файлов тут работает пучком. Может стоит взять эту ветку за основную? Добавить туда подсветку, патч для шелла, свободное место на разделе и др.

Если несложно, пришли мне отдельные патчи для оригинальной версии 4.6.1, которые делают все вышеописанные изменения, я попробую наложить их на текущую версию. alex.custov на гмыле.ком.

P.S. кстатит Alt+O тут работает также как в твоей версии, видимо кто-то сделал это теперь так по умолчанию, а Fedora или Ubuntu синхронизировали эти изменения. Так что тикет можно закрывать.

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

Раз уж пошла такая пьянка, решил поковырять сборку из Interpid'a. Там, как я уже говорил, много чего починено благодаря Debian'у.

Что добавляет патч:

1) Порт починеного шелла
2) Порт Alt+'.'
3) Порт Alt+','
4) Новые правила для подсветки Qt макросов
5) Новые маски для подсветки синтаксиса (H, moc, hpp)
6) Подсветка числовых литералов в C/C++ как в JS
7) Порт размера точки монтирования
8) Alt+O <=> Alt+I поменяны обратно
9) Расцветка файлов, оригинальные патчи
10) Убраны *~ файлы из дебиановских патчей
11) Подсветка CSS (включая Qt) и AWK (из mc-mp)
12) MC_DATADIR по умолчанию равен DATADIR, а не SYSCONFDIR. Это избавит от сегфолтов, когда переменная окружения MC_DATADIR не установлена.

Установка:

1) Качаем mc и его патч http://packages.ubuntu.com/intrepid/mc
2) Распаковываем
3) Накладываем оригинальный патч
4) Качаем патч http://depositfiles.com/files/8hp6dp42v
5) Накладываем этот патч
6) Собираем как обычно через dpkg-buildpackage -b -rfakeroot

Скрин: http://img235.imageshack.us/img235/3457/mceh2.png

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

Алекс, большое спасибо за информацию. Патч dnotify пока сыроват, но потом, когда закончу собирать до кучи все патчи, примусь за стабилизацию. Присоединиться не желаешь? :)

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