Posted by & filed under Mac, OSX, Software, Tools, Web Development.

DMCA.com

Per chi come me utilizza molto il terminale è indispensabile avere un ambiente di sviluppo confortevole. Quindi ritengo importante personalizzare il proprio terminale in base alle proprie esigenze.

In questo articolo vi farò vedere come ho personalizzato il mio terminale.

Personalizzazione

Invece di utilizzare il terminale di osx io preferisco utilizzare iTerm2. Lo trovo semplicemente più comodo.

Se preferite il terminale di osx non c’è alcun problema, questa guida funziona benissimo anche con quest’ultimo.

Scaricate il tema solarized dark da gitHub, all’interno di esso troverete i temi sia per iTerm2 sia per il terminale di default. Impostate ora il tema in iTerm/Terminale.

Scaricate il font Ubuntu Mono e impostatelo in iTerm/Terminale. Regolate la dimensione dei caratteri in base alla risoluzione del vostro schermo.

Andate in Preferenze di sistema > Utenti E Gruppi e cliccate sul lucchetto in basso a sinistra. Ora cliccate col tasto destro sul vostro account e selezionate impostazioni avanzate. A questo punto scegliete come Shell di login /bin/zsh.

Dobbiamo ora installare una piccola utility, per farlo date semplicemente nel terminale il seguente comando:

curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh

Aprite ora il file ~/.oh-my-zsh/templates/zshrc.zsh-template e all’interno di esso troverete una variabile chiamata

ZSH_THEME

Assegnate a questa variabile il nome con cui volete chiamare il tema che stiamo creando.

Ad esempio, nel mio caso :

ZSH_THEME="mauromarano"

Ora nella cartella ~/.oh-my-zsh/themes/ create un nuovo file chiamato mauromarano.zsh-theme. Ovviamente al posto di mauromarano mettete il nome del tema che avete impostato prima.

All’interno del file .zsh-theme che avete appena creato incollate il codice seguente:

function git_prompt_info() {
  ref=$(git symbolic-ref HEAD 2> /dev/null) || return
  echo "$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_PREFIX$(current_branch)$ZSH_THEME_GIT_PROMPT_SUFFIX"
}

function get_pwd() {
  print -D $PWD
}

function battery_charge() {
  if [ -e ~/bin/batcharge.py ]
  then
    echo `python ~/bin/batcharge.py`
  else
    echo ''
  fi
}

function put_spacing() {
  local git=$(git_prompt_info)
  if [ ${#git} != 0 ]; then
    ((git=${#git} - 10))
  else
    git=0
  fi

  local bat=$(battery_charge)
  if [ ${#bat} != 0 ]; then
    ((bat = ${#bat} - 18))
  else
    bat=0
  fi

  local termwidth
  (( termwidth = ${COLUMNS} - 3 - ${#HOST} - ${#$(get_pwd)} - ${bat} - ${git} ))

  local spacing=""
  for i in {1..$termwidth}; do
    spacing="${spacing} "
  done
  echo $spacing
}

function precmd() {
print -rP '
$fg[cyan]%m: $fg[yellow]$(get_pwd)$(put_spacing)$(git_prompt_info) $(battery_charge)'
}

PROMPT='%{$reset_color%}→ '

ZSH_THEME_GIT_PROMPT_PREFIX="[git:"
ZSH_THEME_GIT_PROMPT_SUFFIX="]$reset_color"
ZSH_THEME_GIT_PROMPT_DIRTY="$fg[red]+"
ZSH_THEME_GIT_PROMPT_CLEAN="$fg[green]"

Date infine nel terminale il seguente codice:

sudo cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

Riavviate il terminale e tutto dovrebbe essere a posto ora ;)

Crediti

Questo post è stato ispirato da questo ottimo articolo.