Vous n'êtes pas identifié(e).
Tmux est un mutiplexeur de terminaux comme screen mais a mes yeux un peu plus évolué, et surtout scriptable.
L'installation est traditionnelle via votre gestionnaire de paquets.
A) Quelques raccourcis bien pratique :
1)Racourcit de base pour la gestion des fenetres ( onglets ):
<Ctrl> + <b> suivi de <c> : Créer un nouveau terminal dans la session tmux active
<Ctrl> + <b> suivi de <n> : Switcher entre les différents terminaux de la session
<Ctrl> + <b> suivi de <d> : Se détacher de la session tmux
<Ctrl> + <b> suivi de <w> : Affiche la liste des terminaux disponibles
<Ctrl> + <b> suivi de <t> : Afficher l’heure dans un terminal
2)Commandes dans un Split:
<Ctrl> + <b> suivi de <«> : Split vertical du terminal courant en deux + ouverture d’un terminal dans le nouveau panel
<Ctrl> + <b> suivi de <%> : Split horizontal du terminal courant en deux + ouverture d’un terminal dans le nouveau panel
<Ctrl> + <b> suivi de <o> : Switcher entre les terminaux splittés
<Ctrl> + <b> suivi de <espace> : Changer l’organisation visuelle des terminaux splittés
<Ctrl> + <b> suivi de <Alt> + (flèches directionnelles) : Reduire, agrandir fenêtre du split
<Ctrl> + <b> suivi de <!> : Convertir un split en terminal seul
<Ctrl> + <b> suivi de <q> : Afficher les numéros des terminaux splittés
<Ctrl> + <b> puis saisissez :join : permet de joindre un terminal seul dans un split
B) Votre tmux est hautement configurable
le fichier de conf de tmux est à placer dans votre home : ~/.tmux.conf
voila le mien :
#Utilisation de crtl-w plutot que crtl-b ( c'est plus facile )
unbind C-b
set -g prefix C-w
bind C-a send-prefix
#navigation entre les fefètre avec ctrl les flèche : ( adieu ctrl-w n )
bind-key -n C-right next
bind-key -n C-left prev
#####
#On change les raccourcis pour faire du split vertical et horizontal
##On utilise la touche "|" (pipe) pour faire un split vertical
bind | split-window -h
##Et la touche "-" pour faire un split horizontal
bind - split-window -v
#####
# setting varié :
set-option -g status-utf8 on
set-window-option -g utf8 on
set -g default-terminal "screen-256color"
set -g history-limit 1000
setw -g window-status-current-bg blue
setw -g monitor-activity on
set -g visual-activity on
setw -g automatic-rename on
#On met les panneaux non actif en gris
set -g pane-border-fg colour244
set -g pane-border-bg default
#
#On met le panneau actif en rouge
set -g pane-active-border-fg colour124
set -g pane-active-border-bg default
#
#On met la barre de status en gris
set -g status-interval 60
set -g status-left-length 30
set -g status-left '#[fg=black](#S) #(whoami)@#H#[default]'
set -g status-fg colour235
set -g status-bg colour250
set -g status-attr dim
#
# On surligne les fenêtres actives dans la barre de status en gris foncés
set-window-option -g window-status-current-fg colour15
set-window-option -g window-status-current-bg colour-0
C) Et la cerise sur le gateau :
Un petit srcipt maison qui permet de lancer un ternimal avec tmux, voir lancer une application dans un tmux ( comme weechat ).
L'interet de ce script est que :
si vous avec par exemple weechat de lancer et que vous fermer la fentre du terminal en relancant le script il se positione directement dans votre fenetre de weechat
Si vous avez 2 fentre d'ouvert ( l'un en shell, l'autre en weechat ) le script trouvera la bonne fenetre tmux et l'ouvrira.
voila ce script : que j'ai placé ici : ~/.tmux/tmuxperr.sh ( son emplacement est important pour openbox )
#!/bin/bash
#########################################################################
#DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
#Version 2, December 2004
#
#Copyright (C) 2015 Frédéric THOUIN
#Everyone is permitted to copy and distribute verbatim or modified
#copies of this license document, and changing it is allowed as long
#as the name is changed.
#
#DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
#TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
#
#0. You just DO WHAT THE FUCK YOU WANT TO.
#########################################################################
## Tmux Under Terminator : Version 0.9
#########################################################################
## Dependence :
## terminator
## tmux
## wmctrl
#########################################################################
## Usage :
## tmuxperr.sh <sessionnane> <application>
## to launch a shell just put "bash" on application argument
#########################################################################
## Variable definition :
WINDOW_NAME="Viperr TMUX Terminal"
TERM_EXIST=$(wmctrl -l|grep "$WINDOW_NAME")
#############################################
## Test syntax :
if [[ -z $1 ||-z $2 ]]; then
echo "Please give a session name"
echo -e "\nExample : ./terminux.sh Viperr application"
exit 0
fi
#############################################
## start point :
# test if a terminal exist with your given name :
if [ -z "$TERM_EXIST" ]
#NO
then
# test if TMUX session exist :
if [[ -z $(tmux list-session) ]]
then
# test if application argument is bash ( no session exist )
if [[ "$2" = "bash" ]]
then
# yes : launch new Tmux session under your shell :
terminator -T "$WINDOW_NAME" -e "tmux -2 new-session -A -D -s $1" &
else
# no : launch your application under tmux :
terminator -T "$WINDOW_NAME" -e "tmux -2 new-session -A -D -n $2 -s $1 $2 " &
fi
else
# test if application argument is bash ( session exist )
if [[ "$2" = "bash" ]]
then
# yes : test if window for your shell exist :
if [[ -n $(tmux list-window -a -F '#{window_name}' | sed -n "/$LOGNAME/ s/\(.*\)@.*$/\1/p") ]]
then
#Yes : launch terminator and attach your shell windows ( if your have multi shell windows, this script attche only the first found )
terminator -T "$WINDOW_NAME" -e "tmux -2 attach -d -t $(tmux list-window -a -F '#{window_name}|#{window_index}.#{pane_index}' | sed -n '/'$LOGNAME'/s/^.*|\(.*\)$/\1/p' | head -1) " &
else
#No : Launch terminator with new shell window
terminator -T "$WINDOW_NAME" -e "tmux -2 attach-session \; new-window" &
fi
else
#No : test if window for your application exist :
appli=$(tmux list-window -a -F '#{window_name}' | grep -i "$2"| cut -d " " -f 1)
if [[ -n $appli ]]
then
#Yes : launch terminator and attach your application
terminator -T "$WINDOW_NAME" -e "tmux -2 attach -d -t $1:$appli" &
else
#No : Launch terminator with new window for your application
terminator -T "$WINDOW_NAME" -e "tmux -2 attach-session \; new-window $2" &
fi
fi
fi
#YES
else
# test if application argument is bash ( terminal open )
if [[ "$2" = "bash" ]]
then
#yes : test if a shell windows exist :
if [[ "$LOGNAME" = $(tmux list-window -a -F '#{window_name}' | sed -n "/$LOGNAME/ s/\(.*\)@.*$/\1/p") ]]
then
#yes : Select the First shell window
tmux -2 select-window -t "$1:$(tmux list-window -a -F '#{window_name}' | grep "$LOGNAME")"
else
#No : Start new shell window
tmux -2 new-window -t "$1"
fi
else
# NO : test if your application windows exist :
if [[ -n $(tmux list-window -a -F '#{window_name}' | grep -i "$2") ]]
then
#yes : Select your application window
tmux -2 select-window -t "$1:$(tmux list-window -a -F '#{window_name}' | grep -i "$2")"
else
#no : Start new window for your application
tmux -2 new-window -t "$1" -n "$2" "$2"
fi
fi
fi
#Focus on your terminal
wmctrl -a "$WINDOW_NAME"
D) Enfin on passe a l'intégration dans openbox :
Dans votre menu vous pouvez donc ajouter ceci pour le terminal :
<item label="Terminal">
<action name="Execute">
<execute>~/.tmux/tmuxperr.sh Viperr bash</execute>
</action>
</item>
Et pour weechat par exemple ( ou tout autre application en cli :
<item label="weechat">
<action name="Execute">
<execute>~/.tmux/tmuxperr.sh Viperr weechat</execute>
</action>
</item>
Enfin si vous avez un key binding dans votre openbox pour lancer votre terminal il faudra le modifier dans votre rc.xml
Exemple chez moi la touche "Windows+t" nous donne :
<keybind key="W-t">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>Terminal</name>
</startupnotify>
<command>/home/fthouin/.tmux/tmuxperr.sh Viperr bash</command>
</action>
</keybind>
Have fun !!
source :
http://denisrosenkranz.com/tuto-personn … iguration/
http://gerard.geekandfree.org/blog/2010 … rminaux-1/
http://gerard.geekandfree.org/blog/2011 … -partie-2/
http://tmux.sourceforge.net/
Channel irc : irc.freenode.net chan #tmux
Dernière modification par penthium2 (02-04-2015 12:12:05)
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
Tip Top merci !!
Security is always excessive until it’s not enough. — Robbie Sinclair
Hors ligne
me restera juste a adapter pour le menu KDE ^^ merci Viperr
config 1: AMD FX 4100 Black Edition / 8 Go DDR3 / 2.5 To / Nvidia GeForce GT220 1Go
laptop : DELL Inspiron 15" serie 7000 / i7-4510U / 16Go DDR3 / 1To hybrid (8Go) / intel HD 4000 + NVidia GT 750M / dualboot : W8.1 + archlinux
config 2: AMD FX 8350 Black Edition / 32 Go DDR3 / 500 Go Velociraptor + 2 To / Nvidia GeForce GTX660 2Go
Distro: Arch Linux / Desktop: KDE
Hors ligne
Merci du post viperr fatality combo
Mess With The Bests
Die Like The Rest
Hors ligne
J'ai fais un paquet Debian pour les intéressés : https://valentinovd.sollidi.us/repo/vov … -1_all.deb
Hors ligne
GG et mille merci valentin, en cas d'updat edu script je le posterais ici bas
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
Merci viperr !
Faudra que je m'y remette à tmux mais en changeant ce satané raccourci emac <ctrl+b> en <ctrl+a> à la screen (pas pratique du tout sinon) .
D'ailleurs chez Debian il me semble qu'il y a une panoplie de config type à disposition dans le paquet d'origine.
Hors ligne
et il existe tmuxinator ! faut que je le regarde de plus pret
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
Je ne connaissais pas du tout cette bestiole tmuxinator, ça en fait des choses à voir ... ^^
Hors ligne
vive dnf search tmux
=============================== Non spécifié, correspond à : tmux ===============================
tmux.x86_64 : A terminal multiplexer
tmux-powerline.noarch : Powerline for tmux
tmuxinator-doc.noarch : Documentation for tmuxinator
tmuxinator.noarch : Create and manage complex tmux sessions easily
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
Décidement Fedora offre toujours des surprises, mais j'ai changé de crèmerie ces derniers mois on verra plus tard
Hors ligne