A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

Midnight Commander, леко носталгично

Още от времето на DOS любима патерица ми беше една програма XTree. Оказа се, че я има и за Unix. Покрай XTree-то често използвах и Norton Commander (нали знаете лафа: “Гледам аз: отдясно диск “C”, и отляво диск “C”. И за какво ли са ми два еднакви?! Я, да взема да изтрия единият….) не защото ми харесваше, ами защото колегите не излизаха от него по цял ден и просто нямах избор – трябваше да свиквам. Всъщност, подобни програми в последствие се превръщат от патерици в инвалидни колични, било заради удобството, което предлагат, било заради чисто човешкият мързал да се използва нещо друго. Затова и аз, често използвам в конзола при x-образните ОС Midnight Commander-a – свободният проект, почти пълен аналог на досовският си дядо.Традиционно Midnight Commander-a в RedHat базираните ОС може да се използва за бърза смяна между директориите – особено, ако в единият панел покажете дървото на директориите. Незнайно защо, тази функция при Debian клоновете е точно обратното – там mc-то се връща точно оттам, откъдето е извикано. Това поведение, лично мен не ми допада, затова на всяка (Debian like) машина на която работя правя следното:

vi ~/.bashsrc

и добавям в краят на файла (или в секция alias)

alias mc=’. /usr/share/mc/bin/mc-wrapper.sh’ или

или за по-мързеливите, всичко на един ред:

echo alias mc=’. /usr/share/mc/bin/mc-wrapper.sh’ >> ~/.bashrc

За тази “магия” стои параметърът “-P” на mc-то за запомняне на текущата директория във външен файл. Ето и какво точно прави тази опаковка mc-wrapper.sh:

MC_USER=`id | sed ‘s/[^(]*(//;s/).*//’`
MC_PWD_FILE=”${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$”
/usr/bin/mc -P “$MC_PWD_FILE” “$@”
if test -r “$MC_PWD_FILE”; then
MC_PWD=”`cat $MC_PWD_FILE`”
if test -n “$MC_PWD” && test -d “$MC_PWD”; then
cd “$MC_PWD”
fi
unset MC_PWD
fi
rm -f “$MC_PWD_FILE”
unset MC_PWD_FILE

ВНИМАВАЙТЕ, ако правите Copy&Paste от екраните по-горе. Темите на шрифтовете понякога сменят апострофи и кавички или обратен апостроф, с каквото те си решат.

Допълнителни ресурси: User Guide и FAQ.

9 comments to Midnight Commander, леко носталгично

  • Пакетът в Дебиан отговаря на стандартното поведение на `mc’, както са решили разработчиците му. Опцията `-P’ си е опция все пак, както и нестандартния начин за използването й. В README.Debian това е обяснено:

    Because of some issues a method to stay in the last working directory after exit has changed with 4.6.0. See the description of the -P option in the Options section of the manual and new wrapper scripts in /usr/share/mc/bin/.

    Като си компилираш `mc’ от изходния код без кръпки, прилагани от дистрибуцията, ще забележиш, че поведението на програмата (поне в това отношение) е същото, както в Дебиан.

    Навярно от Федора са сметнали, че това е нещо полезно и заслужава да бъде активирано по подразбиране. Аз лично никога не съм ползвал тази функционалност и никога не ми е трябвало подобно нещо (ползвам mc вече 12 години, макар да не съм напреднал потребител).

    Така че по-правилният въпрос е “Незнайно защо в дистрибуциите, базирани на Ред Хат, mc не се държи стандартно.”

  • Гери

    Хе, колко ме радва тази статия! 😀
    В момента използвам Slackware и Ubuntu (dapper), и при двете не мога да работя без Midnight Commander. За мен е изключително ценен и не само за бързата смяна на директории, но и за копиране и местене, улеснява ме с правенето и редактиране на symlinks, а понеже не ми се запаметяват команди (едно ли е, че да го запомниш :), F9 и после chmod и chown също много ми помагат.

  • @Явор: Ей, не можа да се удържиш от малко пропаганда! Удари 2-3 камъка по Fedora. 🙂 Прав си за забележката. Все пак, съгласи се, че моето изречение е съвсем правилно: аз не знаех, че “нормалното” поведение на mc е да не сменя директориите, просто защото почти винаги съм го ползвал от пакет, а не чрез компилиране.

    @Гери: има и още нещо, което не е много ясно и затруднява потребителите. mc не работи с функционалните клавиши в gnome-terminal, затова аз използвам ESC последователностите. Примерно с F10 влизаш е менюто на терминала, което е гадно. Затова натискаш ESC+0 (нула) и ефекта е същият. Аналогично, ESC+1 e F1 и т.н. Със сигурност това може да се настрои от някъде, но поне за момента ме мързи да изследвам.

  • Не знам откъде си останал с това впечатление. Отдавна спрях да препоръчвам Дебиан и ако на някой му се налага да избира между двете, бих го посъветвал да се спре на Федора (защото е на път да стане свободна дистрибуция).

  • @Гери: Много удобни са и комбинациите:
    Ctrl+X и C – chmod
    Ctrl+X и O – chown
    Ctrl+X и S – създаване на symlink
    Ctrl+X+S – редактиране на symlink
    Alt+S – бързо търсене
    Shift+F5 – копиране с редактиране на името
    Shift+F6 – преместване с редактиране на името

    Аз вече трудно ползвам MC без тия и още няколко подобни клавиши 😉

    @Явор: Защо трябва в нещо толкова конкретно като usability на MC да намесваме обвиненията към Дебиан? Аз мога да кажа точно обратното и пак няма да сме по темата на Владо. Нека не говорим за Debian vs FSF, най-малкото Владо е федораджия и не го касае 😉

  • Мама му стара на този шиб*** сек. код. За трети път пиша тука в опита си да успея. Направо съм бесен.

    За това този път без обяснения:
    gnome-terminal -> Edit -> Keyboard shortcuts … махаш белязките на опциите:
    – Disable all menu access keys
    – Disable menu shortcut key

    После на mc -то можеш и в гноме -то да си използваш F1-F10 … особено F8 …

    В случай, че така ти е по – удобно … аз пиря Старопрамен 🙂

  • Опааа,
    не махаш, а слагаш :-)…

  • Слагаш очила ли?! 🙂 По-просто нещо от тоя security code няма!
    Както и да е… мерси за подсказката.

  • Благодаря за статията.
    1 час рових из нета, докато реших да потърся и страници на български и решението излезе на първо мясот 🙂

    (странно решение на разработчиците да не направят смяната на директории по подразбиране. Така се губи поне 60% от функционалността на mc )

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>