diff options
| author | Raymaekers Luca <raymaekers.luca@gmail.com> | 2023-10-19 11:22:31 +0200 | 
|---|---|---|
| committer | Raymaekers Luca <raymaekers.luca@gmail.com> | 2023-10-19 11:22:31 +0200 | 
| commit | 067b07eb24262b34c00fe7be786cbdcfcd6383c6 (patch) | |
| tree | 6bb3d51de3cccd6a12a223075436cf484cbe5ac6 /bin/guiscripts/dmfm | |
| parent | 9928d64cd712a25634481e81d67d2537ccdaf4df (diff) | |
refactor
Diffstat (limited to 'bin/guiscripts/dmfm')
| -rwxr-xr-x | bin/guiscripts/dmfm | 28 | 
1 files changed, 15 insertions, 13 deletions
diff --git a/bin/guiscripts/dmfm b/bin/guiscripts/dmfm index 969c111..d1dd8b8 100755 --- a/bin/guiscripts/dmfm +++ b/bin/guiscripts/dmfm @@ -1,17 +1,19 @@  #!/bin/sh -file=1 -while [ "$file" ]; do -	file=$(ls -1 --group-directories-first | dmenu -i -l 8 -g 1 -p "$(basename $(pwd)):") -	if [ -e "$file" ]; then -		owd=$(pwd) -		if [ -d "$file" ]; then -			cd "$file" -		else [ -f "$file" ] -			if which xdg-open &> /dev/null; then -				exec xdg-open "$owd/$file" & -				unset file -			fi -		fi +while true +do +	file=$(find . -maxdepth 1 -mindepth 1 -not -name '.*' -printf '%y\t%f\n' | +		sort -k 1 -k 2 | cut -f 2- | +		commander -xcd -p "$PWD>") + +	[ "$file" ] || break +	[ ! -e "$file" ] && continue + +	if [ -d "$file" ] +	then +		cd "$file" || continue +	else +		setsid xdg-open "$PWD/$file" &  	fi +  done  | 
