Last active
July 2, 2017 18:06
-
-
Save Nattefrost/6177f37613a31e8ac32cd7d47fcc99a1 to your computer and use it in GitHub Desktop.
Fish functions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Fish functions | |
# for vagrant, postgresql and more on openSUSE | |
function fish_greeting | |
set_color 92FF7F | |
set os_version (cat /etc/os-release) | |
set os_v (echo $os_version | sed 's/\(NAME="openSUSE Leap" \).*/\1/') # catches | |
set os_v (echo $os_v | sed 's/^.*NAME="//') # removes stuff before | |
set os_v (echo $os_v | rev | cut -c 3- | rev) # removes last char " | |
set fish_version (fish -v) | |
echo $fish_version on $os_v | |
set_color FF0 | |
end | |
function fish_prompt --description 'Write out the prompt' | |
if not set -q __fish_git_prompt_show_informative_status | |
set -g __fish_git_prompt_show_informative_status 1 | |
end | |
if not set -q __fish_git_prompt_hide_untrackedfiles | |
set -g __fish_git_prompt_hide_untrackedfiles 1 | |
end | |
if not set -q __fish_git_prompt_color_branch | |
set -g __fish_git_prompt_color_branch magenta --bold | |
end | |
if not set -q __fish_git_prompt_showupstream | |
set -g __fish_git_prompt_showupstream "informative" | |
end | |
if not set -q __fish_git_prompt_char_upstream_ahead | |
set -g __fish_git_prompt_char_upstream_ahead "↑" | |
end | |
if not set -q __fish_git_prompt_char_upstream_behind | |
set -g __fish_git_prompt_char_upstream_behind "↓" | |
end | |
if not set -q __fish_git_prompt_char_upstream_prefix | |
set -g __fish_git_prompt_char_upstream_prefix "" | |
end | |
if not set -q __fish_git_prompt_char_stagedstate | |
set -g __fish_git_prompt_char_stagedstate "●" | |
end | |
if not set -q __fish_git_prompt_char_dirtystate | |
set -g __fish_git_prompt_char_dirtystate "✚" | |
end | |
if not set -q __fish_git_prompt_char_untrackedfiles | |
set -g __fish_git_prompt_char_untrackedfiles "…" | |
end | |
if not set -q __fish_git_prompt_char_conflictedstate | |
set -g __fish_git_prompt_char_conflictedstate "✖" | |
end | |
if not set -q __fish_git_prompt_char_cleanstate | |
set -g __fish_git_prompt_char_cleanstate "✔" | |
end | |
if not set -q __fish_git_prompt_color_dirtystate | |
set -g __fish_git_prompt_color_dirtystate blue | |
end | |
if not set -q __fish_git_prompt_color_stagedstate | |
set -g __fish_git_prompt_color_stagedstate yellow | |
end | |
if not set -q __fish_git_prompt_color_invalidstate | |
set -g __fish_git_prompt_color_invalidstate red | |
end | |
if not set -q __fish_git_prompt_color_untrackedfiles | |
set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal | |
end | |
if not set -q __fish_git_prompt_color_cleanstate | |
set -g __fish_git_prompt_color_cleanstate green --bold | |
end | |
set -l last_status $status | |
if not set -q __fish_prompt_normal | |
set -g __fish_prompt_normal (set_color normal) | |
end | |
set -l color_cwd | |
set -l prefix | |
switch $USER | |
case root toor | |
if set -q fish_color_cwd_root | |
set color_cwd $fish_color_cwd_root | |
else | |
set color_cwd $fish_color_cwd | |
end | |
set suffix '#' | |
case '*' | |
set color_cwd $fish_color_cwd | |
set suffix '%' | |
end | |
# PWD | |
set_color $color_cwd | |
echo -n (prompt_pwd) | |
set_color normal | |
printf '%s ' (__fish_vcs_prompt) | |
if not test $last_status -eq 0 | |
set_color $fish_color_error | |
end | |
echo -n "$suffix " | |
set_color normal | |
end | |
function docker_pg | |
sudo su -c "su postgres -c 'psql -h 0.0.0.0 -p 5432 -U pguser -W -d sc_core'"; | |
end | |
######################## | |
# ssh python anywhere | |
######################## | |
function portfolio_ssh | |
ssh [email protected] | |
end | |
function portfolio_rsync | |
set initial_path (pwd) | |
cd '/home/sc/dev/intech/portfolio_flask/' | |
rsync -rav -e ssh --exclude ./run.py [email protected]:/home/Nattefrost/sumoleague/ | |
cd $initial_path | |
end | |
############## | |
# WEBCAM | |
############## | |
function cam_off | |
echo "Disabling cam" | |
sudo modprobe -r uvcvideo | |
end | |
############## | |
# TOUCHPAD | |
# requires xinput | |
############## | |
function touchpad | |
# touchpad ID is 13, exec 'xinput list' to get it | |
set device_id (xinput list | grep TouchPad | grep -oP '\d+\D+\K\d+' ) | |
echo $device_id | |
set bool $argv[1] | |
set_color yellow | |
switch (echo $bool) | |
case on | |
xinput set-prop $device_id "Device Enabled" 1 | |
echo "Touchpad enabled" | |
case off | |
xinput set-prop $device_id "Device Enabled" 0 | |
echo "Touchpad disabled" | |
case '*' | |
echo "Args : on or off" | |
end | |
set_color FF0 | |
end | |
############## | |
# GIT | |
############## | |
function gstat | |
git status | |
end | |
function gadd | |
git add --all | |
end | |
function gcom | |
git commit -m $argv | |
end | |
############## | |
# Vagrant VMS | |
############## | |
function ha --description "Controls 3 vms HA setup" | |
set cmd $argv[1] | |
set initial_path (pwd) | |
cd /home/sc/dev/vms/ha/ | |
set_color yellow | |
switch (echo $cmd) | |
case start | |
echo "Starting HA setup ..." | |
vagrant up master | |
vagrant up app | |
vagrant up slave | |
case stop | |
echo "Stopping HA setup ..." | |
vagrant halt app | |
vagrant halt slave | |
vagrant halt master | |
case status | |
vagrant status | |
case '*' | |
echo "Args : start stop status" | |
end | |
cd $initial_path | |
set_color FF0 | |
end | |
function vm --description "start or stop vms" | |
set cmd $argv[1] | |
set initial_path (pwd) | |
cd /home/sc/dev/vms/single/ | |
set_color yellow | |
switch (echo $cmd) | |
case start | |
echo "Trying to start vm ..." | |
vagrant up | |
echo "DONE" | |
case stop | |
echo "Trying to stop vm ..." | |
vagrant halt | |
echo "DONE" | |
case status | |
vagrant status | |
case '*' | |
echo "Args : start stop status" | |
end | |
cd $initial_path | |
end | |
############# | |
# METEO | |
############# | |
function meteo | |
curl -s -D - wttr.in | |
end | |
############## | |
# POSTGRESQL | |
############## | |
function pgsql_start | |
sudo su -c "su postgres -c '/usr/bin/pg_ctl -D /var/lib/pgsql/9.4/data/ start' -l '/home/sc/pgsql/logs' " | |
echo "Started" | |
end | |
function pgsql_stop | |
sudo su -c "su postgres -c '/usr/bin/pg_ctl -D /var/lib/pgsql/9.4/data/ stop -m i' " | |
end | |
function pgsql_status | |
sudo su -c "su postgres -c '/usr/bin/pg_ctl -D /var/lib/pgsql/9.4/data/ status' " | |
end | |
function pgsql_connect | |
sudo su -c "su postgres -c 'psql -h 0.0.0.0 -p 5440 -U postgres'"; | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment