Ranger: Ένας εκπληκτικός file manager για το τερματικό

Καλησπέρα σε όλους,

Θα προσπαθήσω να ανταποκριθώ στο κάλεσμα του “Talos” για μια παρουσίαση του ranger. Ελπίζω να καταφέρω να δείξω αποτελεσματικά έστω και λίγες από τις δυνατότητες αυτού του εκπληκτικού file manager. Πάμε να το δούμε λοιπόν.

Εδώ βλέπεται την αρχική εικόνα του ranger (Σημ: Τα περιγράμματα σε αχνό γκρι, είναι επιλογή στο config αρχείο του ranger. Νομίζω ότι βοηθάει οπτικά.)

Όπως βλέπεται, είναι διακριτές 3 περιοχές. Ας ξεκινήσουμε από την μεσαία. Σε αυτή την περιοχή εμφανίζονται τα περιεχόμενα (αρχεία και directories) που βρίσκονται στο directory που φαίνεται στην περιοχή 1, και στη συγκεκριμένη περίπτωση είναι το home directory του χρήστη. Η περιοχή 3 έχει διττό χαρακτήρα. Μπορεί να εμφανίσει τα περιεχόμενα του κάθε directory της περιοχής 2 ή να δείξει ένα σύντομο preview των αρχείων που εμφανίζονται στην περιοχή 2. Έτσι για παράδειγμα, εάν στην περιοχή 2 έχετε ένα αρχείο plain text, preview αυτού του αρχείου θα μπορείτε να δείτε στην περιοχή 3.
Είναι βολικό να θυμάστε πως η περιοχή 2 δείχνει που είστε αυτή τη στιγμή, η περιοχή 1 δείχνει σε πιο directory ήσασταν πριν, ενώ η περιοχή 3 δείχνει που μπορείτε να πάτε στη συνέχεια, σε κάποιο άλλο directory ή να ανοίξετε κάποιο αρχείο.

Για την πλοήγηση εντός ενός directory ή μεταξύ των directories, μπορείται να κάνετε χρήση των κλασσικών πλήκτρων για τον vim (j: κάτω, k: πάνω h: αριστερά l: δεξιά). Στο πιο κάτω gifaki θα πάρετε μια γεύση:

Στο σημείο αυτό, ίσως είναι σκόπιμο να αναφέρουμε ότι στις επιλογές για previewing, μπορείτε να αποφασίσετε αν θα μπορείτε να βλέπετε μια προεπισκόπηση αρχείων εικόνας ή να τις ανοίγεται με κάποιον άλλον image viewer. Θα προσπαθήσω να δείξω την πρώτη επιλογή

Preview εικόνων μέσα από τον ranger.
Αν πλοηγηθούμε στο path: usr/share/backgrounds/archlinux (εδώ υπάρχουν κάποια βασικά wallpapers για την διανομή που χρησιμοποιώ) μπορούμε να δούμε ένα listing με κάποια wallpapers, και κάνοντας χρήση των vim keys (όπως ανέφερα πιο πάνω) μπορούμε να δούμε ένα preview αυτών των εικόνων:
image_preview

Ελπίζω να έχω την κερδίσει την προσοχή σας.

Εϊναι σαφές ότι μέσω του ranger, μπορούμε να κάνουμε όλες τις ενέργειες που αφορούν στα αρχεία μας. Για παράδειγμα μπορούμε να δημιουργήσουμε ένα νέο directory πατώντας f7, να σβήσουμε ένα αρχείο με dD, ή να κάνουμε cut ένα αρχείο με dd και στη συνέχεια paste ή yank (για τους φανατικούς του vim dialect) με pp ή po αν θέλουμε να γίνει ovewritten αρχείο που ήδη υπάρχει.

Για να είμαι ειλικρινείς, περισσότερες φορές χρησιμοποιώ τον ranger για κάθε ενέργεια που θέλω να κάνω με αρχεία παρά το terminal.

Αυτό όμως που πραγματικά με κέρδισε στον ranger, είναι η δύναμη και ευελιξία που παρέχει στον χρήστη, ειδικά όταν συνδυάζεται και με άλλες εφαρμογές. Σαν παράδειγμα, θα προσπαθήσω να δείξω τον συνδυασμό ranger+vim για bulk renaming αρχείων.

Ας πάρουμε την περίπτωση που έχετε ένα αρκετά μεγάλο αριθμό αρχείων σε ένα direcory, που έχουν την μορφή: My_File_1.txt … My_File_10.txt, όπως στην πιο κάτω εικόνα:


Έστω ότι θέλουμε (μαζικά και όχι ένα-ένα αρχείο) να τα φέρουμε σε μια μορφή: My File #.txt, να αντικαταστήσουμε δηλαδή το underscore σύμβολο με απλό space.
α) Μαρκάρουμε όλα τα αρχεία πατώντας το πλήκτο v. (Αν θέλουμε να ακυρώσουμε το μαρκάρισμα απλά πατάμε άλλη μια φορά το πλήκτο v). Έτσι η εικόνα μας θα είναι κάπως έτσι:

(Τα επιλεγμένα αρχεία χρωματίζονται με αυτό το πορτοκαλί χρώμα)

β) Στην συνέχεια επιλέγουμε τον συνδυασμό πλήκτρων cW (εννοείται πως υπάρχει η δυνατότητα να ορίσει ο χρήστης ποιον συνδυασμό πλήκτρων επιθυμεί για αυτή τη λειτουργεία). Στην συνέχεια, ανοίγει o vim, έχοντας ως κείμενο το listing των αρχείων που έχουμε μαρκάρει.


γ) Όπως θα κάναμε σε κάθε αρχείο text μέσω του vim, εκτελούμε την εντολή (στο command mode) :%s/_/\ /g και μετά :wq για να σώσουμε και να βγούμε από τον vim.

Ακολουθούμε τις οδηγίες και, ω του θαύματος, έχουμε κάνει ένα bulk renaming πάρα πολύ εύκολα, αποτελεσματικά και το πιο σημαντικό, γρήγορα.

Από τη στιγμή που ανακάλυψα τις συνδυαστικές αυτές δυνατότητες (και νομίζω ότι είμαι ακόμα στην αρχή), δεν θεωρώ πως υπάρχει επιστροφή σε άλλον file manager.

Βεβαίως, υπάρχουν και μειονεκτήματα με κυριώτερο το ότι ο ranger είναι γραμμένος σε python, με ό,τι αυτό μπορεί να συνεπάγεται για την ταχύτητά του. Ειλικρινά όμως στο καθημερινό μου workflow, δεν έχω συναντήσει κάποιο “κόλλημα” που να μου χαλάει την εμπειρία και να με κάνει να ψάξω κάτι άλλο.

Ελπίζω η σύντομη αυτή παρουσίαση να αποτελέσει το έναυσμα και σε άλλους χρήστες να ανακαλύψουν τις δυνατότητες του ranger και την ισχύ που δίνει στο χρήστη η συνδυαστική του λειτουργία με άλλες εφαρμογές. Αν πάλι εσείς χρησιμοποιείται κάποια άλλα εργαλεία που δίνουν αντίστοιχη και γιατί όχι καλύτερη εμπειρία, θα ήθελα να μάθω από εσάς.

Ευχαριστώ για τον χρόνο. Καλή συνέχεια.

8 Likes

πολυ ωραιος ευχαριστουμε.
και με τον midnight commander μπορεις να συνδυασεις άλλα προγραμματα. πχ για να βαλεις καποια mp3 κομματια να παιξουν με τον παναλαφρο mpg123, μαρκαρεις τα κομματια που θελεις να παιξουν με το πληκτρο insert και μετα γραφεις στο κατω μερος mpg123 %f και παιζουν τα κομματια που εχεις επιλεξει.

για πειτε και άλλα που χρησιμοποιειτε εσεις…

1 Like

Πολύ καλή επιλογή. Το δυνατό σημείο του κατ’ εμέ είναι πως δεν χρειάζεται πολύ ρύθμιση για να χρησιμοποιηθεί, λόγω των sane defaults του (ή τουλάχιστον sane για μένα :stuck_out_tongue: )
Προσωπικά έχω σταματήσει να χρησιμοποιώ file managers . Bash, vidir και άγιος ο Θεός

Εγώ πάλι έχω να χρησιμοποιήσω ορθόδοξο διαχειριστή αρχείων από την ms-dos εποχή. Δεν θυμάμαι καν γιατί αξίζει (δεν λέω ότι δεν αξίζει, λέω ότι δεν θυμάμαι)

Απλά χρησιμοποιώ dolphin/thunar από γραφικό περιβάλλον και από γραμμή εντολών τις συνηθισμένες unix εντολές (cd, ls, cp, mv, rm, rmdir, mkdir) και επίσης find, rsync και ncdu.