#!/bin/bash if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' alias dir='dir --color=auto' alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' fi function la { ls_out=$(\ls -lah --color=always "$@") let "allowed_lines = $(tput lines) - 3" if [ $(echo "$ls_out" | wc -l) -le $allowed_lines ]; then echo "$ls_out" else echo "$ls_out" | less -r fi } alias tmux='TERM=xterm-256color tmux' if [ -x /usr/bin/gvim ]; then alias vim='gvim -v' fi function ssh_in() { control_file="$TMPDIR/${1}_ssh_in" if [[ -e $control_file ]]; then echo "Session is already open" exit fi cat ~/.tmux.conf | ssh \ -M \ -S "$control_file" \ -o ControlPersist=yes \ "${1}" \ 'cat - > ~/.tmux_ssh.conf' i3-sensible-terminal -e \ sh -c \ "ssh \ -o RemoteCommand=\"/bin/sh -c 'exec tmux -f ~/.tmux_ssh.conf new -As remote'\" \ -S \"$control_file\" \ -t \ \"$@\" ssh -O exit -S \"$control_file\" \"$1\"" }