Gestionnaire de paquet
Aussi bizarre que cela puisse paraitre à un utilisateur de Linux, OS X n'a pas de gestionnaire de paquets par défaut. Il faut
installer Homebrew pour y remédier et ensuite installer ses programmes
préférés (ex: tig, ag, …).
Terminal
J'ai suivi les conseils et installé iTerm2 pour remplacer le terminal par défaut.
J'ai ensuite installé le thème solarized, configuré la touche Meta qui est désactivé par défaut ainsi qu'un raccourci
clavier système pour avoir un terminal toujours rapidement accessible.
GNU vs BSD
OS X est un UNIX dérivé de BSD et les utilitaires de base ont de subtiles différences avec les versions GNU. Je vous recommande d'installer et
d'utiliser les versions GNU.
brew install coreutils
Pour avoir la coloration avec ls, c'est --color=auto
pour GNU et -G
pour BSD. On doit donc avoir dans sa config :
if [[ $(uname -s) == "Darwin" ]]; then
alias ls='ls -G'
else
alias ls='ls --color=auto'
fi
sed : le fonctionnement de l'option -i
diffère par ex.
Heureusement il est possible d'installer GNU sed et de remplacer la version OS X
brew install gnu-sed --default-names
Et d'autres programmes ont aussi des différences pénibles comme date, csplit, awk …
ctags semble aussi avoir des différences au niveau des expressions régulières.
J'ai remplacé \s
par [ \t]
.
Ce qui se fait avec la commande suivante dans Vim : :%s/\\s/[ \\t]/g
Vim
La version de Vim installée par défaut est trop vieille2.
brew install macvim --with-cscope --with-lua --override-system-vim
Le path de Vim diffère de celui du SHELL, ce qui fait que ctags ne fonctionne pas dans Vim. Voici la commande pour
corriger cela3 :
sudo chmod ugo-x /usr/libexec/path_helper
Par défaut, ma configuration du clipboard ne fonctionnait pas4. J'ai remplacé :
set clipboard=unnamedplus
par :
set clipboard=unnamed,unnamedplus
Conclusion
J'ai perdu pas mal de temps pour retrouver une utilisation similaire à celle que j'ai sous Linux, mais passée cette
étape, mon workflow est sensiblement le même.
Les regrets : le gestionnaire de fenêtre i3 me manque. En effet, je trouve Aqua inadapté pour des utilisateurs
avancés, notamment car cette interface n'est pas conçue pour être pilotée au clavier.
Pour être honnête, il faut aussi reconnaitre à OS X quelques qualités : une grande homogénéité de l'interface
(Command-C / Command-V pour copier / coller fonctionne partout), certains programmes sont très pratiques (par ex. Dash pour centraliser les javadocs).
Liens
- http://fabi1cazenave.github.io/qwerty-lafayette/
- https://github.com/dotphiles/dotzsh#mac-os-x
- http://www.codeography.com/2013/06/11/install-macvim-with-lua-support.html
- http://vim.wikia.com/wiki/Mac_OS_X_clipboard_sharing