Code Monkey home page Code Monkey logo

dotfiles's Introduction

Dotfiles

Ce dépôt contient ma configuration, qui n'a pas pour but d'être modulable mais de répondre à mes besoins. Ce dépôt peut vous inspirer pour vos configurations. J'essaie le plus possible de documenter.

Installation

  • cloner le dépôt : git clone [email protected]:EmixMaxime/dotfiles.git
  • créer des liens symboliques

Liens symboliques

Commandes à lancer depuis le dossier du clone

ln -s $PWD/.tmux.conf $HOME
rm $HOME/.zshrc && ln -s $PWD/.zshrc $HOME
ln -s $PWD/.zsh_functions $HOME
ln -s $PWD/.aliases $HOME

Outils de développement

Editeurs

  • Éditeur principal : Visual Studio Code qui offre une belle interface ainsi qu'une auto-complétion correcte sur mes langages principaux.
  • Ancien éditeur : SublimeText qui m'a comblé pendant des années. Malheureusement il ne répond plus à mes besoins actuels. Sa rapidité et fluidité ne cessera de me séduir !.

IDE

  • IntelliJ IDEA qui répond parfaitement à mes besoins. Un IDE pour effectuer toutes mes tâches : développement Java, PHP, JavaScript...

Colors schemes / font familly

Passant des heures et des heures devant des lignes de code j'aime le changement. C'est pour cela que j'utilise beaucoup de thèmes de couleur et de fonts.

Colors schemes

Fonts Familly

Le terminal

J'utilise le terminal de xfce, il est très léger je n'ai pas besoin de plus. J'ai déjà essayé Terminator qui propose un système similaire à Tmux qui se veut plus simple mais je préfère le petit terminal de xfce et ajouter ma configuration tmux que je retrouve sur toutes les machines où je travaille. Ceci étant dit, j'utilise souvent Terminator avec tmux... Ma configuration de ce terminal est disponible sur ce dépôt : config/xfce4/terminal/terminalrc.

Pour l'appliquer il suffit de copier ce fichier :

cp config/xfce4/terminal/terminalrc ~/config/terminal/xfce4/terminal

Le Shell : ZSH

Il en existe beaucoup, Bash (celui par défaut sur ubuntu debian...), Fish, Csh ect... Alors, pourquoi Zsh ?

Tout simplement parce que lorsque je suis arrivé dans le monde unix je cherchais un shell meilleur que bash, j'ai googler et j'ai trouvé zsh, c'est le plus populaire. Celui-ci répondant parfaitement à mes besoins je ne sens pas la nécessité de changer, puis vu le temps que j'ai passé à le configurer je n'ai vraiment pas envie de le lâcher !

Installation

Rien de plus simple

sudo apt-get install zsh

Utilisation

Une fois Zsh installé, notre shell reste Bash. Pour changer, il suffit de tapper zsh.

Lors du premier lancement il va vous interroger sur comment créer le fichier de configuration. Je recommande l'option (2), zsh va générer pour vous une configuration de base documentée.

Changement du shell par défaut

Zsh est installé, c'est bien. Cependant, vous pouvez remarquer que votre shell est toujours celui par défaut du votre système (généralement /bin/bash, à vérifier avec echo $SHELL). Voici comment changer ce shell pour zsh :

chsh -s $(which zsh)

Cela a pour effet de modifier le shell par défaut pour l'utilisateur courant (donc vous même). Si vous souhaitez le changer aussi pour l'utilisateur root il suffit d'exécuter la même commande avec cet utilisateur :

sudo !!

divers

cd /var/log
cd log local # -> cd /var/local

setopt # voir les options activés   
unsetopt # voir les options pas activés

# Themes
prompt -l # affiche les themes disponibles
prompt bart # change le thème sur cette session de terminal
# pour que ce soit "définitif" : changer le prompt du .zshrc

Oh-my-zsh

Pour l'installation, encore une fois rendez vous sur le dépôt.

Les plugins

  • Zsh syntax highlighting qui permet d'avoir une coloration syntaxique des commandes, c'est très confortable. git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

  • Zsh autosuggestions qui m'évite de répéter 100 fois les mêmes commandes tous les jours. git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Thème oh-my-zsh

J'utilise le thème pure.

Powerline

wget https://github.com/Lokaltog/powerline/raw/develop/font/PowerlineSymbols.otf https://github.com/Lokaltog/powerline/raw/develop/font/10-powerline-symbols.conf
sudo mv PowerlineSymbols.otf /usr/share/fonts/
sudo fc-cache -vf
sudo mv 10-powerline-symbols.conf /etc/fonts/conf.d/

Tmux

sudo apt-get install tmux
# vérifier que c'est bien la dernière version d'installée (2.x)
sudo apt-cache policy tmux
# ou
sudo apt-cache madison tmux

Tmux plugin manager

Pourquoi un plugin manager ? Pour se simplifier la vie... Il me suffit d'ajouter une ligne dans mon fichier tmux.conf et de lancer une ligne de commande afin d'installer un plugin.

Pour suivre les instructions de téléchargement, rendez vous sur le dépôt github. Ceci étant dit, tpm s'installe automatiquement grâce à la configuration de tmux. Vous n'avez donc juste qu'à faire un coup de CTRL+b puis I, ou ~/.tmux/plugins/tpm/bin/install_plugins pour installer les plugins.

Plugins Tmux

  • Resurrect qui permet de sauvegarder un environnement. Commandes que j'utilise très souvent :
    • CTRL+b puis CTRL+s : pour sauvegarder une session.
    • CTRL+b puis CTRL+r : restaurer les sessions
    • CTRL+b puis s : lister les sessions (ce n'est pas de ce plugin mais de tmux ;-))

Panes

ctrlb + " ctrlb + % ctrlb + flèches directionnelles

ctrld ou exit ferme une panes ou si c'est la dernière ferme tmux

ctrlb + ? = help -> q = exit

Créé une nouvelle fenêtre : ctrlb + c

Naviguer entre les fenêtres : ctrlb + p (previous) / n (next)

https://youtu.be/mdIrm8TPK44?t=1141

Remapper les touches du clavier

J'utilise cette astuce pour remplacer la touche puissance 2 par un back-tick (développeur javascript dans l'âme).

# Génération du fichier map
xmodmap -pke > ~/.Xmodmap

# Chercher la clef correspondant à la touche à remapper
xev | awk -F'[ )]+' '/^KeyPress/ { a[NR+2] } NR in a { printf "%-3s %s\n", $5, $8 }'

# Changement du fichier ~/.Xmodmap

# Reload la configuration
xmodmap ~/.Xmodmap

Exemple :

Le back-tick correspond à 16 grave et la puissance 2 à 49 twosuperior.
Je cherche la ligne correspondant à la clef 49 et je la modifie : keycode 49 = grave

Audio

Logiciels

Fix problème

Parfois le son se met à foirer, grésillements...

pulseaudio -k && sudo alsa force-reload

dotfiles's People

Contributors

mxmaxime avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.