Development Tools

Development tools play an important role in the ggKbase development process and collaboration. Here are some of the tools that we are using, where you can get them, and how we are setting them up.

Editors:

  • Vim – Usually comes with Linux and Mac
    • Need some more information about what to set up here.
  • Atom – https://atom.io/
    • Must have packages: Vim Mode, Ex Mode, Atom Fuzzy Grep, Open Recent, Git Plus
    • Helpful packages: Mini Map, Color Picker, Language HAML, Script
    • Pair programming packages: Atom Pair

Terminal controller:

  • tmux – https://tmux.github.io/
    • tmux plugin manager
    • Copy the code below into the ~/.tmux.conf at your home directory.
    • Start tmux and press prefix + I to install the plugins
  • wemux – https://github.com/zolrath/wemux
    • Enable pair programming

Version control:

  • github repo: https://github.com/bcthomas/ggkbase
    • Production is on the master branch
    • Development is on the dev branch
    • There are other development branches, which are more temporary
    • Older stable versions are tagged

Communication tool:

  • Slack – https://slack.com/is
    • Channel: ggKbase
  • Google hangout
  • Screen Hero – https://screenhero.com/

 


tmux configuration file

unbind C-b
set -g prefix C-a
bind C-a send-prefix

set -g history-limit 50000
set-option -g status-position top
set-option -g allow-rename off

setw -g mode-keys vi
#setw -g mouse on
#bind -n WheelUpPane   select-pane -t= \; copy-mode -e \; send-keys -M
#bind -n WheelDownPane select-pane -t= \;                 send-keys -M

# activity window
setw -g monitor-activity on

#################################
bind-key | split-window -h
bind-key - split-window -v

# Shift arrow to switch windows
bind -n S-Left  previous-window
bind -n S-Right next-window

bind -n M-H previous-window
bind -n M-L next-window

# Use VIM control to switch between panes
bind -n M-h select-pane -L
bind -n M-l select-pane -R
bind -n M-k select-pane -U
bind -n M-j select-pane -D


# No delay for escape key press
set -sg escape-time 0

# Reload tmux config
bind r source-file ~/.tmux.conf \; display "Reloaded!"

# THEME
set -g status-bg yellow
set -g status-fg black
set -g window-status-current-bg white
set -g window-status-current-fg blue
set -g window-status-current-attr bold
set -g status-interval 60
set -g status-left-length 30
set -g status-left '#[fg=black bg=yellow](#S) '

##################################

# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'jbnicolai/tmux-fpp'
#set -g @plugin 'tmux-plugins/tmux-copycat'
#set -g @plugin 'tmux-plugins/tmux-open'

# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'