Re: Navigate directories with MC
- From: Paul Westell <pwestell shawlink ca>
- To: gfs1989 listas gmx net, mc mailing list <mc gnome org>
- Subject: Re: Navigate directories with MC
- Date: Fri, 8 Feb 2019 15:38:22 -0800
Gilberto F da Silva via mc wrote on 02/08/2019 09:33 AM:
Since when I started using Linux around the 2000s I use mc. I can
not use Linux if mc is not installed on it. I'm having a hard time
using mc in Debian 9.x. I browse the directories and when I leave
the mc I go back to the directory where I called mc. In Slackware,
mc behaves differently. When I leave the mc I stay in the last
visited directory.
Slackware has two scripts that accomplish the directory change. Two versions
are supplied for each, for Bash and for C-Shell.
Permissions should be 755.
Both are written with no shebang and have a trailing line. I'm not sure if
Debian still defaults to something other than Bash, you may have to add a
shebang calling Bash (#! /bin/bash) to make these work on a Debian system.
The first is 'mc.sh' which located in "/etc/profile.d" This directory contains
the Slackware login scripts. Debian may place these scripts somewhere else.
This simply defines an alias, I find it convenient to add mc switches here
rather than the command line.
The second is 'mc-wrapper.sh' located in "/usr/share/mc/bin/"
This is how mc is set to remember the new directory on exit. MC used to
remember which pane was active on exit, but this capacity was removed for some
reason. MC now opens always with the left pane active, swapping panes if the
right pane was active on exit.
------- BEGIN '/etc/profile.d/mc.sh' -------
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'
------- END -------
------- BEGIN "mc.sh" with my switches -------
alias mc='. /usr/share/mc/bin/mc-wrapper.sh -d -X'
------- END -------
------- BEGIN '/usr/share/mc/bin/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
unset MC_USER
------- END -------
________________________________________________
Paul
... on an island, somewhere in the Pacific ...
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]