Εγκατάσταση agnoster theme στο zsh

terminal
shell
#1

Σε διανομη Linux Mint Cinnamon, πως μπορω να κανω να φαινεται το terminal οπως στην παρακατω εικονα: image

Εχω ηδη εγκαταστησει το ‘Oh My zsh’ κελυφος και θελω να βαλω το συγκεκριμενο theme. Καμια συμβουλη;

2 Likes
#2

Θέλεις το θέμα agnoster υπάρχει νομίζω ενσωματωμένο στο ‘Oh My zsh’ αλλιώς θα το βρεις εδώ https://github.com/agnoster/agnoster-zsh-theme. Προσωπικά χρησιμοποιώ μια προσωπική παραλλαγή. Κάποια πράγματα σχετικά με το ros καθώς και

    prompt_dir_short() {
       prompt_segment blue $CURRENT_FG "%$(( $COLUMNS - 50 ))<...<%3~%<<"
    }

Αυτό είναι το εύκολο κομμάτι. Το δύσκολο κομμάτι περνάει από την εντολή

echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699"`

που θα πρέπει να σου δείξει το παρακάτω:


και εδώ είναι η δυσκολία.

Θέλεις μια ειδική έκδοση των powerline fonts (https://github.com/powerline/fonts). Με είχαν δυσκολέψει κατά το παρελθόν αλλά φήμες λένε (δηλαδή δεν το έχω δοκιμάσει πρόσφατα) ότι αρκεί ένα

sudo -H apt install fonts-powerline

Το μυστικό είναι να δοκιμάσεις σε ένα καινούργιο τερματικό την παραπάνω εντολή για να δεις αν βλέπει τους ειδικούς χαρακτήρες.

Αν δεν τους δεις ή αν η διανομή σου δεν έχει το πακέτο, θα πρέπει να κάνεις εγκατάσταση με το χέρι και πιθανά και να χρειαστεί να τους ενεργοποιήσεις στο fontconfig. Η εγκατάσταση με το χέρι είναι επίσης χρήσιμη για να πάρεις μόνο το font που θέλει και να γλυτώσεις χώρο στο δίσκο. Οδηγίες θα βρεις στο https://github.com/powerline/fonts.

Αν έχεις τις γραμματοσειρές η εγκατάσταση και η προσαρμογή είναι εύκολη :smiley:. Είναι από τα ποιο εντυπωσιακά θέματα για το git, αλλά υπάρχουν τόσα άλλα που έρχονται μαζί ή τα προσθέτεις (https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes) που δεν ξέρω αν αξίζει τον κόπο ο μπελάς του συγκεκριμένου.

3 Likes
#3

Με τα installs που εκανα μου εμφανιζει την γραμματοσειρα με την εντολη: echo “\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699” (βεβαια δεν ξερω αν εχει σημασια αλλα το προτελευταιο συμβολο -τον κεραυνο- δεν μου τον εμφανιζει με χρωμα αλλα οπως φαινονται και τα υπολοιπα συμβολα).

Ακομα δεν εχω λυσει το προβλημα μου. Δεν εχω καταφερει να το εχω το συγκεκριμενο theme.
Με την εντολη: echo “${(F)AGNOSTER_PROMPT_SEGMENTS[@]}” | cat -n δεν μου εμφανιζει τις 6 εντολες οπως τις δειχνει εδω: image

Σιγουρα χρειαζεται να ρυθμισω μερικα πραγματα ακομα, αλλα δεν ξερω τι ακριβως.

#4

Το αρχείο με το θέμα είναι στον φάκελο $ΗΟΜΕ/.oh-my-zsh/themes και για να το σκαλίσεις πρέπει να γνωρίζεις λίγο bash. Προσοχή όμως, ότι αλλαγές γίνουν εκεί θα χαθούν στην επόμενη αναβάθμιση. Θα πρέπει να κάνεις ένα αντίγραφο στο $ΗΟΜΕ/.oh-my-zsh/custom/themes με κάποιο άλλο όνομα πχ my-agnoster.zsh-theme και να κάνεις εκεί τις όποιες αλλαγές.

Στην συνέχεια θα δηλώσεις πως θέλεις αυτό το θέμα στο αρχείο $ΗΟΜΕ/.zshrc

ZSH_THEME="my-agnoster"
DEFAULT_USER="talos"

Το συγκεκριμένο θέμα είναι λίγο βαρύ, καλό είναι να γνωρίζεις.

1 Like
#5

Απο bash γνωριζω μονο τα πολυ βασικα, δεν μπορω να πω οτι εχω εμβαθυνει σε καμια περιπτωση. Πραγματικα δεν ξερω πως μπορω να το συνεχισω, δεν καταλαβαινω τι θα πρεπει να γραψω στο αντιγραφο που μου ειπατε, ετσι ωστε να μου εμφανιζει τα directories και τις εντολες οταν κανω git οπως φαινονται στην πρωτη εικονα που εστειλα.
Οποτε να το αφησω το θεμα μεχρι να βγει καποιος οδηγος;

#6

Ένας οδηγός υπάρχει εδώ. Η δυσκολία τους συγκεκριμένου είναι η εγκατάσταση των γραμματοσειρών. Αν το κάνεις αυτό τα άλλα είναι “εύκολα”. Για παραπάνω προσαρμογές, δεν υπάρχει εύκολος δρόμος πρέπει να ξέρεις τι κάνεις.

Εκεί που θα βρεις αυτές τις οδηγίες, θα βρεις και μια σειρά από μαθήματα για το BASH του δικού μας @billniakas.

2 Likes
#7

Ωραια σας ευχαριστω πολυ!! Καταφερα με την βοηθεια του αρθρου που μου στειλατε καθως και τις οδηγιες τις δικες σας και αυτες:

https://gist.github.com/renshuki/3cf3de6e7f00fa7e744a

να βαλω το theme ‘agnoster’ με επιτυχια.

Δυο ακομα πραγματακια θα ηθελα να βελτιωσω αν λυνονται φυσικα.

  1. Πως μπορω να ορισω να μου ανοιγει αυτοματα το zshell οταν ανοιγω το terminal, χωρις να χρειαζεται να γραψω ‘zsh’ για να αλλαξω στο αλλο κελυφος;
  2. Μια λεπτομερεια που θα με βοηθουσε αν μπορει να λυθει με σχετικα απλο τροπο. Θελω οπως φαινεται στην παρακατω εικονα, να αλλαζει το χρωμα του ‘master’ οταν εκτελω σχετικες εντολες για git. Σε μενα στον προκειμενη περιπτωση το ‘master’ μενει στατικα σε πορτοκαλι χρωμα και δεν αλλαζει.
    image
1 Like
#8

Λοιπόν στην πρώτη σου ερώτηση όπως λέει και ο οδηγός με μία εντολή
chsh -s /bin/zsh
Κάνεις logi-out και ξανά log-in και ορίστε το zsh.

Στην δεύτερη ερώτηση σου έχει να κάνει με τις λειτουργίες του git, για να πρασινήσει ξανά το master πρέπει να κάνεις add τις αλλαγές και commit ένα σχόλιο

3 Likes
#9

Ξεχασα να το αναφερω. Την ειχα δοκιμασει την εντολη chsh -s /bin/zsh. Το λαθος μου ηταν οτι δεν ειχα κανει log-out και log-in.

Και με το χρωμα ειχες δικιο, χρειαζοταν να κανω add και commit για να αλλαξει.
Οποτε τωρα ολα καλα σας ευχαριστω και τους δυο για την βοηθεια!

Να κανω ακομα μια ερωτηση: Τα συμβολα + ή ± που εμφανιζονται διπλα στο master μερικες φορες τι ακριβως σημαινουν;
Μπορω καπου να δω τις λειτουργιες που εχει το συγκεκριμενο theme οσο αναφορα τις αλλαγες χρωματων και συμβολων και την αντιστοιχη σημασια τους;

1 Like
#10

Τα + και - σημαίνουν ότι στο master branch του αποθετηρίου προσθέτεις κώδικα ή αφαιρείς κώδικα ή προσθαφερείς (εξού και το ±).

4 Likes