Πέμπτη, 29 Νοεμβρίου 2007

Πολυχρωμία στο terminal.app

Νταουλιάστηκε το κεφάλι μου - αιώνια newbie γαρ - όμως στην τελική έγινε το δικό μου! Ακολουθούν οδηγίες για το πώς. Υπ'όψιν πως όσα ακολουθούν δοκιμάστηκαν σε Tiger.
Τα colour themes του terminal.app στο Mac OS X έρχονται flat. Επιλέγοντας Terminal -> Window Settings... -> Color εμφανίζεται το πάνελ με τις χρωματικές ρυθμίσεις του τερματικού. Οι διαθέσιμες επιλογές αλλάζουν μονάχα τα χρώματα κειμένου - φόντου, καθολικά. Δεν δίνεται η δυνατότητα για πιο λεπτομερείς ρυθμίσεις, π.χ. διαφορετικός χρωματισμός φακέλων, εκτελέσιμων αρχείων, κλπ.
Ιδού τα βήματα προκειμένου να επιτευχθεί το αποτέλεσμα της εικόνας, η οποία εικόνα εκτός από το να παίζει τη γλάστρα, απεικονίζει το κρίσιμο περιεχόμενο δύο κρίσιμων αρχείων* (η κρίση μου btw τελεί υπό καταστολή):
  1. Καταρχάς, σιγουρεύουμε ότι το κέλυφος που χρησιμοποιούμε είναι το bash (τι γράφει στον τίτλο του παραθύρου του τερματικού;). Εάν όχι, τότε από το Terminal -> Preferences... κλικάρουμε την πρώτη επιλογή.

  2. Με το που ανοίγει η εφαρμογή terminal.app, το προκαθορισμένο μονοπάτι που φορτώνεται στη γραμμή εκτέλεσης είναι ο κατάλογος του τρέχοντος χρήστη. Εάν δεν είναι, τότε πηγαίνουμε στον εν λόγω κατάλογο εκτελώντας την ακόλουθη εντολή
    $ cd /Users/username
    όπου username, το ψευδώνυμο που χρησιμοποιούμε για να κάνουμε log in στο λειτουργικό.

  3. Μέσα σε αυτόν τον κατάλογο δημιουργούμε δύο αρχεία
    $ touch .bash_profile
    $ touch .bashrc
    Τι είναι τούτα και τι καπνό φουμάρουν του λόγου τους; Ορίστε μία λιτή απάντηση.

  4. Στη συνέχεια γράφουμε στα δύο αυτά αρχεία τις εντολές που παρατίθενται μετά το τέλος της λίστας. Τώρα emacs, nano, pico, vi, vim, Delphi IDE, JBuilder... με όποιον κειμενογράφο βολεύεται ο καθένας. Προσωπική επιλογή μου είναι ο vi
    $ vi .bash_profile
    $ vi .bashrc
  5. Κλείνουμε εντελώς την εφαρμογή Terminal -> Quit Terminal, την ξανανοίγουμε και... πάρ'τα να μη στα χρωστάω, μ'έπρηξες δέκα ώρες τώρα!
Περιεχόμενο του .bash_profile:
# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
Περιεχόμενο του .bashrc:
# Uncomment the following two lines to allow 'ls' to be colorised:
export CLICOLOR='true'
export LSCOLORS="gxfxcxdxbxegedabagacad"

# Customise PS1 prompt environment value
export PS1="\[\e[0;32m\][\u @ \h] \[\e[0;39m\]\W \[\e[0;33m\]\$ \[\e[m\]"

Εδώ και εδώ υπάρχουν αναλυτικές επεξηγήσεις για το τι σημαίνουν τα παραπάνω μπαρμπαδέλια και οδηγίες για περαιτέρω επιλογές παραμετροποίησης των χρωμάτων και των πληροφοριών που εμφανίζει η γραμμή εκτέλεσης.

Για το τέλος άφησα το άσχετο tip της ημέρας. Αν εκτελέσουμε στο παράθυρο του τερματικού
$ open .
ανοίγει στον Finder ο τρέχων κατάλογος.


* UPDATE:
Στο τέλος της τελευταίας γραμμής του .bashrc χρειάζεται να προσθέσουμε κάτι έξτρα, για να μην τα χάνει
ο bash όταν προσπαθεί να κάνει line wrap. Έτσι, η τελευταία γραμμή του περιεχομένου του .bashrc από
export PS1="\[\e[0;32m\][\u @ \h] \[\e[0;39m\]\W \[\e[0;33m\]\$ \e[m"
γίνεται
export PS1="\[\e[0;32m\][\u @ \h] \[\e[0;39m\]\W \[\e[0;33m\]\$ \[\e[m\]"
Η εικόνα περιέχει την πρώτη έκδοση της εντολής, η οποία στο κυρίως κείμενο έχει διορθωθεί.

2 σχόλια:

Paris Apostolopoulos είπε...

i like you pixie!

pixie είπε...

:]

(hint hint -> :blush smile)
I really had to google it! :)