Bastano pochi comandi via MELPA

Anche Emacs ha i suoi dots, cioè dei file di configurazione. Il file principale si chiama .emacs (inizia per punto, è un "dot", cioè un file nascosto). Gli altri file di configurazione sono invece all'interno della directory dedicata ad Emacs, cioè .emacs.d (che sta per "emacs directory"). Consiglio di gestire i dots con GNU Stow così da non perdere eventuali impostazioni utili nel tempo, anche passando da un PC all'altro.

Per potere installare nuovi pacchetti in maniera automatizzata e semplice, apriamo il file di configurazione principale con questo comando:

# Così facendo possiamo modificare emacs con emacs stesso
$ emacs ~/.emacs

# Con altri editor:
# nano ~/.emacs
# vim ~/.emacs
# ...

Ricordo che la tilde ("~") in Linux indica la $HOME e nient'altro. Alla fine di questo file dobbiamo aggiungere il seguente blocco di testo:

(require 'package)
(let* ((no-ssl (and (memq system-type '(windows-nt ms-dos))
                    (not (gnutls-available-p))))
       (proto (if no-ssl "http" "https")))
  (add-to-list 'package-archives
               (cons "melpa" (concat proto "://melpa.org/packages/")) t))
(package-initialize)

La sintassi potrebbe non essere familiare e lasciare un po' disorientati per via delle innumerevoli parentesi, ma non c'è alcun bisogno di scoraggiarsi. Si tratta di Lisp, il linguaggio di programmazione su cui Emacs è basato.

Non bisogna conoscere Lisp per capire che succede: questo codice viene eseguito all'avvio di Emacs e non fa altro che rendere disponibili al software i pacchetti presenti nell'URL ://melpa.org/packages/.

Riavviamo Emacs e lanciamo il seguente comando: M-x package-refresh-content.

A questo punto possiamo visualizzare la lista di pacchetti disponibili lanciando M-x package-list.

Poiché ho sempre apprezzato la palette di Atom, ho pensato di portarla con me anche su Emacs. Ho trovato un paio di temi che fanno al caso mio nella lista:

  • Atom Dark (An Emacs port of the Atom Dark theme from Atom.io)
  • Atom One Dark (This is a port of the Atom One Dark theme from Atom.io.)

Come illustrato nel README di Atom Dark, l'installazione può essere effettuata in più modi, di cui uno automatizzato da Emacs stesso ed uno manuale.

Installare con package-install§

Aprire Emacs e lanciare: M-x package-install RET atom-dark-theme. Il tema è ora installato ma non è stato ancora impostato come predefinito. Possiamo riavviare Emacs e provarlo selezionandolo dal menù: Options > Customize Emacs > Custom Themes.

Installazione manuale§

Clonare la repo

git clone https://github.com/jonathanchu/atom-one-dark-theme.git

Copiare ed incollare il file atom-one-dark-theme.el all'interno di ~/.emacs.d/themes/.

Aprire l'Emacs config ed aggiungere in alto:

(add-to-list 'custom-theme-load-path "~/.emacs.d/path/to/atom-one-dark-theme/")

Ora avviando Emacs dovrebbe essere disponibile nella lista dei temi dalle opzioni.

Usa come predefinito§

Basta tornare al file di configurazione principale:

$ emacs ~/.emacs

ed aggiungere

'(custom-enabled-themes (quote (atom-dark)))`

alla voce custom-set-variables