From faa6ccab627763159cb67fe11198871375eb8874 Mon Sep 17 00:00:00 2001 From: Joey Payne Date: Wed, 8 Feb 2017 10:28:31 -0700 Subject: [PATCH] Add fish and alacritty config files --- .config/alacritty/alacritty.yml | 224 +++ .config/fish/completions/fisher.fish | 1 + .config/fish/config.fish | 78 + .config/fish/fish_history | 1877 ++++++++++++++++++++ .config/fish/fish_read_history | 10 + .config/fish/fishd.JWorkMachine | 34 + .config/fish/fishfile | 1 + .config/fish/functions/fisher.fish | 2421 ++++++++++++++++++++++++++ .config/fish/functions/getopts.fish | 1 + .config/fish/functions/jd.fish | 3 + 10 files changed, 4650 insertions(+) create mode 100644 .config/alacritty/alacritty.yml create mode 100644 .config/fish/completions/fisher.fish create mode 100644 .config/fish/config.fish create mode 100644 .config/fish/fish_history create mode 100644 .config/fish/fish_read_history create mode 100644 .config/fish/fishd.JWorkMachine create mode 100644 .config/fish/fishfile create mode 100644 .config/fish/functions/fisher.fish create mode 120000 .config/fish/functions/getopts.fish create mode 100644 .config/fish/functions/jd.fish diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml new file mode 100644 index 0000000..c1bf173 --- /dev/null +++ b/.config/alacritty/alacritty.yml @@ -0,0 +1,224 @@ +# Configuration for Alacritty, the GPU enhanced terminal emulator +# Window dimensions in character columns and lines +# (changes require restart) +dimensions: + columns: 80 + lines: 40 + +# The FreeType rasterizer needs to know the device DPI for best results +# (changes require restart) +dpi: + x: 96.0 + y: 96.0 + +# Display tabs using this many cells (changes require restart) +tabspaces: 4 + +# When true, bold text is drawn using the bright variant of colors. +draw_bold_text_with_bright_colors: true + +# Font configuration (changes require restart) +font: + # The normal (roman) font face to use. + normal: + family: monospace # should be "Menlo" or something on macOS. + # Style can be specified to pick a specific face. + # style: Regular + + # The bold font face + bold: + family: monospace # should be "Menlo" or something on macOS. + # Style can be specified to pick a specific face. + # style: Bold + + # The italic font face + italic: + family: monospace # should be "Menlo" or something on macOS. + # Style can be specified to pick a specific face. + # style: Italic + + # Point size of the font + size: 12.0 + # Offset is the extra space around each character. offset.y can be thought of + # as modifying the linespacing, and offset.x as modifying the letter spacing. + offset: + x: 3.0 + y: -7.0 + + # OS X only: use thin stroke font rendering. Thin strokes are suitable + # for retina displays, but for non-retina you probably want this set to + # false. + use_thin_strokes: false + +# Should display the render timer +render_timer: false + +# Use custom cursor colors. If true, display the cursor in the cursor.foreground +# and cursor.background colors, otherwise invert the colors of the cursor. +custom_cursor_colors: false + +# Colors (Tomorrow Night Bright) +colors: + # Default colors + primary: + background: '0x000000' + foreground: '0xeaeaea' + cursor: + background: '0xffffff' + foreground: '0x000000' + + # Normal colors + normal: + black: '0x000000' + red: '0xd54e53' + green: '0xb9ca4a' + yellow: '0xe6c547' + blue: '0x7aa6da' + magenta: '0xc397d8' + cyan: '0x70c0ba' + white: '0x424242' + + # Bright colors + bright: + black: '0x666666' + red: '0xff3334' + green: '0x9ec400' + yellow: '0xe7c547' + blue: '0x7aa6da' + magenta: '0xb77ee0' + cyan: '0x54ced6' + white: '0x2a2a2a' + +# Colors (Solarized Dark) +# colors: +# # Default colors +# primary: +# background: '0x002b36' +# foreground: '0x839496' +# +# # Normal colors +# normal: +# black: '0x073642' +# red: '0xdc322f' +# green: '0x859900' +# yellow: '0xb58900' +# blue: '0x268bd2' +# magenta: '0xd33682' +# cyan: '0x2aa198' +# white: '0xeee8d5' +# +# # Bright colors +# bright: +# black: '0x002b36' +# red: '0xcb4b16' +# green: '0x586e75' +# yellow: '0x657b83' +# blue: '0x839496' +# magenta: '0x6c71c4' +# cyan: '0x93a1a1' +# white: '0xfdf6e3' + +# Key bindings +# +# Each binding is defined as an object with some properties. Most of the +# properties are optional. All of the alphabetical keys should have a letter for +# the `key` value such as `V`. Function keys are probably what you would expect +# as well (F1, F2, ..). The number keys above the main keyboard are encoded as +# `Key1`, `Key2`, etc. Keys on the number pad are encoded `Number1`, `Number2`, +# etc. These all match the glutin::VirtualKeyCode variants. +# +# Possible values for `mods` +# `Command`, `Super` refer to the super/command/windows key +# `Control` for the control key +# `Shift` for the Shift key +# `Alt` and `Option` refer to alt/option +# +# mods may be combined with a `|`. For example, requiring control and shift +# looks like: +# +# mods: Control|Shift +# +# The parser is currently quite sensitive to whitespace and capitalization - +# capitalization must match exactly, and piped items must not have whitespace +# around them. +# +# Either an `action` or `chars` field must be present. `chars` writes the +# specified string every time that binding is activated. These should generally +# be escape sequences, but they can be configured to send arbitrary strings of +# bytes. Possible values of `action` include `Paste` and `PasteSelection`. +key_bindings: + - { key: V, mods: Command, action: Paste } + - { key: C, mods: Command, action: Copy } + - { key: Q, mods: Command, action: Quit } + - { key: W, mods: Command, action: Quit } + - { key: Home, chars: "\x1b[H", mode: ~AppCursor } + - { key: Home, chars: "\x1b[1~", mode: AppCursor } + - { key: End, chars: "\x1b[F", mode: ~AppCursor } + - { key: End, chars: "\x1b[4~", mode: AppCursor } + - { key: PageUp, chars: "\x1b[5~" } + - { key: PageDown, chars: "\x1b[6~" } + - { key: Left, mods: Shift, chars: "\x1b[1;2D" } + - { key: Left, mods: Control, chars: "\x1b[1;5D" } + - { key: Left, mods: Alt, chars: "\x1b[1;3D" } + - { key: Left, chars: "\x1b[D", mode: ~AppCursor } + - { key: Left, chars: "\x1bOD", mode: AppCursor } + - { key: Right, mods: Shift, chars: "\x1b[1;2C" } + - { key: Right, mods: Control, chars: "\x1b[1;5C" } + - { key: Right, mods: Alt, chars: "\x1b[1;3C" } + - { key: Right, chars: "\x1b[C", mode: ~AppCursor } + - { key: Right, chars: "\x1bOC", mode: AppCursor } + - { key: Up, mods: Shift, chars: "\x1b[1;2A" } + - { key: Up, mods: Control, chars: "\x1b[1;5A" } + - { key: Up, mods: Alt, chars: "\x1b[1;3A" } + - { key: Up, chars: "\x1b[A", mode: ~AppCursor } + - { key: Up, chars: "\x1bOA", mode: AppCursor } + - { key: Down, mods: Shift, chars: "\x1b[1;2B" } + - { key: Down, mods: Control, chars: "\x1b[1;5B" } + - { key: Down, mods: Alt, chars: "\x1b[1;3B" } + - { key: Down, chars: "\x1b[B", mode: ~AppCursor } + - { key: Down, chars: "\x1bOB", mode: AppCursor } + - { key: Tab, mods: Shift, chars: "\x1b[Z" } + - { key: F1, chars: "\x1bOP" } + - { key: F2, chars: "\x1bOQ" } + - { key: F3, chars: "\x1bOR" } + - { key: F4, chars: "\x1bOS" } + - { key: F5, chars: "\x1b[15~" } + - { key: F6, chars: "\x1b[17~" } + - { key: F7, chars: "\x1b[18~" } + - { key: F8, chars: "\x1b[19~" } + - { key: F9, chars: "\x1b[20~" } + - { key: F10, chars: "\x1b[21~" } + - { key: F11, chars: "\x1b[23~" } + - { key: F12, chars: "\x1b[24~" } + - { key: Back, chars: "\x7f" } + - { key: Delete, chars: "\x1b[3~", mode: AppKeypad } + - { key: Delete, chars: "\x1b[P", mode: ~AppKeypad } + +# Mouse bindings +# +# Currently doesn't support modifiers. Both the `mouse` and `action` fields must +# be specified. +# +# Values for `mouse`: +# - Middle +# - Left +# - Right +# - Numeric identifier such as `5` +# +# Values for `action`: +# - Paste +# - PasteSelection +# - Copy (TODO) +mouse_bindings: + - { mouse: Middle, action: PasteSelection } + + +# Shell +# +# You can set shell.program to the path of your favorite shell, e.g. /bin/fish. +# Entries in shell.args are passed unmodified as arguments to the shell. +# +#shell: +# program: /bin/bash +# args: +# - --login diff --git a/.config/fish/completions/fisher.fish b/.config/fish/completions/fisher.fish new file mode 100644 index 0000000..61a3810 --- /dev/null +++ b/.config/fish/completions/fisher.fish @@ -0,0 +1 @@ +fisher --complete diff --git a/.config/fish/config.fish b/.config/fish/config.fish new file mode 100644 index 0000000..053e6cd --- /dev/null +++ b/.config/fish/config.fish @@ -0,0 +1,78 @@ +set -U fish_user_paths $HOME/Nim/bin /usr/local/bin $HOME/.nimble/bin $HOME/nimlibs $fish_user_paths + +# Path to Oh My Fish install. +set -q XDG_DATA_HOME + and set -gx OMF_PATH "$XDG_DATA_HOME/omf" + or set -gx OMF_PATH "$HOME/.local/share/omf" + +# Load Oh My Fish configuration. +source $OMF_PATH/init.fish +source ~/bashscripts/jd.fish +set -U fish_prompt_pwd_dir_length 0 +set -x PYTHONSTARTUP "$HOME/.pythonstartup" +set -x LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH:/lib:/usr/lib:/usr/local/lib:/usr/lib/x86_64-linux-gnu:/usr/lib/i386-linux-gnu" + +function prompt_pwd --description 'Print the current working directory, NOT shortened to fit the prompt' + if test "$PWD" != "$HOME" + printf "%s" (echo $PWD|sed -e 's|/private||' -e "s|^$HOME|~|") + else + echo '~' + end + +end + +function disable_trackpad + set ID (xinput --list | grep "ALPS DualPoint TouchPad" | grep -o -P 'id=(\d+)' | sed 's/id=//g') + xinput set-prop "$ID" "Device Enabled" 0 + + set ID (xinput --list | grep "ALPS DualPoint Stick" | grep -o -P 'id=(\d+)' | sed 's/id=//g') + xinput set-prop "$ID" "Device Enabled" 0 +end + +alias grep "grep --color" + +alias ls "ls -h --color=auto" + +function fish_prompt + echo + set_color 777 --bold + printf "(" + + set_color red + printf (prompt_pwd) + + set_color 777 + printf ")" + #printf ")-(" + + #set_color yellow + #printf (ls -1 | wc -l | sed 's: ::g') + #printf " files, " + #printf (ls -lah | grep -m 1 total | sed 's/total //') + #printf "B" + + #set_color 777 + #printf ")" + + echo + + #set_color blue + #printf (date "+%a %b %e %I:%M:%S %Z %Y") + #echo + + set_color 777 + printf "(" + + set_color green + printf (whoami) + printf "@" + printf (hostname) + + set_color 777 + printf ") -> " + +end + +function fish_greeting + fortune -a +end diff --git a/.config/fish/fish_history b/.config/fish/fish_history new file mode 100644 index 0000000..65726e9 --- /dev/null +++ b/.config/fish/fish_history @@ -0,0 +1,1877 @@ +- cmd: vim opportunities/reports/base.py +72 + when: 1484347303 +- cmd: vim opportunities/templates/tabular_report.html +44 + when: 1484347303 +- cmd: docker run --rm -it --link testdesk_mongo_1:db mongo mongo --host db + when: 1484347303 +- cmd: docker-compose -p test_desk start app + when: 1484347303 +- cmd: docker-compose -p test_desk run app + when: 1484347303 +- cmd: jd -s make_rows + when: 1484347303 +- cmd: cd ../desking/ + when: 1484347303 +- cmd: git reset HEAD opportunities/reports/__init__.py opportunities/reports/base.py opportunities/reports/opportunities_summary.py + when: 1484347303 +- cmd: git commit -m "Only show 3 month rolling average on opportunities summary" + when: 1484347303 +- cmd: git reset 23ba8cc39df415bd33060ae2c0b97ea7b6bc1a7d + when: 1484347303 +- cmd: git add -p opportunities/templates/daterange-filters.html + when: 1484347303 +- cmd: git add -p opportunities/views/__init__.py + when: 1484347303 +- cmd: git add -p opportunities/reports/__init__.py + when: 1484347303 +- cmd: git add -p opportunities/reports/base.py + when: 1484347303 +- cmd: git add -p utils/__init__.py + when: 1484347303 +- cmd: git commit -m "Change 90 day reporting period to 3 months" + when: 1484347303 +- cmd: git push -u origin MPDESK-1334 + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports + when: 1484347303 +- cmd: jd -s userListEndpoint + when: 1484347303 +- cmd: jd -p.html -s userListEndpoint + when: 1484347303 +- cmd: jd -s internet + when: 1484347303 +- cmd: vim opportunities/templates/opportunity-details.html +179 + when: 1484347303 +- cmd: jd -s "sales_rep" + when: 1484347303 +- cmd: vim views.py +292 + when: 1484347303 +- cmd: jd -p.js -s "sales_rep" + when: 1484347303 +- cmd: vim opportunities/static/js/components/UserStateWrapper.js +14 + when: 1484347303 +- cmd: vim customers/views.py +201 + when: 1484347303 +- cmd: vim customers/views.py +1062 + when: 1484347303 +- cmd: jd -p.py -s "sales_rep" + when: 1484347303 +- cmd: vim opportunities/views/__init__.py +708 + when: 1484347303 +- cmd: docker-compose run app npm run build + when: 1484347303 +- cmd: jd -s "sales_rep|" + when: 1484347303 +- cmd: git add -p opportunities/static/js/components/UserStateWrapper.js opportunities/templates/opportunity-details.html opportunities/views/ajax.py users.py views.py + when: 1484347303 +- cmd: git commit -m "Add internet sales rep to all sales rep locations" + when: 1484347303 +- cmd: git push -u origin MPDESK-1341 + when: 1484347303 +- cmd: sudo rm -rf /home/joey/Projects/app-appraisal-tool/appraisaltool/static/.webassets-cache + when: 1484347303 +- cmd: docker-compose -p test_desk stop appraisal + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports appraisal + when: 1484347303 +- cmd: docker-compose -p test_desk run appraisal python manage.py add_vehicle_option_data + when: 1484347303 +- cmd: docker-compose -p test_desk run svc python manage.py add_vehicle_option_data + when: 1484347303 +- cmd: docker-compose -p test_desk stop svc + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports svc + when: 1484347303 +- cmd: sudo rm -rf /home/joey/Projects/app-appraisal-tool/appraisaltool/static/.webassets-cache/ + when: 1484347303 +- cmd: sudo rm -rf /home/joey/Projects/desking-tool/desking/static/.webassets-cache/ + when: 1484347303 +- cmd: docker-compose -p test_desk build + when: 1484347303 +- cmd: docker-compose -p test_desk build svc + when: 1484347303 +- cmd: docker-compose -p test_desk run svc py.test tests/test_api.py::ViewsTestCase::test_get_appraisal_has_option_map + when: 1484347303 +- cmd: docker-compose -p test_desk run svc py.test tests/test_api.py::ViewsTestCase::test_get_appraisal_vehicle_has_option_map + when: 1484347303 +- cmd: docker-compose -p test_desk run crm bash + when: 1484347303 +- cmd: jd -s SMI_CRMSVC_BASE_URL + when: 1484347303 +- cmd: ping pdf.cvs.marketapps.strathcom.com + when: 1484347303 +- cmd: /etc/init.d/openvpn stop + when: 1484347303 +- cmd: /etc/init.d/openvpn start + when: 1484347303 +- cmd: ip addr + when: 1484347303 +- cmd: ping pdf.svc.marketapps.strathcom.com + when: 1484347303 +- cmd: lsl + when: 1484347303 +- cmd: jd -s opportunities + when: 1484347303 +- cmd: jd -s "opportunities summary" + when: 1484347303 +- cmd: vim templates/layout.html +168 + when: 1484347303 +- cmd: jd -s "90 day rolling" + when: 1484347303 +- cmd: vim opportunities/templates/daterange-filters.html +114 + when: 1484347303 +- cmd: git diff settings.py + when: 1484347303 +- cmd: git checkout settings.py + when: 1484347303 +- cmd: jd -s "used-vehicles-buyer-report" + when: 1484347303 +- cmd: jd -s "used-vehicle-buyer-report" + when: 1484347303 +- cmd: vim pitch/views.py +103 + when: 1484347303 +- cmd: jd -s "trigger" + when: 1484347303 +- cmd: jd -p.py -s "trigger" + when: 1484347303 +- cmd: jd -p.py -s "created" + when: 1484347303 +- cmd: vim opportunities/signals.py + when: 1484347303 +- cmd: jd -p.py -s "opportunity_created" + when: 1484347303 +- cmd: vim opportunities/signals.py +70 + when: 1484347303 +- cmd: jd -s "dealer_name" + when: 1484347303 +- cmd: jd -p.py -s "dealer_name" + when: 1484347303 +- cmd: git checkout ../.gitignore + when: 1484347303 +- cmd: git checkout -b MPDESK-1334 + when: 1484347303 +- cmd: jd -s "90 day" + when: 1484347303 +- cmd: git branch -D MPDESK-1335 + when: 1484347303 +- cmd: git checkout -b MPDESK-1335 + when: 1484347303 +- cmd: jd -f auth + when: 1484347303 +- cmd: vim opportunities/authorization.py + when: 1484347303 +- cmd: vim opportunities/templates/daterange-filters.html + when: 1484347303 +- cmd: git checkout email_capture + when: 1484347303 +- cmd: git pull --help + when: 1484347303 +- cmd: git log --help + when: 1484347303 +- cmd: git log --full-diff + when: 1484347303 +- cmd: git log --show + when: 1484347303 +- cmd: git diff ecc0bb570c5d36c27541b28a922593fb38128c15^ ecc0bb570c5d36c27541b28a922593fb38128c15 + when: 1484347303 +- cmd: git checkout -b MPDESK-1341 + when: 1484347303 +- cmd: jd -f export.html + when: 1484347303 +- cmd: vim customers/templates/export.html + when: 1484347303 +- cmd: vim customers/managers.py + when: 1484347303 +- cmd: git checkout opportunities/views/ajax.py users.py + when: 1484347303 +- cmd: git reset 3051088b2ccfd7b5e53205b61a430dd4834efb35 + when: 1484347303 +- cmd: vim opportunities/templates/list-of-appraisals.html + when: 1484347303 +- cmd: git checkout MPDESK-1334 + when: 1484347303 +- cmd: git add -p opportunities/reports/opportunities_summary.py + when: 1484347303 +- cmd: git commit -m "Fix rounding with decimals" + when: 1484347303 +- cmd: git checkout MPDESK-1341 + when: 1484347303 +- cmd: git pull --rebase origin master + when: 1484347303 +- cmd: vim views.py + when: 1484347303 +- cmd: git add -p views.py + when: 1484347303 +- cmd: git commit -m "Fix issues in code review" + when: 1484347303 +- cmd: vim opportunities/templates/list-of-appraisals.html opportunities/views/__init__.py opportunities/views/ajax.py pitch/models.py pitch/views.py services/inventory.py -p + when: 1484347303 +- cmd: vim desking/opportunities/managers.py + when: 1484347303 +- cmd: jd -s "odometer" + when: 1484347303 +- cmd: jd -p.html -s "odometer" + when: 1484347303 +- cmd: jd -p.html -s "blank" + when: 1484347303 +- cmd: jd -f pdf + when: 1484347303 +- cmd: vim ../.gitignore + when: 1484347303 +- cmd: vim opportunities/templates/list-of-appraisals.html + when: 1484347303 +- cmd: vim pitch/views.py + when: 1484347303 +- cmd: vim settings.py + when: 1484347303 +- cmd: cd market-crm/ + when: 1484347303 +- cmd: cd market_crm/ + when: 1484347303 +- cmd: jd -s "make_query" + when: 1484347303 +- cmd: vim opportunities/dao.py +66 + when: 1484347303 +- cmd: jd -s "/appraisals" + when: 1484347303 +- cmd: jd -s "appraisals" + when: 1484347303 +- cmd: vim tasks/triggers.py + when: 1484347303 +- cmd: jd -s "opportunity_created" + when: 1484347303 +- cmd: vim tasks/signals.py + when: 1484347303 +- cmd: jd -p.py -s dealer_name + when: 1484347303 +- cmd: vim opportunities/dao.py +513 + when: 1484347303 +- cmd: vim opportunities/signals.py +50 + when: 1484347303 +- cmd: git checkout -b MPCRM-141 + when: 1484347303 +- cmd: git add -p opportunities/dao.py opportunities/signals.py ../tests/test_dao.py + when: 1484347303 +- cmd: jd -s update_opportunities_for_dealer + when: 1484347303 +- cmd: git add -p ../tests/test_dao.py + when: 1484347303 +- cmd: git commit -m "Make dealer_name update when opportunity updated" + when: 1484347303 +- cmd: git push -u origin MPCRM-141 + when: 1484347303 +- cmd: git add -p opportunities/dao.py ../tests/test_dao.py + when: 1484347303 +- cmd: vim opportunities/dao.py + when: 1484347303 +- cmd: git add -p ../manage.py + when: 1484347303 +- cmd: git checkout -b "Update manage command" + when: 1484347303 +- cmd: git checkout -b update_manage_command + when: 1484347303 +- cmd: git add -p manage.py + when: 1484347303 +- cmd: git add -p ../manage.py + when: 1484347303 +- cmd: git commit -m "Fix manage command for dealer name import" + when: 1484347303 +- cmd: git push -u origin update_manage_command + when: 1484347303 +- cmd: git add -p ../docker-compose.yml + when: 1484347303 +- cmd: git add config.py + when: 1484347303 +- cmd: git add customers/dao.py + when: 1484347303 +- cmd: git add ../docker-compose.yml config.py + when: 1484347303 +- cmd: git add ../docker-compose.yml + when: 1484347303 +- cmd: git rebase --continue + when: 1484347303 +- cmd: vim config.py + when: 1484347303 +- cmd: git checkout -b email_capture_rebased + when: 1484347303 +- cmd: git push -u origin email_capture_rebased + when: 1484347303 +- cmd: git push origin --delete email_capture_rebased + when: 1484347303 +- cmd: git branch -D email_capture_rebased + when: 1484347303 +- cmd: jd -s load_mapping + when: 1484347303 +- cmd: vim customers/dao.py +699 + when: 1484347303 +- cmd: git checkout customers/api.py + when: 1484347303 +- cmd: git reset --hard HEAD + when: 1484347303 +- cmd: git reset --hard HEAD origin/email_capture + when: 1484347303 +- cmd: git reset --hard origin/email_capture + when: 1484347303 +- cmd: vim customers/api.py +935 + when: 1484347303 +- cmd: jd -s process_message + when: 1484347303 +- cmd: vim queue/worker/customer_record_updates.py +16 + when: 1484347303 +- cmd: jd -s extract + when: 1484347303 +- cmd: vim customers/dao.py + when: 1484347303 +- cmd: vim customers/api.py + when: 1484347303 +- cmd: git add -p ../.dockerignore + when: 1484347303 +- cmd: ls sql\\ queries/ + when: 1484347303 +- cmd: du -hs sql\\ queries/ + when: 1484347303 +- cmd: jd -s customer_information.sql + when: 1484347303 +- cmd: git commit -m "Remove docker ignore tests" + when: 1484347303 +- cmd: vim .dockerignore + when: 1484347303 +- cmd: jd -s "3pa" + when: 1484347303 +- cmd: jd -s test_client + when: 1484347303 +- cmd: git checkout -b docker_cloud_build_test + when: 1484347303 +- cmd: git add -p README.rst + when: 1484347303 +- cmd: git commit -m "Add misc text" + when: 1484347303 +- cmd: git push -u origin docker_cloud_build_test + when: 1484347303 +- cmd: cd ../../desking-tool/desking/ + when: 1484347303 +- cmd: git push --set-upstream origin MPDESK-1300 + when: 1484347303 +- cmd: git pull --rebase + when: 1484347303 +- cmd: docker-compose --hel + when: 1484347303 +- cmd: jd -f vehicle + when: 1484347303 +- cmd: git checkout -b MPDESK-1311 + when: 1484347303 +- cmd: jd -s get_pitch_vehicle + when: 1484347303 +- cmd: jd -s appraisal + when: 1484347303 +- cmd: git checkout MPDESK-1300 + when: 1484347303 +- cmd: jd -s cvs + when: 1484347303 +- cmd: vim docker-compose.yml +27 + when: 1484347303 +- cmd: git checkout docker-compose.yml + when: 1484347303 +- cmd: git checkout MPDESK-1314 + when: 1484347303 +- cmd: jd -s "list-of-appraisals" + when: 1484347303 +- cmd: vim desking/opportunities/views/ajax.py +274 + when: 1484347303 +- cmd: jd -s detail-appraisals.html + when: 1484347303 +- cmd: jd -s opportunity-details.html + when: 1484347303 +- cmd: jd -f list-of + when: 1484347303 +- cmd: vim desking/opportunities/templates/list-of-appraisals.html + when: 1484347303 +- cmd: jd -f "format_price" + when: 1484347303 +- cmd: jd -s "format_price" + when: 1484347303 +- cmd: jd -s get_appraisal_by_id + when: 1484347303 +- cmd: git diff desking/opportunities/views/ajax.py + when: 1484347303 +- cmd: git checkout desking/tasks/models.py + when: 1484347303 +- cmd: git update-index --help + when: 1484347303 +- cmd: git update-index --assume-unchanged desking/settings.py docker-compose.yml + when: 1484347303 +- cmd: git stash clear + when: 1484347303 +- cmd: git update-index --no-assume-unchanged desking/settings.py docker-compose.yml + when: 1484347303 +- cmd: git ls-files -v | grep '^[hsmrck?]' | cut -c 3- + when: 1484347303 +- cmd: git checkout -b MPDESK-1328 + when: 1484347303 +- cmd: vim .gitignore + when: 1484347303 +- cmd: jd -f trigger + when: 1484347303 +- cmd: docker-compose -p test_desk run app lessc desking/pitch/static/less/guest-sheet-pdf.less > ../pitch/static/css/guest-sheet-pdf.css + when: 1484347303 +- cmd: docker-compose -p test_desk run app lessc pitch/static/less/guest-sheet-pdf.less > pitch/static/css/guest-sheet-pdf.css + when: 1484347303 +- cmd: docker-compose -p test_desk run app lessc desking/pitch/static/less/guest-sheet-pdf.less > pitch/static/css/guest-sheet-pdf.css + when: 1484347303 +- cmd: vim pitch/static/css/guest-sheet-pdf.css + when: 1484347303 +- cmd: jd -s "import pysmi" + when: 1484347303 +- cmd: jd -s "appraisal_id" + when: 1484347303 +- cmd: jd -s "appraisal details" + when: 1484347303 +- cmd: vim opportunities/templates/list-of-appraisals.html +37 + when: 1484347303 +- cmd: git diff ../docker-compose.yml + when: 1484347303 +- cmd: jd -s "daterange-filters" + when: 1484347303 +- cmd: jd -s "tabular_report" + when: 1484347303 +- cmd: vim opportunities/views/__init__.py +979 + when: 1484347303 +- cmd: jd -s conversion + when: 1484347303 +- cmd: jd -p.py -s conversion + when: 1484347303 +- cmd: vim opportunities/reports/opportunities_summary.py +26 + when: 1484347303 +- cmd: vim services/crm.py + when: 1484347303 +- cmd: git stash apply + when: 1484347303 +- cmd: jd -s "book appointment" + when: 1484347303 +- cmd: vim opportunities/static/js/components/appointments.jsx +379 + when: 1484347303 +- cmd: vim customers/views.py +1110 + when: 1484347303 +- cmd: vim opportunities/signals.py +9 + when: 1484347303 +- cmd: vim opportunities/managers.py +178 + when: 1484347303 +- cmd: vim opportunities/managers.py +968 + when: 1484347303 +- cmd: jd -f pdf-used + when: 1484347303 +- cmd: vim ../../market-crm/docker-compose.yml + when: 1484347303 +- cmd: vim ../.dockerignore + when: 1484347303 +- cmd: git add ../docker-compose.test.yml + when: 1484347303 +- cmd: git commit -m "Remove volume for docker cloud" + when: 1484347303 +- cmd: docker-compose -f ../docker-compose.test.yml + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml + when: 1484347303 +- cmd: cat ../docker-compose.test.yml + when: 1484347303 +- cmd: sudo chown joey:joey -R . + when: 1484347303 +- cmd: jd -s 3pa + when: 1484347303 +- cmd: jd -s opportunity_can + when: 1484347303 +- cmd: vim ../.dockerignore + when: 1484347303 +- cmd: jd -p.html -s "deal #:" + when: 1484347303 +- cmd: git diff b241e89c11dd1b2e4f7db7aac91cf07cea308caf^ b241e89c11dd1b2e4f7db7aac91cf07cea308caf + when: 1484347303 +- cmd: jd -f pitch/static/less/vehicle-report-pdf.less + when: 1484347303 +- cmd: vim pitch/static/less/vehicle-report-pdf.less + when: 1484347303 +- cmd: git add -p opportunities/templates/list-of-appraisals.html pitch/models.py pitch/static/less/vehicle-report-pdf.less pitch/templates/printable/pdf-used-vehicle-buyer-report.html pitch/views.py + when: 1484347303 +- cmd: vim ../manage.py + when: 1484347303 +- cmd: git checkout MPDESK-1311 + when: 1484347303 +- cmd: git add -p opportunities/templates/list-of-appraisals.html + when: 1484347303 +- cmd: git add -p pitch/models.py pitch/views.py + when: 1484347303 +- cmd: git commit -m "Remove filled kwarg" + when: 1484347303 +- cmd: vim ../tests/__init__.py + when: 1484347303 +- cmd: cd ../tests/ + when: 1484347303 +- cmd: jd -s current_user + when: 1484347303 +- cmd: vim test_appraisal_service.py + when: 1484347303 +- cmd: jd -s "self.client.get" + when: 1484347303 +- cmd: vim test_reports.py +33 + when: 1484347303 +- cmd: vim ../../go-ops/desking-tool/docker-compose.yml + when: 1484347303 +- cmd: git stash --help + when: 1484347303 +- cmd: git stash show stash@{1} + when: 1484347303 +- cmd: git stash show stash@{3} + when: 1484347303 +- cmd: git diff desking/opportunities/reports/opportunities_summary.py + when: 1484347303 +- cmd: git checkout + when: 1484347303 +- cmd: vim docker-compose.yml + when: 1484347303 +- cmd: vim docker-compose. + when: 1484347303 +- cmd: git reset HEAD .gitignore desking/opportunities/views/__init__.py docker-compose.yml + when: 1484347303 +- cmd: git reset HEAD desking/opportunities/reports/opportunities_summary.py + when: 1484347303 +- cmd: git diff .gitignore + when: 1484347303 +- cmd: git stash list + when: 1484347303 +- cmd: git stash apply stash@{3} + when: 1484347303 +- cmd: git checkout . + when: 1484347303 +- cmd: cd Projects/market-crm/ + when: 1484347303 +- cmd: git commit -m "Add compose test file for docker cloud" + when: 1484347303 +- cmd: cd app-appraisal-tool/ + when: 1484347303 +- cmd: vim setup.py + when: 1484347303 +- cmd: docker-compose run app py.test tests/ + when: 1484347303 +- cmd: git diff + when: 1484347303 +- cmd: jd -s attachment + when: 1484347303 +- cmd: sudo chown -R joey:joey . + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml --help run sut + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml help run sut + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml help run + when: 1484347303 +- cmd: docker-compose --help + when: 1484347303 +- cmd: cd smi-auth/ + when: 1484347303 +- cmd: git diff + when: 1484347303 +- cmd: git add .dockerignore docker-compose.test.yml + when: 1484347303 +- cmd: git reset HEAD + when: 1484347303 +- cmd: git commit -m "Add dockerignore so tests can run" + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/campaign-builder + when: 1484347303 +- cmd: cd campaign-builder/ + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/smi-leads + when: 1484347303 +- cmd: cd smi- + when: 1484347303 +- cmd: cd smi-leads/ + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/goauto-gocard-rewards + when: 1484347303 +- cmd: cd goauto-gocard-rewards/ + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/goauto-concierge + when: 1484347303 +- cmd: cd goauto-concierge/ + when: 1484347303 +- cmd: git clone git@github.com/Strathcom/app-group-inventory-view + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/app-group-inventory-view + when: 1484347303 +- cmd: cd app-group-inventory-view/ + when: 1484347303 +- cmd: cp fig.yml docker-compose.test.yml + when: 1484347303 +- cmd: cd app- + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/vin-attachment-service + when: 1484347303 +- cmd: cp fig.yml docker-compose.yml + when: 1484347303 +- cmd: git checkout developmet + when: 1484347303 +- cmd: git pulll + when: 1484347303 +- cmd: vim docker-compose.test.yml + when: 1484347303 +- cmd: git reset HEAD .dockerignore + when: 1484347303 +- cmd: git commit -m "Add docker test file for docker cloud" + when: 1484347303 +- cmd: git add .dockerignore + when: 1484347303 +- cmd: git commit -m "Add docker ignore" + when: 1484347303 +- cmd: git commit -m "Change app to sut" + when: 1484347303 +- cmd: git commit -m "Remove unnecessary lines from docker-compose test file" + when: 1484347303 +- cmd: vim README.rst + when: 1484347303 +- cmd: vim tests/__ + when: 1484347303 +- cmd: vim tests/__init__.py + when: 1484347303 +- cmd: vim group_inventory/views/__init__.py + when: 1484347303 +- cmd: jd -s "/all" + when: 1484347303 +- cmd: vim group_inventory/views/group.py + when: 1484347303 +- cmd: jd -s group_inventory_env + when: 1484347303 +- cmd: vim group_inventory/views/group.py + when: 1484347303 +- cmd: cd go + when: 1484347303 +- cmd: vim vin-attachment-service/fig.yml + when: 1484347303 +- cmd: cd ../smi-auth/ + when: 1484347303 +- cmd: rm -rf tests/__pycache__/ + when: 1484347303 +- cmd: rm -rf smiauthsvc/clients/office365.pyc smiauthsvc/clients/notification.pyc smiauthsvc/clients/sales_history.pyc smiauthsvc/clients/__init__.pyc smiauthsvc/serialization.pyc smiauthsvc/authentication.pyc smiauthsvc/users.pyc smiauthsvc/utils.pyc smiauthsvc/helpers.pyc smiauthsvc/dealers.pyc smiauthsvc/api.pyc smiauthsvc/models.pyc smiauthsvc/account.pyc smiauthsvc/application.pyc smiauthsvc/webadmin.pyc smiauthsvc/settings.pyc smiauthsvc/__init__.pyc + when: 1484347303 +- cmd: touch tests/__init__.py + when: 1484347303 +- cmd: rm tests/__init__.py + when: 1484347303 +- cmd: vim /home/joey/Projects/smi-auth/tests/test_webauth.py + when: 1484347303 +- cmd: ls smiauthsvc/ + when: 1484347303 +- cmd: ls src/ + when: 1484347303 +- cmd: python setup.py test + when: 1484347303 +- cmd: fig + when: 1484347303 +- cmd: git commit -m "Test using nosetests instead of py.test" + when: 1484347303 +- cmd: cd ../smi-leads/ + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml build sut + when: 1484347303 +- cmd: cp docker-compose.yml docker-compose.test.yml + when: 1484347303 +- cmd: git branch docker_cloud + when: 1484347303 +- cmd: git reset d2565a80fd749f67ce59013f07c932ad24e63a2c + when: 1484347303 +- cmd: rm docker-compose.test.yml + when: 1484347303 +- cmd: jd -s gocard_environmet + when: 1484347303 +- cmd: jd -s gocard_environment + when: 1484347303 +- cmd: vim gocard/settings.py +86 + when: 1484347303 +- cmd: git add -p docker-compose. + when: 1484347303 +- cmd: git add -p docker-compose.test.yml + when: 1484347303 +- cmd: cd ../market-sms/ + when: 1484347303 +- cmd: git add -pDockerfile + when: 1484347303 +- cmd: git add -p Dockerfile + when: 1484347303 +- cmd: git commit -m "Add missing header for building pip libraries" + when: 1484347303 +- cmd: cd ../app-group-inventory-view/ + when: 1484347303 +- cmd: ls tests/ + when: 1484347303 +- cmd: jd test + when: 1484347303 +- cmd: vim tests/test_views.py + when: 1484347303 +- cmd: py.test tests/ + when: 1484347303 +- cmd: vim .dockerignore + when: 1484347303 +- cmd: jd -f .pyc + when: 1484347303 +- cmd: rm -rf tests/__pycache__ + when: 1484347303 +- cmd: rm group_inventory/cbb_utils.pyc group_inventory/banksheets/tdfinance.pyc group_inventory/banksheets/rifco.pyc group_inventory/banksheets/scotiabank.pyc group_inventory/banksheets/carfinco.pyc group_inventory/banksheets/base.pyc group_inventory/banksheets/goauto.pyc group_inventory/banksheets/__init__.pyc group_inventory/application.pyc group_inventory/settings.pyc group_inventory/__init__.pyc + when: 1484347303 +- cmd: git pull --rebase origin development + when: 1484347303 +- cmd: jd -s group_inventory_debug + when: 1484347303 +- cmd: docker-compose run app + when: 1484347303 +- cmd: docker-compose run --service-ports app + when: 1484347303 +- cmd: git add Dockerfile + when: 1484347303 +- cmd: git reset HEAD Dockerfile + when: 1484347303 +- cmd: git add -p Dockerfile + when: 1484347303 +- cmd: git commit -m "Add missing apt install" + when: 1484347303 +- cmd: git add -p requirements.txt + when: 1484347303 +- cmd: git commit -m "Add pytest to requirements" + when: 1484347303 +- cmd: git reset --hard f58fe9da3718333650873d2c0c36becabb91ac2f + when: 1484347303 +- cmd: git add docker-compose.test.yml docker-compose.yml + when: 1484347303 +- cmd: git commit -m "Add docker compose file and test file" + when: 1484347303 +- cmd: cd ../app-inventory/ + when: 1484347303 +- cmd: jd -f analytics + when: 1484347303 +- cmd: vim tests/test_analytics.py + when: 1484347303 +- cmd: rm tests/test_analytics.py + when: 1484347303 +- cmd: vim tests/test_trader_upsell.py + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml build + when: 1484347303 +- cmd: git rm tests/test_analytics.py + when: 1484347303 +- cmd: git add tests/test_trader_upsell.py + when: 1484347303 +- cmd: git add -p docker-compose.test.yml + when: 1484347303 +- cmd: git add -m "Add docker compose test file for docker cloud" + when: 1484347303 +- cmd: git push -u origin development + when: 1484347303 +- cmd: docker --version + when: 1484347303 +- cmd: docker-compose --version + when: 1484347303 +- cmd: ID=$(xinput --list | grep "DualPoint TouchPad" | grep -o -P 'id=(\\d+)' | sed 's/id=//g') + when: 1484347303 +- cmd: ID=$(xinput --list | grep "ALPS DualPoint Stick" | grep -o -P 'id=(\\d+)' | sed 's/id=//g') + when: 1484347303 +- cmd: cd vin-attachment-service/ + when: 1484347303 +- cmd: vim fig.yml + when: 1484347303 +- cmd: vim fabfile.py + when: 1484347303 +- cmd: pip install dockercloud + when: 1484347303 +- cmd: pip install python-dockercloud + when: 1484347303 +- cmd: docker login + when: 1484347303 +- cmd: python test.py + when: 1484347303 +- cmd: cp test.py listen.py + when: 1484347303 +- cmd: cd gocard/ + when: 1484347303 +- cmd: jd -prequirements.txt -s ndg-httpsclient + when: 1484347303 +- cmd: cd go-ops/ + when: 1484347303 +- cmd: cd ../../app-inventory/ + when: 1484347303 +- cmd: ls bin/ + when: 1484347303 +- cmd: vim bin/manage_cbb_cron + when: 1484347303 +- cmd: cd Projects/go-ops/desking-tool/ + when: 1484347303 +- cmd: docker-compose run mongo bash + when: 1484347303 +- cmd: docker-compose run app bash + when: 1484347303 +- cmd: source ../desking-tool-staging/env/bin/activate + when: 1484347303 +- cmd: docker-compose run crm bash + when: 1484347303 +- cmd: PACKAGE_NAME=${1:package} + when: 1484347303 +- cmd: echo $PACKAGE_NAME + when: 1484347303 +- cmd: bash test.bash stuff + when: 1484347303 +- cmd: vim test.bash + when: 1484347303 +- cmd: bash test.bash + when: 1484347303 +- cmd: vim docker_cloud_aws.key + when: 1484347303 +- cmd: cd Projects/go-ops/gocard/ + when: 1484347303 +- cmd: l + when: 1484347303 +- cmd: vim docker-env.sh + when: 1484347303 +- cmd: vim /usr/local/lib/python2.7/dist-packages/docker/api/image.py + when: 1484347303 +- cmd: vim /usr/local/lib/python2.7/dist-packages/docker/api/image.py +172 + when: 1484347303 +- cmd: vim /usr/local/lib/python2.7/dist-packages/docker/auth/__init__.py + when: 1484347303 +- cmd: vim /usr/local/lib/python2.7/dist-packages/docker/auth/auth.py + when: 1484347303 +- cmd: ls ../.machine/ + when: 1484347303 +- cmd: vim ../.machine/machine.sh + when: 1484347303 +- cmd: pip uninstall ndg-httpsclient + when: 1484347303 +- cmd: docker-compose pull + when: 1484347303 +- cmd: cd Projects/go-ops/ + when: 1484347303 +- cmd: cd app-inventory/ + when: 1484347303 +- cmd: source docker-env.sh + when: 1484347303 +- cmd: vim /etc/cron.daily/apport + when: 1484347303 +- cmd: docker-compose up + when: 1484347303 +- cmd: docker-compose build + when: 1484347303 +- cmd: docker-compose up -d + when: 1484347303 +- cmd: docker-compose run svc python manage.py db upgrade + when: 1484347303 +- cmd: docker-compose stop + when: 1484347303 +- cmd: git add docker-compose.yml -p + when: 1484347303 +- cmd: git add docker-compose.yml + when: 1484347303 +- cmd: rm fig.yml + when: 1484347303 +- cmd: git rm fig.yml + when: 1484347303 +- cmd: git commit -m "Replace fig.yml with docker-compose.yml" + when: 1484347303 +- cmd: git add docker-compose.test.yml + when: 1484347303 +- cmd: ping goauto-dap.stcore.net + when: 1484347303 +- cmd: git push -u origin docker_cloud + when: 1484347303 +- cmd: git add tests/test_dap.py -p + when: 1484347303 +- cmd: git add docker-compose.test.yml + when: 1484347303 +- cmd: git reset HEAD tests/test_dap.py + when: 1484347303 +- cmd: git commit -m "Add docker compose test file for docker cloud" + when: 1484347303 +- cmd: git add docker-compose.test.yml -p + when: 1484347303 +- cmd: cd ../desking-tool/ + when: 1484347303 +- cmd: jd -s "send_nsf_report" + when: 1484347303 +- cmd: cd ../goauto-concierge/ + when: 1484347303 +- cmd: vim manage.py + when: 1484347303 +- cmd: jd -s "send_nsf" + when: 1484347303 +- cmd: vim concierge/notifications.py + when: 1484347303 +- cmd: watch -n 1 free -m + when: 1484347303 +- cmd: cd Projects/vin-attachment-service/ + when: 1484347303 +- cmd: vim tests/test_api.py + when: 1484347303 +- cmd: vim tests/test_dap.py + when: 1484347303 +- cmd: cd ../app-appraisal-tool/ + when: 1484347303 +- cmd: cd ../go-ops/app-appraisal-tool/ + when: 1484347303 +- cmd: vi docker-env.sh + when: 1484347303 +- cmd: vim deploy.sh + when: 1484347303 +- cmd: cd ../../desking-tool/ + when: 1484347303 +- cmd: cd ../../go-ops/app-appraisal-tool/ + when: 1484347303 +- cmd: nautilus . + when: 1484347303 +- cmd: git clone git@github.com:Strathcom/npv-inventory-manager + when: 1484347303 +- cmd: cd npv-inventory-manager/ + when: 1484347303 +- cmd: docker-compose run npv build + when: 1484347303 +- cmd: ls npv + when: 1484347303 +- cmd: git blame docker-compose.yml + when: 1484347303 +- cmd: git diff f63e9a71^ f63e9a71 + when: 1484347303 +- cmd: docker-compose run app build + when: 1484347303 +- cmd: docker-compose build app + when: 1484347303 +- cmd: which disable_trackpad + when: 1484347303 +- cmd: vim ~/.bash_aliases + when: 1484347303 +- cmd: xinput --list + when: 1484347303 +- cmd: xinput set-prop 4 "Device Enabled" 0 + when: 1484347303 +- cmd: sudo xinput set-prop 12 "Device Enabled" 0 + when: 1484347303 +- cmd: source ~/bashscripts/disable_trackpad.bash + when: 1484347303 +- cmd: vim attachments/application.py + when: 1484347303 +- cmd: vim attachments/__init__.py + when: 1484347303 +- cmd: vim attachments/service.py + when: 1484347303 +- cmd: git checkout docker_cloud + when: 1484347303 +- cmd: git checkout -b docker_cloud + when: 1484347303 +- cmd: cd ../goauto-recon/ + when: 1484347303 +- cmd: cd ../goauto-gocard-rewards/ + when: 1484347303 +- cmd: docker-compose run gocard + when: 1484347303 +- cmd: cd Projects/ + when: 1484347303 +- cmd: mkdir docker_cloud_api + when: 1484347303 +- cmd: cd docker_cloud_api/ + when: 1484347303 +- cmd: vim test.py + when: 1484347303 +- cmd: vim *.py -p + when: 1484347303 +- cmd: git checkout -b docker_cloud_lambda + when: 1484347303 +- cmd: vim list_containers.py + when: 1484347303 +- cmd: mv api_key.txt api_env.bash + when: 1484347303 +- cmd: vim api_env.bash + when: 1484347303 +- cmd: git add lambda_function.py + when: 1484347303 +- cmd: git add api_env.bash + when: 1484347303 +- cmd: git add make_package.bash + when: 1484347303 +- cmd: git add README.md + when: 1484347303 +- cmd: git add requirements.txt + when: 1484347303 +- cmd: git commit -m "Initial docker cloud lambda" + when: 1484347303 +- cmd: vim lambda_function.py + when: 1484347303 +- cmd: python listen.py + when: 1484347303 +- cmd: vim README.md + when: 1484347303 +- cmd: git add -p README.md lambda_function.py + when: 1484347303 +- cmd: git commit -m "Use spaces instead of commas because aws doesn't like commas" + when: 1484347303 +- cmd: git push -u origin docker_cloud_lambda + when: 1484347303 +- cmd: git commit -m "Fix case error" + when: 1484347303 +- cmd: git add -p lambda_function.py + when: 1484347303 +- cmd: git commit --amend + when: 1484347303 +- cmd: git push --force + when: 1484347303 +- cmd: python test.py + when: 1484347303 +- cmd: pip install dockercloud -t . + when: 1484347303 +- cmd: pip install python-dockercloud -t . + when: 1484347303 +- cmd: vim api_key.txt + when: 1484347303 +- cmd: mv test.py lambda_function.py + when: 1484347303 +- cmd: rm package.zip + when: 1484347303 +- cmd: zip -r package.zip . + when: 1484347303 +- cmd: rm test.pyc + when: 1484347303 +- cmd: cp api_key.txt listen.py lambda_function.py ../ + when: 1484347303 +- cmd: rm -rf * + when: 1484347303 +- cmd: cp ../api_key.txt ../listen.py ../lambda_function.py . + when: 1484347303 +- cmd: virtualenv env + when: 1484347303 +- cmd: rm -rf env/ + when: 1484347303 +- cmd: vim api_key.txt + when: 1484347303 +- cmd: vim make_package.bash + when: 1484347303 +- cmd: chmod 755 make_package.bash + when: 1484347303 +- cmd: vim package.zip + when: 1484347303 +- cmd: unzip package.zip + when: 1484347303 +- cmd: ls package + when: 1484347303 +- cmd: rm -rf package + when: 1484347303 +- cmd: cp listen.py list_services.py + when: 1484347303 +- cmd: vim list_services.py + when: 1484347303 +- cmd: python list_services.py + when: 1484347303 +- cmd: python list_containers.py + when: 1484347303 +- cmd: s + when: 1484347303 +- cmd: SERVICE_NICKNAMES=stuff,junk python lambda_function.py + when: 1484347303 +- cmd: API_USER=dasf API_KEY=adfdsf SERVICE_NICKNAMES=stuff,junk python lambda_function.py + when: 1484347303 +- cmd: API_USER=dasf API_KEY=adfdsf SERVICE_NICKNAMES='stuff,junk, balls' python lambda_function.py + when: 1484347303 +- cmd: API_USER=dasf API_KEY=adfdsf SERVICE_NICKNAMES='stuff' python lambda_function.py + when: 1484347303 +- cmd: API_USER=dasf API_KEY=adfdsf SERVICE_NICKNAMES='' python lambda_function.py + when: 1484347303 +- cmd: API_USER=dasf API_KEY=adfdsf SERVICE_NICKNAMES='sasdf,adsffdas' python lambda_function.py + when: 1484347303 +- cmd: vim requirements.txt + when: 1484347303 +- cmd: rm start_docker_cloud_service.zip + when: 1484347303 +- cmd: vim make_package.bash + when: 1484347303 +- cmd: vim README.md + when: 1484347303 +- cmd: ./make_package.bash + when: 1484347303 +- cmd: SERVICE_NICKNAMES=gocard-indexing API_USER=mrpayne API_KEY=1b37a8b4-9649-4912-b370-fbccd41e8543 python lambda_function.py + when: 1484347303 +- cmd: SERVICE_NICKNAMES=gocard-indexing API_USER=mrpayne API_KEY=1b37a8b4-9649-4912-b370-fbccd41e8543 SERVICE_STACKNAME=Gocard python lambda_function.py + when: 1484347303 +- cmd: mkdir ../go-ops/docker-cloud-lambda + when: 1484347303 +- cmd: cp * ../go-ops/docker-cloud-lambda/ + when: 1484347303 +- cmd: cd ../go-ops/docker-cloud-lambda/ + when: 1484347303 +- cmd: vim listen.py + when: 1484347303 +- cmd: ls -l /etc/cron.daily/ + when: 1484347303 +- cmd: git clone git@github.com:jyapayne/python-dockercloud + when: 1484347303 +- cmd: cd python-dockercloud/ + when: 1484347303 +- cmd: cd dockercloud/ + when: 1484347303 +- cmd: cd api/ + when: 1484347303 +- cmd: jd -s on_message + when: 1484347303 +- cmd: vim base.py + when: 1484347303 +- cmd: git checkout switch_to_event + when: 1484347303 +- cmd: git checkout -b switch_to_event + when: 1484347303 +- cmd: ls ../ + when: 1484347303 +- cmd: ls ../../ + when: 1484347303 +- cmd: cd ../../tests/ + when: 1484347303 +- cmd: jd -s events + when: 1484347303 +- cmd: jd -s event + when: 1484347303 +- cmd: cd - + when: 1484347303 +- cmd: git add -p events.py + when: 1484347303 +- cmd: git commit -m "Fix #23: Use event instead of message" + when: 1484347303 +- cmd: git push --set-upstream origin switch_to_event + when: 1484347303 +- cmd: git checkout master + when: 1484347303 +- cmd: git checkout ctrlc_forever + when: 1484347303 +- cmd: git checkout -b ctrlc_forever + when: 1484347303 +- cmd: vim events.py + when: 1484347303 +- cmd: cd ../../ + when: 1484347303 +- cmd: python + when: 1484347303 +- cmd: cd Projects/go-ops/app-appraisal-tool/ + when: 1484347303 +- cmd: diff docker-compose.yml ~/Projects/app-appraisal-tool/docker-compose.yml + when: 1484347303 +- cmd: color-diff docker-compose.yml ~/Projects/app-appraisal-tool/docker-compose.yml + when: 1484347303 +- cmd: sudo apt install colordiff + when: 1484347303 +- cmd: colordiff docker-compose.yml ~/Projects/app-appraisal-tool/docker-compose.yml + when: 1484347303 +- cmd: vim docker-compose.yml docker-env.sh + when: 1484347303 +- cmd: vim docker-compose.yml docker-env.sh -p + when: 1484347303 +- cmd: sudo apt-get remove evolution + when: 1484347303 +- cmd: vim 53b4edd7-c933-11e6-9f8a-d52de71a8db6.json + when: 1484347303 +- cmd: vim + when: 1484347303 +- cmd: jd -s loader-white + when: 1484347303 +- cmd: jd -f loader-white + when: 1484347303 +- cmd: swapoff -a && swapon -a + when: 1484347303 +- cmd: sync; echo 3 > /proc/sys/vm/drop_caches + when: 1484347303 +- cmd: free -h + when: 1484347303 +- cmd: free - + when: 1484347303 +- cmd: for id in $IPCS_M; do ipcrm -m $id; done + when: 1484347303 +- cmd: for id in $IPCS_S; do ipcrm -s $id; done + when: 1484347303 +- cmd: for id in $IPCS_Q; do ipcrm -q $id; done + when: 1484347303 +- cmd: top + when: 1484347303 +- cmd: vim ~/bashscripts/disable_trackpad.bash + when: 1484347303 +- cmd: jd -s "get_email_capture_address" + when: 1484347303 +- cmd: jd -s 500 + when: 1484347303 +- cmd: git add -p customers/templates/customer-details-tabs/email.html + when: 1484347303 +- cmd: git commit -m "Change arrow direction and only show dots on long email length" + when: 1484347303 +- cmd: jd -s nav-actions-send-email + when: 1484347303 +- cmd: vim customers/templates/customer-details.html +214 + when: 1484347303 +- cmd: jd -s didcomponentmount + when: 1484347303 +- cmd: jd -s + when: 1484347303 +- cmd: ID=$(xinput --list | grep "ALPS DualPoint TouchPad" | grep -o -P 'id=(\\d+)' | sed 's/id=//g') + when: 1484347303 +- cmd: echo $ID + when: 1484347303 +- cmd: xinput set-prop $ID "Device Enabled" 0 + when: 1484347303 +- cmd: jd -s "send new email" + when: 1484347303 +- cmd: make css + when: 1484347303 +- cmd: vim desking/customers/static/js/components/SendEmailDialog.js + when: 1484347303 +- cmd: docker-compose -p test_desk run email_capture + when: 1484347303 +- cmd: docker-compose -p test_desk stop email_capture + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports email_capture + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports crmm + when: 1484347303 +- cmd: docker-compose -p test_desk stop app + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports app + when: 1484347303 +- cmd: jd -s bucket + when: 1484347303 +- cmd: vim desking/views.py +732 + when: 1484347303 +- cmd: docker-compose -p test_desk up -d + when: 1484347303 +- cmd: docker-compose -p test_desk stop crm + when: 1484347303 +- cmd: docker-compose -p test_desk run --service-ports crm + when: 1484347303 +- cmd: jd -f email + when: 1484347303 +- cmd: jd -s "react.render + when: 1484347303 +- cmd: jd -s "react.render" + when: 1484347303 +- cmd: vim customers/templates/customer-toolbar-actions.html +48 + when: 1484347303 +- cmd: jd -p.less -s record-description + when: 1484347303 +- cmd: jd -p.less -s muted + when: 1484347303 +- cmd: jd -f less + when: 1484347303 +- cmd: docker-compose -p test_desk run app lessc desking/customers/static/less/customers.less > customers/static/c + when: 1484347303 +- cmd: git checkout customers/static/less/customers.less + when: 1484347303 +- cmd: jd -s customer.less + when: 1484347303 +- cmd: jd -s customers.less + when: 1484347303 +- cmd: vim desking/settings.py + when: 1484347303 +- cmd: jd -s app_css + when: 1484347303 +- cmd: jd -f bill + when: 1484347303 +- cmd: jd -f html + when: 1484347303 +- cmd: vim pitch/templates/printable/pdf-guest-sheet.html + when: 1484347303 +- cmd: jd -s img_url + when: 1484347303 +- cmd: vim utils/__init__.py +371 + when: 1484347303 +- cmd: jd -s ASSETS_IMG_REMOTE_URL + when: 1484347303 +- cmd: vim settings.py +39 + when: 1484347303 +- cmd: jd -f loader + when: 1484347303 +- cmd: ls static/img/ + when: 1484347303 +- cmd: xdg-open static/img/decode-loader.gif + when: 1484347303 +- cmd: xdg-open static/img/loader-white-cyan-disabled.gif + when: 1484347303 +- cmd: vim static/img/email-loading.svg + when: 1484347303 +- cmd: sudo vim /etc/sysctl.conf + when: 1484347303 +- cmd: docker stats + when: 1484347303 +- cmd: sudo apt-get install htop + when: 1484347303 +- cmd: htop + when: 1484347303 +- cmd: docker-compose -p test_desk run app npm run build + when: 1484347303 +- cmd: docker-compose -p test_desk run app npm run watch + when: 1484347303 +- cmd: git add -p customers/managers.py + when: 1484347303 +- cmd: git add -p customers/views.py + when: 1484347303 +- cmd: git add -p services/crm.py + when: 1484347303 +- cmd: npm run watch + when: 1484347303 +- cmd: docker-compose -p test_desk run app make css + when: 1484347303 +- cmd: vim customers/static/less/customers.less + when: 1484347303 +- cmd: git add -p customers/static/js/main.js + when: 1484347303 +- cmd: git add -p customers/static/less/customers.less customers/templates/customer-details-tabs/email.html customers/templates/customer-details.html customers/templates/customer-toolbar-actions.html + when: 1484347303 +- cmd: git add customers/static/js/components/FullEmailDialog.js static/img/email-loading.svg + when: 1484347303 +- cmd: git commit -m "Add view full email dialog" + when: 1484347303 +- cmd: git add ../docker-compose.yml -p + when: 1484347303 +- cmd: git commit -m "Fix docker compose file" + when: 1484347303 +- cmd: vim ../docker-compose.yml + when: 1484347303 +- cmd: docker-compose -p test_desk stop + when: 1484347303 +- cmd: docker-compose -f ../docker-compose.test.yml run sut + when: 1484347303 +- cmd: cd tests/ + when: 1484347303 +- cmd: jd -s with + when: 1484347303 +- cmd: git stash + when: 1484347303 +- cmd: jd -s "opportunity.dms_deal" + when: 1484347303 +- cmd: git checkout -b fix_dms_deal + when: 1484347303 +- cmd: vim pitch/templates/printable/pdf-used-vehicle-buyer-report.html + when: 1484347303 +- cmd: vim pitch/templates/printable/pdf-trade-book-green-sheet.html + when: 1484347303 +- cmd: git stash pop + when: 1484347303 +- cmd: vim ../docker-compose.yml + when: 1484347303 +- cmd: git reset HEAD ../.gitignore + when: 1484347303 +- cmd: git reset HEAD ../docker-compose.yml + when: 1484347303 +- cmd: git add -p pitch/templates/printable/pdf-trade-book-green-sheet.html pitch/templates/printable/pdf-used-vehicle-buyer-report.html + when: 1484347303 +- cmd: git commit -m "Fix issue with no dms_deal" + when: 1484347303 +- cmd: git push -u origin fix_dms_deal + when: 1484347303 +- cmd: jd -s console.log + when: 1484347303 +- cmd: cd Projects/desking-tool/ + when: 1484347303 +- cmd: disable_trackpad + when: 1484347303 +- cmd: jd -s email-capture-address + when: 1484347303 +- cmd: vim customers/views.py + when: 1484347303 +- cmd: jd -s "send-email-container" + when: 1484347303 +- cmd: cd ../market-crm/ + when: 1484347303 +- cmd: git branch -a + when: 1484347303 +- cmd: jd -s "email-capture-address" + when: 1484347303 +- cmd: vim market_crm/customers/api.py +924 + when: 1484347303 +- cmd: jd -s EmailService + when: 1484347303 +- cmd: git add -p market_crm/customers/dao.py market_crm/queue/worker/email_capture.py market_crm/services/email.py + when: 1484347303 +- cmd: git commit -m "Fix bugs with sending from different email clients" + when: 1484347303 +- cmd: git stats + when: 1484347303 +- cmd: jd -p.py -s user_email_address + when: 1484347303 +- cmd: jd -s load_mapping_by_emails + when: 1484347303 +- cmd: jd -s "get_mapped_address + when: 1484347303 +- cmd: jd -s "get_mapped_address" + when: 1484347303 +- cmd: jd -s "import pdb" + when: 1484347303 +- cmd: ffg + when: 1484347303 +- cmd: git add -p market_crm/services/email.py + when: 1484347303 +- cmd: git statu + when: 1484347303 +- cmd: git reset HEAD market_crm/queue/worker/email_capture.py market_crm/services/email.py + when: 1484347303 +- cmd: jd -s get_mapped_address + when: 1484347303 +- cmd: jd -s customer_email_address + when: 1484347303 +- cmd: vim tests/test_customer_email_mapping_dao.py +78 + when: 1484347303 +- cmd: jd -s user_email_address + when: 1484347303 +- cmd: jd -s mailgun_address + when: 1484347303 +- cmd: vim tests/test_customer_email_mapping_dao.py +71 + when: 1484347303 +- cmd: git add -p market_crm/customers/api.py market_crm/customers/model.py market_crm/queue/worker/email_capture.py market_crm/services/email.py tests/test_customer_email_mapping_dao.py + when: 1484347303 +- cmd: git commit -m "Change mailgun email to make more sense" + when: 1484347303 +- cmd: git add -p market_crm/queue/worker/email_capture.py + when: 1484347303 +- cmd: git add market_crm/utils/email_capture.py + when: 1484347303 +- cmd: git commit -m "Move s3 email capture functions" + when: 1484347303 +- cmd: git add -p market_crm/customers/api.py + when: 1484347303 +- cmd: git add -p market_crm/utils/email_capture.py + when: 1484347303 +- cmd: git commit -m "Add loading s3 key data functions" + when: 1484347303 +- cmd: vim docker-compose.test.yml + when: 1484347303 +- cmd: vim docker-compose.test.yml docker-compose.yml + when: 1484347303 +- cmd: vim tests/test_queue_worker.py + when: 1484347303 +- cmd: jd -s _parse_email_data_from_s3_key + when: 1484347303 +- cmd: vim docker-compose.test.yml docker-compose.yml -p + when: 1484347303 +- cmd: docker-compose -f docker-compose.test.yml run sut + when: 1484347303 +- cmd: git add -p tests/test_queue_worker.py + when: 1484347303 +- cmd: git commit -m "Fix tests" + when: 1484347303 +- cmd: git merge development + when: 1484347303 +- cmd: git checkout development + when: 1484347303 +- cmd: git checkout email_capture + when: 1484347303 +- cmd: git merge development + when: 1484347303 +- cmd: git push + when: 1484347303 +- cmd: git log + when: 1484347303 +- cmd: vim Dockerfile + when: 1484347303 +- cmd: vim docker-compose.yml + when: 1484347303 +- cmd: cd desking/ + when: 1484347303 +- cmd: vim customers/static/js/components/SendEmailDialog.js +72 + when: 1484347303 +- cmd: jd -s "email history" + when: 1484347303 +- cmd: vim customers/templates/customer-details.html + when: 1484347303 +- cmd: jd -s "send email" + when: 1484347303 +- cmd: vim customers/templates/customer-toolbar-actions.html + when: 1484347303 +- cmd: vim customers/templates/customer-details-tabs/email.html +2 + when: 1484347303 +- cmd: jd -s "customerui\\." + when: 1484347303 +- cmd: jd -s "customerui" + when: 1484347303 +- cmd: vim customers/static/js/main.js +11 + when: 1484347303 +- cmd: sudo su + when: 1484347303 +- cmd: free -m + when: 1484347303 +- cmd: cd Projects + when: 1484347303 +- cmd: cd smi-flask-marketapp/ + when: 1484347303 +- cmd: git pul + when: 1484347303 +- cmd: git pull + when: 1484347303 +- cmd: cd flask_marketapp/ + when: 1484347303 +- cmd: vim templates/base.html + when: 1484347303 +- cmd: jd -s settings + when: 1484347303 +- cmd: jd -s icon-dash + when: 1484347303 +- cmd: user + when: 1484579067 +- cmd: users + when: 1484579070 +- cmd: help + when: 1484579084 +- cmd: whoami + when: 1484579109 +- cmd: hostname + when: 1484579134 +- cmd: source ~/.config/fish/conf.d/conf.fish + when: 1484579962 +- cmd: dircolors + when: 1484579969 +- cmd: echo $EDITOR + when: 1484580211 +- cmd: rm -rf Microsoft/ + when: 1484580371 + paths: + - Microsoft/ +- cmd: ex + when: 1484581201 +- cmd: echo $HOME + when: 1484754173 +- cmd: vim .bash_aliases + when: 1484754179 + paths: + - .bash_aliases +- cmd: ehco $PWD + when: 1484754218 +- cmd: echo $PWD + when: 1484754223 +- cmd: echo $prompt_pwd + when: 1484754341 +- cmd: exit + when: 1484754383 +- cmd: cd Downloads/ + when: 1484754389 +- cmd: vim signature.png + when: 1484754407 + paths: + - signature.png +- cmd: open signature.png + when: 1484754418 + paths: + - signature.png +- cmd: cd ../ + when: 1484754430 +- cmd: sudo apt-get install fortune-mod + when: 1484754528 +- cmd: fortune -a + when: 1484754543 +- cmd: bash bashscripts/jd.bash + when: 1484756308 + paths: + - bashscripts/jd.bash +- cmd: fish config + when: 1484756710 +- cmd: fish --help + when: 1484756723 +- cmd: fish_vi_mode + when: 1484757027 +- cmd: source ~/bashscripts/jd.bash + when: 1484758146 +- cmd: mkdir .config/fish/functions + when: 1484758252 +- cmd: vim bashscripts/jd.bash + when: 1484758297 + paths: + - bashscripts/jd.bash +- cmd: jd -s stuff + when: 1484758438 +- cmd: vim .config/fish/functions/jd.fish + when: 1484758549 +- cmd: jd -f stuff + when: 1484758559 +- cmd: vim .config/omf/theme + when: 1484758622 + paths: + - .config/omf/theme +- cmd: command grep --color=auto stuff + when: 1484758675 +- cmd: command grep --color=auto stuff * + when: 1484758679 +- cmd: command grep --color=auto s * + when: 1484758682 +- cmd: grep --color=auto s * + when: 1484758689 +- cmd: vim jd.bash + when: 1484758696 + paths: + - jd.bash +- cmd: fg + when: 1484758724 +- cmd: vim .config/fish/config.fish + when: 1484758969 + paths: + - .config/fish/config.fish +- cmd: bash --help + when: 1484759039 +- cmd: bash -c "echo stuff" + when: 1484759130 +- cmd: jd -s s + when: 1484759232 +- cmd: vim .config/fish/functions/jd.fish + when: 1484759148 + paths: + - .config/fish/functions/jd.fish +- cmd: curl -L http://get.oh-my.fish | fish + when: 1484758116 +- cmd: cd bashscripts/ + when: 1486505286 + paths: + - bashscripts/ +- cmd: ds + when: 1486505299 +- cmd: pwd + when: 1486505590 +- cmd: jd + when: 1486505749 +- cmd: jd balls + when: 1486505825 +- cmd: jd balls and stuff + when: 1486505899 +- cmd: curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs git.io/fisher + when: 1486505946 +- cmd: fisher getopts + when: 1486505962 +- cmd: getopts + when: 1486505966 +- cmd: getopts -ab1 --foo=bar baz + when: 1486505974 +- cmd: getopts -hf + when: 1486506098 +- cmd: getopts -hf stuff + when: 1486506103 +- cmd: jd -s grep + when: 1486506553 +- cmd: jd -h + when: 1486506564 +- cmd: jd -t -s stuff + when: 1486506639 +- cmd: jd -t -s jd + when: 1486566248 +- cmd: "s" == "s" + when: 1486566458 +- cmd: if ["s" = "s"]; echo equal; end + when: 1486566573 +- cmd: if [ "s" = "s" ]; echo equal; end + when: 1486566578 +- cmd: reset + when: 1486566665 +- cmd: grep stuff * + when: 1486566719 +- cmd: jd -t -s jdH + when: 1486566857 +- cmd: jd -t -s jdh + when: 1486566862 +- cmd: jd -p.bash -t -s jdH + when: 1486567026 +- cmd: jd -p.bash jd + when: 1486567037 +- cmd: jd -p.bash -t -s jd + when: 1486567108 +- cmd: jd -p.bah -t -s jd + when: 1486567117 +- cmd: jd death + when: 1486567260 +- cmd: [ 3 < 4 ] + when: 1486567420 +- cmd: [ 3 -lt 4 ] + when: 1486567429 +- cmd: [ `3 -lt 4` ] + when: 1486567471 +- cmd: set x [ `3 -lt 4` ] + when: 1486567477 +- cmd: x + when: 1486567478 +- cmd: set x [ 3 -lt 4 ] + when: 1486567494 +- cmd: test [ 3 -lt 4 ] + when: 1486567525 +- cmd: test 3 -lt 4 + when: 1486567534 +- cmd: test 3 -gt 4 + when: 1486567539 +- cmd: if test 42 -eq 42; echo balls; end + when: 1486567571 +- cmd: set x (printf "balls") + when: 1486567704 +- cmd: echo $x + when: 1486567708 +- cmd: "dsaf dasf adfs"[0] + when: 1486567812 +- cmd: set p "dsaf dasf adfs" + when: 1486567820 +- cmd: p[0] + when: 1486567824 +- cmd: echo p[0] + when: 1486567827 +- cmd: echo $p[0] + when: 1486567830 +- cmd: echo $p + when: 1486567837 +- cmd: echo $p[1] + when: 1486567840 +- cmd: echo $p[2] + when: 1486567844 +- cmd: jd -f jd.bash + when: 1486568961 + paths: + - jd.bash +- cmd: jd -f .jd.bash.swp + when: 1486568972 + paths: + - .jd.bash.swp +- cmd: jd jd.bash.swp + when: 1486568992 +- cmd: jd -d1 jd.bash.swp + when: 1486569158 +- cmd: jd jd.bash.swp + when: 1486569358 +- cmd: jd -s jd + when: 1486569366 +- cmd: set r (math 3 - 2 ) + when: 1486570077 +- cmd: echo $r + when: 1486570081 +- cmd: jd -s jd.bash.swp + when: 1486570357 +- cmd: jd -f jd.bash.swp + when: 1486570361 +- cmd: jd -f jd + when: 1486570364 +- cmd: echo 3 | grep -q -E '^[0-9]+$' + when: 1486570687 +- cmd: echo 3 | grep -E '^[0-9]+$' + when: 1486570700 +- cmd: if echo 3 | grep -q -E '^[0-9]+$'; echo balls; end + when: 1486570712 +- cmd: if not echo 3 | grep -q -E '^[0-9]+$'; echo balls; end + when: 1486570718 +- cmd: source jd.fish + when: 1486570920 + paths: + - jd.fish +- cmd: gt fish + when: 1486570921 +- cmd: sudo vim /etc/passwd + when: 1486570984 + paths: + - /etc/passwd +- cmd: vim ~/.config/alacritty/alacritty.yml + when: 1486571349 +- cmd: tmux + when: 1486571501 +- cmd: vim ~/.config/fish/co + when: 1486572246 +- cmd: prompt_pwd + when: 1486572279 +- cmd: prompt_pwd --help + when: 1486572282 +- cmd: fish_config + when: 1486572334 +- cmd: ls + when: 1486572409 +- cmd: cd Projects/desking-tool/desking/ + when: 1486572506 +- cmd: cd ../../market-crm/market_crm/ + when: 1486572523 + paths: + - ../../market-crm/market_crm/ +- cmd: jd -s allowed_dealers + when: 1486572593 +- cmd: jd -t -s allowed_dealers + when: 1486572604 +- cmd: jd -t -s allowed_dealers. + when: 1486572614 +- cmd: jd -t -s allowed_dealers\\. + when: 1486572619 +- cmd: jd -t -s "allowed_dealers\\." + when: 1486572632 +- cmd: jd -t -s "allowed_dealers[" + when: 1486572639 +- cmd: jd -t -s "allowed_dealers\\[" + when: 1486572642 +- cmd: git status + when: 1486572651 +- cmd: vim ~/.config/fish/config.fish + when: 1486572936 +- cmd: ls + when: 1486572958 +- cmd: git status + when: 1486573558 +- cmd: ls + when: 1486573670 +- cmd: ls + when: 1486573678 +- cmd: vim ~/.config/fish/config.fish + when: 1486573576 +- cmd: git checkout development + when: 1486573700 +- cmd: git checkout -b MPDESK-1411 + when: 1486573721 +- cmd: pythn + when: 1486573962 +- cmd: python + when: 1486573963 +- cmd: bash + when: 1486574024 +- cmd: bash -c "python" + when: 1486574058 +- cmd: bash -u joey -c "python" + when: 1486574076 +- cmd: vim ~/.config/fish/config.fish + when: 1486574140 +- cmd: disable_trackpad + when: 1486574222 +- cmd: vim bashscripts/disable_trackpad.bash + when: 1486574165 + paths: + - bashscripts/disable_trackpad.bash +- cmd: vim ~/.config/fish/config.fish + when: 1486574293 +- cmd: ls + when: 1486574452 +- cmd: mkdir nimlibs + when: 1486574462 +- cmd: nim + when: 1486574469 +- cmd: python + when: 1486574480 +- cmd: vim ~/.config/fish/config.fish + when: 1486574717 +- cmd: vim .bash_aliases + when: 1486574111 + paths: + - .bash_aliases +- cmd: ls + when: 1486574760 +- cmd: cd Projects/ + when: 1486574764 + paths: + - Projects/ +- cmd: git clone git@github.com:jyapayne/dotfiles + when: 1486574773 +- cmd: cd dotfiles/ + when: 1486574777 + paths: + - dotfiles/ +- cmd: ls + when: 1486574777 +- cmd: cp ~/.config/alacritty/alacritty.yml . + when: 1486574800 + paths: + - . +- cmd: mkdir -p .config/alacritty/ + when: 1486574814 +- cmd: cp alacritty.yml .config/alacritty/ + when: 1486574824 + paths: + - alacritty.yml + - .config/alacritty/ +- cmd: ls + when: 1486574826 +- cmd: rm alacritty.yml + when: 1486574832 + paths: + - alacritty.yml diff --git a/.config/fish/fish_read_history b/.config/fish/fish_read_history new file mode 100644 index 0000000..ba80a57 --- /dev/null +++ b/.config/fish/fish_read_history @@ -0,0 +1,10 @@ +- cmd: 3 + when: 1486570484 +- cmd: 2 + when: 1486570564 +- cmd: 3 + when: 1486570849 +- cmd: 2 + when: 1486570856 +- cmd: 1 + when: 1486570863 diff --git a/.config/fish/fishd.JWorkMachine b/.config/fish/fishd.JWorkMachine new file mode 100644 index 0000000..32633fa --- /dev/null +++ b/.config/fish/fishd.JWorkMachine @@ -0,0 +1,34 @@ +# This file is automatically generated by the fish. +# Do NOT edit it directly, your changes will be overwritten. +SET __fish_classic_git_prompt_initialized:\x1d +SET __fish_init_1_50_0:\x1d +SET fish_color_autosuggestion:969896 +SET fish_color_command:c397d8 +SET fish_color_comment:e7c547 +SET fish_color_cwd:green +SET fish_color_cwd_root:red +SET fish_color_end:c397d8 +SET fish_color_error:d54e53 +SET fish_color_escape:cyan +SET fish_color_history_current:cyan +SET fish_color_host:\x2do\x1ecyan +SET fish_color_match:cyan +SET fish_color_normal:normal +SET fish_color_operator:cyan +SET fish_color_param:7aa6da +SET fish_color_quote:b9ca4a +SET fish_color_redirection:70c0b1 +SET fish_color_search_match:\x2d\x2dbackground\x3dpurple +SET fish_color_selection:\x2d\x2dbackground\x3dpurple +SET fish_color_status:red +SET fish_color_user:\x2do\x1egreen +SET fish_color_valid_path:\x2d\x2dunderline +SET fish_greeting:Welcome\x20to\x20fish\x2c\x20the\x20friendly\x20interactive\x20shell\x0aType\x20\x1b\x5b32mhelp\x1b\x5b30m\x1b\x28B\x1b\x5bm\x20for\x20instructions\x20on\x20how\x20to\x20use\x20fish +SET fish_key_bindings:fish_default_key_bindings +SET fish_pager_color_completion:normal +SET fish_pager_color_description:555\x1eyellow +SET fish_pager_color_prefix:cyan +SET fish_pager_color_progress:cyan +SET fish_prompt_pwd_dir_length:0 +SET fish_user_paths:/home/joey/Nim/bin\x1e/usr/local/bin\x1e/home/joey/\x2enimble/bin\x1e/home/joey/nimlibs\x1e/home/joey/Nim/bin\x1e/usr/local/bin\x1e/home/joey/\x2enimble/bin\x1e/home/joey/nimlibs\x1e/home/joey/Nim/bin\x1e/usr/local/bin\x1e/home/joey/\x2enimble/bin\x1e/home/joey/nimlibs\x1e/home/joey/Nim/bin\x1e/usr/local/bin\x1e/home/joey/\x2enimble/bin\x1e/home/joey/nimlibs\x1e/home/joey/Nim/bin\x1e/usr/local/bin\x1e/home/joey/\x2enimble/bin\x1e/home/joey/nimlibs +SET fisher_dependency_count:getopts diff --git a/.config/fish/fishfile b/.config/fish/fishfile new file mode 100644 index 0000000..a68e323 --- /dev/null +++ b/.config/fish/fishfile @@ -0,0 +1 @@ +fisherman/getopts diff --git a/.config/fish/functions/fisher.fish b/.config/fish/functions/fisher.fish new file mode 100644 index 0000000..257056f --- /dev/null +++ b/.config/fish/functions/fisher.fish @@ -0,0 +1,2421 @@ +if not set -q fisher_cmd_name + status --current-filename | command awk ' + { + if (n = split($0, parts, "/")) { + gsub(/\.fish$/, "", parts[n]) + print(parts[n]) + } + } + ' | read -gx fisher_cmd_name +end + +if test -z "$fisher_cmd_name" + set -gx fisher_cmd_name "fisher" +end + +function $fisher_cmd_name -d "fish plugin manager" + switch "$FISH_VERSION" + case 2.1.2 2.1.1 2.1.0 2.0.0 + __fisher_log error "You need fish &2.2.0& or higher to use fisherman." + + if command -s brew > /dev/null + __fisher_log info "Run &brew up; brew upgrade --HEAD fish&" + else + __fisher_log info " + Refer to your package manager documentation for + instructions on how to upgrade your fish build. + " + end + + return 1 + end + + set -g fisher_version "2.12.0" + set -g fisher_spinners ⠋ ⠙ ⠹ ⠸ ⠼ ⠴ ⠦ ⠧ ⠇ ⠏ + set -g __fisher_stdout /dev/stdout + set -g __fisher_stderr /dev/stderr + + function __fisher_show_spinner + if not set -q __fisher_fg_spinner[1] + set -g __fisher_fg_spinner $fisher_spinners + end + + printf " $__fisher_fg_spinner[1]\r" > /dev/stderr + + set -e __fisher_fg_spinner[1] + end + + set -l config_home $XDG_CONFIG_HOME + set -l cache_home $XDG_CACHE_HOME + + if test -z "$config_home" + set config_home ~/.config + end + + if test -z "$cache_home" + set cache_home ~/.cache + end + + if test -z "$fish_config" + set -g fish_config "$config_home/fish" + end + + if test -z "$fisher_config" + set -g fisher_config "$config_home/fisherman" + end + + if test -z "$fisher_cache" + set -g fisher_cache "$cache_home/fisherman" + end + + if test -z "$fish_path" + set -g fish_path "$fish_config" + end + + if test -z "$fisher_file" + set -g fisher_file "$fish_path/fishfile" + end + + switch "$argv[1]" + case --complete + __fisher_complete + return + + case -v --version + __fisher_version + return + + case -h + __fisher_usage > /dev/stderr + return + end + + command mkdir -p {"$fish_path","$fish_config"}/{conf.d,functions,completions} "$fisher_config" "$fisher_cache" + or return 1 + + set -l completions "$fish_config/completions/$fisher_cmd_name.fish" + + if test ! -e "$completions" + echo "$fisher_cmd_name --complete" > "$completions" + __fisher_complete + end + + for i in -q --quiet + if set -l index (builtin contains --index -- $i $argv) + set -e argv[$index] + set __fisher_stdout /dev/null + set __fisher_stderr /dev/null + break + end + end + + set -l cmd + + switch "$argv[1]" + case i install + set -e argv[1] + + if test -z "$argv" + set cmd "default" + else + set cmd "install" + end + + case u up update + set -e argv[1] + set cmd "update" + + case r rm remove uninstall + set -e argv[1] + set cmd "rm" + + case l ls list + set -e argv[1] + set cmd "ls" + + case info ls-remote + set -e argv[1] + set cmd "ls-remote" + + case h help + set -e argv[1] + __fisher_help $argv + return + + case --help + set -e argv[1] + __fisher_help + return + + case -- "" + set -e argv[1] + + if test -z "$argv" + set cmd "default" + else + set cmd "install" + end + + case self-{uninstall,destroy} + set -e argv[1] + __fisher_self_uninstall $argv + return + + case -\*\? + printf "$fisher_cmd_name: '%s' is not a valid option\n" "$argv[1]" > /dev/stderr + __fisher_usage > /dev/stderr + return 1 + + case \* + set cmd "install" + end + + set -l elapsed (__fisher_get_epoch_in_ms) + set -l items ( + if test ! -z "$argv" + printf "%s\n" $argv | __fisher_read_bundle_file + end + ) + + if test -z "$items" -a "$cmd" = "default" + if isatty + command touch "$fisher_file" + + set cmd "install" + set items (__fisher_read_bundle_file < "$fisher_file") + + if test -z "$items" + __fisher_log info " + No plugins to install or dependencies missing. + " > /dev/stderr + + __fisher_log info " + See &$fisher_cmd_name help& for usage instructions. + " > /dev/stderr + return + end + else + set cmd "install" + end + end + + switch "$cmd" + case install update + if not command -s git > /dev/null + __fisher_log error " + git is required to download plugin repositories. + " > /dev/stderr + + __fisher_log info " + Please install git and try again. + Visit <&https://git-scm.com&> for more information. + " > /dev/stderr + + return 1 + end + + case ls ls-remote + if not command -s curl > /dev/null + __fisher_log error " + curl is required to query the GitHub API. + " > /dev/stderr + + __fisher_log info " + Please install curl and try again. + Refer to your package manager documentation for instructions. + " > /dev/stderr + + return 1 + end + end + + switch "$cmd" + case install + if __fisher_install $items + __fisher_log info "Done in &"(__fisher_get_epoch_in_ms $elapsed | __fisher_humanize_duration)"&" "$__fisher_stderr" + end + + case update + if isatty + if test -z "$items" + set items (__fisher_list | command sed 's/^[@* ]*//') + + if not __fisher_self_update + if test -z "$items" + __fisher_log info "Use your package manager to update fisherman." + return 1 + end + end + end + else + __fisher_parse_column_output | __fisher_read_bundle_file | read -laz _items + set items $items $_items + end + + __fisher_update $items + + __fisher_log info "Done in &"(__fisher_get_epoch_in_ms $elapsed | __fisher_humanize_duration)"&" "$__fisher_stderr" + + case ls + if test (count "$argv") -ge 0 -o "$argv" = - + if isatty stdout + __fisher_list | column -c$argv + else + __fisher_list | sed 's|^[@* ]*||' + end + + else + __fisher_list_plugin_directory $argv + end + + case ls-remote + set -l format + + if test ! -z "$argv" + switch "$argv[1]" + case --format\* + set format (printf "%s\n" "$argv[1]" | command sed 's|^--[^= ]*[= ]\(.*\)|\1|') + set -e argv[1] + end + + if test -z "$format" + set format "%info\n%url\n" + end + end + + if test -z "$format" + set format "%name\n" + + if isatty stdout + __fisher_list_remote "$format" $argv | column + else + __fisher_list_remote "$format" $argv + end + else + __fisher_list_remote "$format" $argv + end + + case rm + if test -z "$items" + __fisher_parse_column_output | __fisher_read_bundle_file | read -az items + end + + for i in $items + set -l name (__fisher_plugin_get_names $i)[1] + + if test ! -d "$fisher_config/$name" + set -e items + + if test -L "$fisher_config/$name" + set -l real_path (command readlink "$fisher_config/$name") + + __fisher_log error " + I can't remove &$name& without its real path. + " "$__fisher_stderr" + + __fisher_log info " + Restore &$real_path& and try again. + " "$__fisher_stderr" + else + __fisher_log error "Plugin &$name& is not installed." "$__fisher_stderr" + end + + break + end + end + + if test ! -z "$items" + __fisher_remove $items + __fisher_log info "Done in &"( + __fisher_get_epoch_in_ms $elapsed | __fisher_humanize_duration)"&" "$__fisher_stderr" + end + end + + set -l config_glob $fisher_config/* + set -l config ( + if test ! -z "$config_glob" + command find $config_glob -maxdepth 0 -type d | command sed "s|.*/||" + end + ) + + switch "$cmd" + case ls ls-remote + case \* + if test -z "$config" + echo > "$fisher_file" + set -e fisher_dependency_count + else + __fisher_plugin_get_url_info -- "$fisher_config"/$config > $fisher_file + end + end + + complete -c $fisher_cmd_name --erase + + __fisher_complete +end + + +function __fisher_install + if test -z "$argv" + __fisher_read_bundle_file | read -az argv + end + + set -e __fisher_fetch_plugins_state + + if set -l fetched (__fisher_plugin_fetch_items (__fisher_plugin_get_missing $argv)) + if test -z "$fetched" + __fisher_log info " + No plugins to install or dependencies missing. + " "$__fisher_stderr" + + return 1 + end + + for i in $fetched + __fisher_show_spinner + + if test -f "$fisher_config/$i/fishfile" + while read -l i + set -l name (__fisher_plugin_get_names "$i")[1] + + if contains -- "$name" $fetched + if contains -- "$name" $argv + __fisher_plugin_increment_ref_count "$name" + end + else + __fisher_plugin_increment_ref_count "$name" + end + + end < "$fisher_config/$i/fishfile" + end + + __fisher_show_spinner + __fisher_plugin_increment_ref_count "$i" + + set -l path "$fisher_config/$i" + + if __fisher_plugin_is_prompt "$path" + if test ! -z "$fisher_active_prompt" + __fisher_remove "$fisher_active_prompt" + end + + set -U fisher_active_prompt "$i" + end + + __fisher_plugin_enable "$path" + end + else + __fisher_log error " + There was an error installing &$fetched& or more plugin/s. + " "$__fisher_stderr" + + __fisher_log info " + Try using a namespace before the plugin name: &owner&/$fetched + " "$__fisher_stderr" + + return 1 + end +end + + +function __fisher_plugin_fetch_items + __fisher_show_spinner + + set -l jobs + set -l links + set -l white + set -l count (count $argv) + + if test "$count" -eq 0 + return + end + + switch "$__fisher_fetch_plugins_state" + case "" + if test "$count" = 1 -a -d "$argv[1]" + if test "$argv[1]" = "$PWD" + set -l home ~ + set -l name (printf "%s\n" "$argv[1]" | command sed "s|$home|~|") + + __fisher_log info "Installing &$name& " "$__fisher_stderr" + else + set -l name (printf "%s\n" "$argv[1]" | command sed "s|$PWD/||") + + __fisher_log info "Installing &$name& " "$__fisher_stderr" + end + else + __fisher_log info "Installing &$count& plugin/s" "$__fisher_stderr" + end + + set -g __fisher_fetch_plugins_state "fetching" + + case "fetching" + if test "$count" -eq 1 + __fisher_log info "Installing &1& dependency" "$__fisher_stderr" + else + __fisher_log info "Installing &$count& dependencies" "$__fisher_stderr" + end + + set -g __fisher_fetch_plugins_state "done" + + case "done" + end + + for i in $argv + set -l names + set -l branch + + switch "$i" + case \*gist.github.com\* + __fisher_log okay "Resolving gist name." + if not set names (__fisher_get_plugin_name_from_gist "$i") "" + __fisher_log error " + I couldn't clone this gist: + &$i& + " + continue + end + + case \* + printf "%s\n" "$i" | sed 's/[@]\(.*\)/ \1/' | read i branch + set names (__fisher_plugin_get_names "$i") + end + + if test -d "$i" + command ln -sf "$i" "$fisher_config/$names[1]" + set links $links "$names[1]" + continue + end + + set -l src "$fisher_cache/$names[1]" + + if test -z "$names[2]" + if test -d "$src" -a -z "$branch" + if test ! -d "$fisher_config/$names[1]" + __fisher_log okay "Copy &$names[1]&" "$__fisher_stderr" + end + + if test -L "$src" + command ln -sf "$src" "$fisher_config" + else + command cp -Rf "$src" "$fisher_config" + end + else + set jobs $jobs (__fisher_plugin_url_clone_async "$i" "$names[1]" "$branch") + end + else + if test -d "$src" -a -z "$branch" + set -l real_namespace (__fisher_plugin_get_url_info --dirname "$src") + + if test "$real_namespace" = "$names[2]" + if test ! -d "$fisher_config/$names[1]" + __fisher_log okay "Copy &$names[1]&" "$__fisher_stderr" + end + + command cp -Rf "$src" "$fisher_config" + else + set jobs $jobs (__fisher_plugin_url_clone_async "$i" "$names[1]" "$branch") + end + else + set jobs $jobs (__fisher_plugin_url_clone_async "$i" "$names[1]" "$branch") + end + end + + set fetched $fetched "$names[1]" + end + + __fisher_jobs_await $jobs + + for i in $fetched + if test ! -d "$fisher_cache/$i" + printf "%s\n" "$i" + + for i in $fetched + if test -d "$fisher_config/$i" + command rm -rf "$fisher_config/$i" + end + end + + return 1 + end + end + + if test ! -z "$fetched" + __fisher_plugin_fetch_items (__fisher_plugin_get_missing $fetched) + printf "%s\n" $fetched + end + + if test ! -z "$links" + __fisher_plugin_fetch_items (__fisher_plugin_get_missing $links) + printf "%s\n" $links + end +end + + +function __fisher_plugin_url_clone_async -a url name branch + switch "$url" + case http://\* https://\* + case {gitlab.com,github.com,bitbucket.org}\* + set url "https://$url" + + case \?\*/\?\* + set url "https://github.com/$url" + + case \* + set url "https://github.com/fisherman/$url" + end + + set -l nc (set_color normal) + set -l error (set_color $fish_color_error) + set -l okay (set_color $fish_color_match) + set -l hm_url (printf "%s\n" "$url" | command sed 's|^https://||') + + if test ! -z "$branch" + set hm_url "$hm_url ($branch)" + set branch -b "$branch" + end + + fish -c " + set -lx GIT_ASKPASS /bin/echo + + if test -d '$fisher_cache/$name' + command rm -rf '$fisher_cache/$name' + end + + if command git clone $branch -q --depth 1 '$url' '$fisher_cache/$name' ^ /dev/null + printf '$okay""OK""$nc Fetch $okay%s$nc %s\n' '$name' '$hm_url' > $__fisher_stderr + command cp -Rf '$fisher_cache/$name' '$fisher_config' + else + printf '$error""!""$nc Fetch $error%s$nc %s\n' '$name' '$hm_url' > $__fisher_stderr + end + " > /dev/stderr & + + __fisher_jobs_get -l +end + + +function __fisher_update + set -l jobs + set -l count (count $argv) + set -l updated + set -l links 0 + + if test "$count" = 0 + return + end + + if test "$count" -eq 1 + __fisher_log info "Updating &$count& plugin" "$__fisher_stderr" + else + __fisher_log info "Updating &$count& plugins" "$__fisher_stderr" + end + + for i in $argv + set -l name (__fisher_plugin_get_names "$i")[1] + set -l path "$fisher_config/$name" + + if test -d "$path" + set updated $updated "$name" + + if test -L "$fisher_config/$name" + set links (math "$links + 1") + continue + end + + set jobs $jobs (__fisher_update_path_async "$name" "$path") + else + __fisher_log error "Skipped &$name&" + end + end + + __fisher_jobs_await $jobs + + set -g __fisher_fetch_plugins_state "fetching" + set -l fetched (__fisher_plugin_fetch_items (__fisher_plugin_get_missing $updated)) + + for i in $updated $fetched + __fisher_plugin_enable "$fisher_config/$i" + end + + if test "$links" -gt 0 + __fisher_log info "Synced &$links& symlink/s" "$__fisher_stderr" + end +end + + +function __fisher_self_update + set -l file (status --current-filename) + + if test "$file" != "$fish_config/functions/$fisher_cmd_name.fish" + return 1 + end + + set -l completions "$fish_config/completions/$fisher_cmd_name.fish" + set -l raw_url "https://raw.githubusercontent.com/fisherman/fisherman/master/fisher.fish" + set -l fake_qs (date "+%s") + + set -l previous_version "$fisher_version" + + fish -c "curl --max-time 5 -sS '$raw_url?$fake_qs' > $file.$fake_qs" & + + __fisher_jobs_await (__fisher_jobs_get -l) + + if test -s "$file.$fake_qs" + command mv "$file.$fake_qs" "$file" + end + + builtin source "$file" ^ /dev/null + + echo "$fisher_cmd_name -v" | source > /dev/null + + set -l new_version "$fisher_version" + + echo "$fisher_cmd_name --complete" > "$completions" + builtin source "$completions" ^ /dev/null + + if test "$previous_version" = "$fisher_version" + __fisher_log okay "fisherman is up to date" "$__fisher_stderr" + else + __fisher_log okay "You are running fisherman &$fisher_version&" "$__fisher_stderr" + __fisher_log info "See github.com/fisherman/fisherman/releases" "$__fisher_stderr" + end +end + + +function __fisher_update_path_async -a name path + set -l nc (set_color normal) + set -l error (set_color $fish_color_match) + set -l okay (set_color $fish_color_match) + + fish -c " + + pushd $path + + set -l branch (basename (command git symbolic-ref HEAD ^ /dev/null)) + set -l hm_branch + + if test -z \"\$branch\" + set branch master + end + + if test \"\$branch\" != master + set hm_branch \" (\$branch)\" + end + + if not command git fetch -q origin \$branch ^ /dev/null + printf '$error""!""$nc Fetch $error%s$nc\n' '$name' > $__fisher_stderr + exit + end + + set -l commits (command git rev-list --left-right --count \$branch..FETCH_HEAD ^ /dev/null | cut -d\t -f2) + + command git reset -q --hard FETCH_HEAD ^ /dev/null + command git clean -qdfx + command cp -Rf '$path/.' '$fisher_cache/$name' + + if test -z \"\$commits\" -o \"\$commits\" -eq 0 + printf '$okay""OK""$nc Latest $okay%s$nc%s\n' '$name' \$hm_branch > $__fisher_stderr + else + printf '$okay""OK""$nc Pulled $okay%s$nc new commit/s $okay%s$nc%s\n' \$commits '$name' \$hm_branch > $__fisher_stderr + end + + " > /dev/stderr & + + __fisher_jobs_get -l +end + + +function __fisher_plugin_enable -a path + set -l plugin_name (basename $path) + + for file in $path/{functions/*,}*.fish + set -l base (basename "$file") + + if test "$base" = "uninstall.fish" + continue + end + + switch "$base" + case {,fish_{,user_}}key_bindings.fish + __fisher_key_bindings_remove "$plugin_name" + __fisher_key_bindings_append "$plugin_name" "$file" + continue + end + + set -l dir "functions" + + if test "$base" = "init.fish" + set dir "conf.d" + + set base "$plugin_name.$base" + end + + set -l target "$fish_path/$dir/$base" + + if test -e "$target" -a ! -L "$target" + set -l backup_target "$fish_path/$dir/copy-$base" + + __fisher_log info "Backup &$base&" "$__fisher_stderr" + + command mv -f "$target" "$backup_target" ^ /dev/null + end + + command ln -sf "$file" "$target" + + builtin source "$target" ^ /dev/null + + if test "$base" = "set_color_custom.fish" + if test ! -s "$fish_path/fish_colors" + __fisher_print_fish_colors > "$fish_path/fish_colors" + end + + set_color_custom + end + end + + for file in $path/{functions/,}*.{py,awk} + set -l base (basename "$file") + command ln -sf "$file" "$fish_path/functions/$base" + end + + for file in $path/conf.d/*.{py,awk} + set -l base (basename "$file") + command ln -sf "$file" "$fish_path/conf.d/$base" + end + + for file in $path/conf.d/*.fish + set -l base (basename "$file") + set -l target "$fish_path/conf.d/$base" + + command ln -sf "$file" "$target" + builtin source "$target" ^ /dev/null + end + + for file in $path/completions/*.fish + set -l base (basename "$file") + set -l target "$fish_path/completions/$base" + + command ln -sf "$file" "$target" + builtin source "$target" ^ /dev/null + end + + return 0 +end + + +function __fisher_plugin_disable -a path + set -l plugin_name (basename $path) + + for i in "$path/functions/uninstall.fish" "$path/uninstall.fish" + if test -s "$i" + builtin source "$i" ^ /dev/null + break + end + end + + for file in $path/{functions/*,}*.fish + set -l name (basename "$file" .fish) + set -l base "$name.fish" + + if test "$base" = "uninstall.fish" + continue + end + + switch "$base" + case {,fish_}key_bindings.fish + __fisher_key_bindings_remove "$plugin_name" + continue + end + + set -l dir "functions" + + if test "$base" = "init.fish" + set dir "conf.d" + set base "$plugin_name.$base" + end + + set -l target "$fish_path/$dir/$base" + + command rm -f "$target" + + functions -e "$name" + + set -l backup_source "$fish_path/$dir/copy-$base" + + if test -e "$backup_source" + command mv "$backup_source" "$target" + builtin source "$target" ^ /dev/null + end + + if test "$base" = "set_color_custom.fish" + set -l fish_colors_config "$fish_path/fish_colors" + + if test ! -f "$fish_colors_config" + __fisher_reset_default_fish_colors + continue + end + + __fisher_restore_fish_colors < $fish_colors_config | builtin source ^ /dev/null + + command rm -f $fish_colors_config + end + end + + for file in $path/conf.d/*.{py,awk} + set -l base (basename "$file") + command rm -f "$fish_path/conf.d/$base" + end + + for file in $path/{functions/,}*.{py,awk} + set -l base (basename "$file") + command rm -f "$fish_path/functions/$base" + end + + for file in $path/conf.d/*.fish + set -l base (basename "$file") + command rm -f "$fish_path/conf.d/$base" + end + + for file in $path/completions/*.fish + set -l name (basename "$file" .fish) + set -l base "$name.fish" + + command rm -f "$fish_path/completions/$base" + complete -c "$name" --erase + end + + if __fisher_plugin_is_prompt "$path" + set -U fisher_active_prompt + builtin source $__fish_datadir/functions/fish_prompt.fish ^ /dev/null + end + + command rm -rf "$path" > /dev/stderr +end + + +function __fisher_remove + if test -z "$argv" + return 1 + end + + set -l orphans + set -l removed + + for i in $argv + set -l name (__fisher_plugin_get_names "$i")[1] + + if test ! -d "$fisher_config/$name" + continue + end + + set removed $removed $name + + __fisher_show_spinner + __fisher_plugin_decrement_ref_count "$name" + + if test -s "$fisher_config/$name/fishfile" + while read -l i + set -l name (__fisher_plugin_get_names "$i")[1] + + if test (__fisher_plugin_get_ref_count "$name") -le 1 + set orphans $orphans "$name" + else + __fisher_plugin_decrement_ref_count "$name" + end + + __fisher_show_spinner + end < "$fisher_config/$name/fishfile" + end + + __fisher_plugin_disable "$fisher_config/$name" + + __fisher_show_spinner + end + + for i in $orphans + __fisher_remove "$i" > /dev/stderr + end +end + + +function __fisher_get_plugin_name_from_gist -a url + set -l gist_id (printf "%s\n" "$url" | command sed 's|.*/||') + set -l name (fish -c " + + $fisher_cmd_name -v > /dev/null + curl -Ss https://api.github.com/gists/$gist_id & + + __fisher_jobs_await (__fisher_jobs_get -l) + + " | command awk ' + + /"files": / { + files++ + } + + /"[^ ]+.fish": / && files { + gsub("^ *\"|\.fish.*", "") + print + } + + ') + + if test -z "$name" + return 1 + end + + printf "%s\n" $name +end + + +function __fisher_remote_parse_header + command awk ' + + function get_page_count(s, rstart, rlength, pages) { + if (split(substr(s, rstart, rlength), pages, "=")) { + return pages[2] + } + } + + BEGIN { + FS = " <|>; |, <" + } + + /^Link: / { + if (match($2, "&page=[0-9]*")) { + url = substr($2, 1, RSTART - 1) + page_next = get_page_count($2, RSTART, RLENGTH) + + if (page_next) { + page_last = get_page_count($4, RSTART, RLENGTH) + + printf("%s\n%s\n%s", url, page_next, page_last) + } + } + } + + ' +end + + +function __fisher_remote_index_update + set -l index "$fisher_cache/.index" + set -l interval 3240 + set -l players "fisherman" "oh-my-fish" + + if test ! -z "$fisher_index_update_interval" + set interval "$fisher_index_update_interval" + end + + if test -s "$index" + if set -l file_age (__fisher_get_file_age "$index") + if test "$file_age" -lt "$interval" + return + end + end + end + + for i in $players + curl -u$GITHUB_USER:$GITHUB_TOKEN -Is "https://api.github.com/orgs/$i/repos?per_page=100" > "$index-header-$i" & + end + + __fisher_jobs_await (__fisher_jobs_get -l) + + for i in $players + set -l url "https://api.github.com/orgs/$i/repos?per_page=100" + set -l next 0 + set -l last 0 + set -l data + + if test -s "$index-header-$i" + __fisher_remote_parse_header < "$index-header-$i" | read -az data + command rm -f "$index-header-$i" + end + + if set -q data[3] + set -l url "$data[1]" + set -l next "$data[2]" + set -l last "$data[3]" + end + + for page in "" (seq "$next" "$last") + if test "$page" = 0 + continue + end + + set -l next_url "$url" + + if test ! -z "$page" + set next_url "$url&page=$page" + end + + curl -u$GITHUB_USER:$GITHUB_TOKEN --max-time 10 -s "$next_url" | command awk -v ORS='' ' + + { + gsub(/[{}[]]/, "") + + } // + + ' | command awk ' + + { + n = split($0, a, /,[\t ]*"/) + + for (i = 1; i <= n; i++) { + gsub(/"/, "", a[i]) + print(a[i]) + } + } + + ' > "$index-$i-$page" & + end + end + + __fisher_jobs_await (__fisher_jobs_get -l) + + for i in $players + command cat "$index-$i-"* + end > "$index" + + command rm "$index"-* + + if test ! -s "$index" + return 1 + end + + command awk ' + + function quicksort(list, lo, hi, pivot, j, i, t) { + pivot = j = i = t + + if (lo >= hi) { + return + } + + pivot = lo + i = lo + j = hi + + while (i < j) { + while (list[i] <= list[pivot] && i < hi) { + i++ + } + + while (list[j] > list[pivot]) { + j-- + } + + if (i < j) { + t = list[i] + list[i] = list[j] + list[j] = t + } + } + + t = list[pivot] + + list[pivot] = list[j] + list[j] = t + + quicksort(list, lo, j - 1) + quicksort(list, j + 1, hi) + } + + function reset_vars() { + name = info = stars = url = "" + } + + { + if ($0 ~ /^name: /) { + name = substr($0, 7) + } + + if ($0 ~ /^description: /) { + info = substr($0, 14) + } + + if ($0 ~ /^stargazers_count: /) { + stars = substr($0, 19) + } + + if (name != "" && stars != "") { + if (name ~ /oh-my-fish/) { + reset_vars() + next + } + + url = "github.com/fisherman/" name + + if (name ~ /^(plugin|theme)-/) { + gsub(/^plugin-/, "", name) + + if (seen_names[name]) { + reset_vars() + next + } + + url = "github.com/oh-my-fish/" name + name = "omf/" name + + } else { + seen_names[name]++ + } + + if (info == "" || info == "null") { + info = url + } + + if (info ~ /\.$/) { + info = substr(info, 1, length(info) - 1) + } + + records[++record_count] = name "\t" info "\t" url "\t" stars + reset_vars() + } + } + + END { + quicksort(records, 1, record_count) + + for (i = 1; i <= record_count; i++) { + print(records[i]) + } + } + + ' < "$index" > "$index-tab" + + if test ! -s "$index-tab" + command rm "$index" + return 1 + end + + command mv -f "$index-tab" "$index" +end + + +function __fisher_list_remote -a format + set -l index "$fisher_cache/.index" + + if not __fisher_remote_index_update + __fisher_log error "I could not update the remote index." + __fisher_log info " + + This is most likely a problem with http://api.github.com/ + or a connection timeout. If the problem persists, open an + issue in: + " + + return 1 + end + + set -e argv[1] + set -l keys $argv + + command awk -v FS=\t -v format_s="$format" -v keys="$keys" ' + + function basename(s, n, a) { + n = split(s, a, "/") + return a[n] + } + + function record_printf(fmt, name, info, url, stars) { + gsub(/%name/, name, fmt) + gsub(/%stars/, stars, fmt) + gsub(/%url/, url, fmt) + gsub(/%info/, info, fmt) + + printf("%s", fmt) + } + + BEGIN { + keys_n = split(keys, keys_a, " ") + } + + { + if (keys_n > 0) { + for (i = 1; i <= keys_n; i++) { + if (keys_a[i] == $1) { + record_printf(format_s, $1, $2, $3, $4) + next + } + } + } else if ($1 !~ /^fisherman/) { + record_printf(format_s, $1, $2, $3, $4) + } + } + + ' < "$index" +end + + +function __fisher_list + set -l config "$fisher_config"/* + + if test -z "$config" + return 1 + end + + set -l white + set -l links (command find $config -maxdepth 0 -type l ! -name "$fisher_active_prompt" ^ /dev/null) + set -l names (command find $config -maxdepth 0 -type d ! -name "$fisher_active_prompt" ^ /dev/null) + + if test ! -z "$links" + set white " " + printf "%s\n" $links | command sed "s|.*/|@ |" + end + + if test ! -z "$fisher_active_prompt" + set white " " + printf "* %s\n" "$fisher_active_prompt" + end + + if test ! -z "$names" + printf "%s\n" $names | command sed "s|.*/|$white|" + end +end + + +function __fisher_list_plugin_directory + if test -z "$argv" + return 1 + end + + for i in $argv + if test ! -d "$fisher_config/$i" + __fisher_log error "You can only list plugins you've installed." "$__fisher_stderr" + + return 1 + end + end + + set -l fd "$__fisher_stderr" + set -l uniq_items + + for i in $argv + if contains -- "$i" $uniq_items + continue + end + + set uniq_items $uniq_items "$i" + set -l path "$fisher_config/$i" + + pushd "$path" + + set -l color (set_color $fish_color_command) + set -l nc (set_color normal) + set -l previous_tree + + if contains -- --no-color $argv + set color + set nc + set fd "$__fisher_stdout" + end + + printf "$color%s$nc\n" "$PWD" > $fd + + for file in .* ** + if test -f "$file" + switch "$file" + case \*/\* + set -l current_tree (dirname $file) + + if test "$previous_tree" != "$current_tree" + printf " $color%s/$nc\n" $current_tree + end + + printf " %s\n" (basename $file) + + set previous_tree $current_tree + + case \* + printf " %s\n" $file + end + end + end > $fd + + popd + end +end + + +function __fisher_log -a log message fd + if test -z "$argv" + return + end + + switch "$fd" + case "/dev/null" + return + + case "" "/dev/stderr" + set fd "/dev/stderr" + + case \* + set nc "" + set okay "" + set info "" + set error "" + end + + set -l nc (set_color normal) + set -l okay (set_color $fish_color_match) + set -l info (set_color $fish_color_match) + set -l error (set_color $fish_color_error) + + printf "%s\n" "$message" | command awk ' + function okay(s) { + printf("'"$okay"'%s'"$nc"' %s\n", "OK", s) + } + + function info(s) { + printf("%s\n", s) + } + + function error(s) { + printf("'"$error"'%s'"$nc"' %s\n", "!", s) + } + + { + sub(/^[ ]+/, "") + gsub("``", " ") + + if (/&[^&]+&/) { + n = match($0, /&[^&]+&/) + if (n) { + sub(/&[^&]+&/, "'"$$log"'" substr($0, RSTART + 1, RLENGTH - 2) "'"$nc"'", $0) + } + } + + s[++len] = $0 + } + + END { + for (i = 1; i <= len; i++) { + if ((i == 1 || i == len) && (s[i] == "")) { + continue + } + + if (s[i] == "") { + print + } else { + '"$log"'(s[i]) + } + } + } + + ' > "$fd" +end + + +function __fisher_jobs_get + jobs $argv | command awk -v FS=\t ' + /[0-9]+\t/{ + jobs[++job_count] = $1 + } + + END { + for (i = 1; i <= job_count; i++) { + print(jobs[i]) + } + + exit job_count == 0 + } + ' +end + + +function __fisher_jobs_await + if test -z "$argv" + return + end + + while true + for spinner in $fisher_spinners + printf " $spinner \r" > /dev/stderr + sleep 0.05 + end + + set -l currently_active_jobs (__fisher_jobs_get) + + if test -z "$currently_active_jobs" + break + end + + set -l has_jobs + + for i in $argv + if builtin contains -- $i $currently_active_jobs + set has_jobs "*" + break + end + end + + if test -z "$has_jobs" + break + end + end +end + + +function __fisher_key_bindings_remove -a plugin_name + set -l user_key_bindings "$fish_path/functions/fish_user_key_bindings.fish" + + if test ! -f "$user_key_bindings" + return + end + + set -l tmp (date "+%s") + + fish_indent < "$user_key_bindings" | command sed -n "/### $plugin_name ###/,/### $plugin_name ###/{s/^ *bind /bind -e /p;};" | builtin source ^ /dev/null + + command sed "/### $plugin_name ###/,/### $plugin_name ###/d" < "$user_key_bindings" > "$user_key_bindings.$tmp" + command mv -f "$user_key_bindings.$tmp" "$user_key_bindings" + + if command awk ' + /^$/ { next } + + /^function fish_user_key_bindings/ { + i++ + next + } + + /^end$/ && 1 == i { + exit 0 + } + + // { + exit 1 + } + + ' < "$user_key_bindings" + + command rm -f "$user_key_bindings" + end +end + + +function __fisher_key_bindings_append -a plugin_name file + set -l user_key_bindings "$fish_path/functions/fish_user_key_bindings.fish" + + command mkdir -p (dirname "$user_key_bindings") + command touch "$user_key_bindings" + + set -l key_bindings_source ( + fish_indent < "$user_key_bindings" | command awk ' + + /^function fish_user_key_bindings/ { + reading_function_source = 1 + next + } + + /^end$/ && reading_function_source { + exit + } + + reading_function_source { + print($0) + next + } + + ' + ) + + set -l plugin_key_bindings_source ( + fish_indent < "$file" | command awk -v name="$plugin_name" ' + + BEGIN { + printf("### %s ###\n", name) + } + + END { + printf("### %s ###\n", name) + } + + /^function (fish_(user_)?)?key_bindings$/ { + is_end = 1 + next + } + + /^end$/ && is_end { + end = 0 + next + } + + !/^ *(#.*)*$/ { + gsub("#.*", "") + printf("%s\n", $0) + } + + ' + ) + + printf "%s\n" $plugin_key_bindings_source | source ^ /dev/null + + fish_indent < "$user_key_bindings" | command awk ' + { + + if ($0 ~ /^function fish_user_key_bindings/) { + reading_function_source = 1 + next + } else if ($0 ~ /^end$/ && reading_function_source) { + reading_function_source = 0 + next + } + + if (!reading_function_source) { + print($0) + } + } + + ' > "$user_key_bindings-copy" + + command mv -f "$user_key_bindings-copy" "$user_key_bindings" + + printf "%s\n" $key_bindings_source $plugin_key_bindings_source | command awk ' + + BEGIN { + print "function fish_user_key_bindings" + } + + // + + END { + print "end" + } + + ' | fish_indent >> "$user_key_bindings" +end + + +function __fisher_plugin_is_prompt -a path + for file in "$path"/{,functions/}{fish_prompt,fish_right_prompt}.fish + if test -e "$file" + return + end + end + + return 1 +end + + +function __fisher_plugin_get_names + printf "%s\n" $argv | command awk ' + + { + sub(/\/$/, "") + n = split($0, s, "/") + sub(/^(omf|omf-theme|omf-plugin|plugin|theme|fish|fisher|fish-plugin|fish-theme)-/, "", s[n]) + + printf("%s\n%s\n", s[n], s[n - 1]) + } + + ' +end + + +function __fisher_plugin_get_url_info -a option + set -e argv[1] + + if test -z "$argv" + return + end + + command cat {$argv}/.git/config ^ /dev/null | command awk -v option="$option" ' + /url/ { + n = split($3, s, "/") + + if ($3 ~ /https:\/\/gist/) { + printf("# %s\n", $3) + next + } + + if (option == "--dirname") { + printf("%s\n", s[n - 1]) + + } else if (option == "--basename") { + printf("%s\n", s[n]) + + } else { + printf("%s/%s\n", s[n - 1], s[n]) + } + } + ' +end + + +function __fisher_plugin_normalize_path + printf "%s\n" $argv | command awk -v pwd="$PWD" ' + + /^\.$/ { + print(pwd) + next + } + + /^\// { + sub(/\/$/, "") + print($0) + next + } + + { + print(pwd "/" $0) + next + } + + ' +end + + +function __fisher_plugin_get_missing + for i in $argv + if test -d "$i" + set i (__fisher_plugin_normalize_path "$i") + end + + set -l name (__fisher_plugin_get_names "$i")[1] + + if test "$name" = fisherman + + __fisher_log info " + Run &$fisher_cmd_name update& to update fisherman. + " > /dev/stderr + continue + end + + if set -l path (__fisher_plugin_is_installed "$name") + for file in fishfile bundle + if test -s "$path/$file" + __fisher_plugin_get_missing (__fisher_read_bundle_file < "$path/$file") + end + end + else + printf "%s\n" "$i" + end + end + + __fisher_show_spinner +end + + +function __fisher_plugin_is_installed -a name + if test -z "$name" -o ! -d "$fisher_config/$name" + return 1 + end + + printf "%s\n" "$fisher_config/$name" +end + + +function __fisher_print_fish_colors + printf "%s\n" "$fish_color_normal" "$fish_color_command" "$fish_color_param" "$fish_color_redirection" "$fish_color_comment" "$fish_color_error" "$fish_color_escape" "$fish_color_operator" "$fish_color_end" "$fish_color_quote" "$fish_color_autosuggestion" "$fish_color_user" "$fish_color_valid_path" "$fish_color_cwd" "$fish_color_cwd_root" "$fish_color_match" "$fish_color_search_match" "$fish_color_selection" "$fish_pager_color_prefix" "$fish_pager_color_completion" "$fish_pager_color_description" "$fish_pager_color_progress" "$fish_color_history_current" "$fish_color_host" +end + + +function __fisher_restore_fish_colors + command awk ' + { + if ($0 == "") { + set_option "-e" + } else { + set_option "-U" + } + } + + NR == 1 { + print("set " set_option " fish_color_normal " $0) + } + NR == 2 { + print("set " set_option " fish_color_command " $0) + } + NR == 3 { + print("set " set_option " fish_color_param " $0) + } + NR == 4 { + print("set " set_option " fish_color_redirection " $0) + } + NR == 5 { + print("set " set_option " fish_color_comment " $0) + } + NR == 6 { + print("set " set_option " fish_color_error " $0) + } + NR == 7 { + print("set " set_option " fish_color_escape " $0) + } + NR == 8 { + print("set " set_option " fish_color_operator " $0) + } + NR == 9 { + print("set " set_option " fish_color_end " $0) + } + NR == 10 { + print("set " set_option " fish_color_quote " $0) + } + NR == 11 { + print("set " set_option " fish_color_autosuggestion " $0) + } + NR == 12 { + print("set " set_option " fish_color_user " $0) + } + NR == 13 { + print("set " set_option " fish_color_valid_path " $0) + } + NR == 14 { + print("set " set_option " fish_color_cwd " $0) + } + NR == 15 { + print("set " set_option " fish_color_cwd_root " $0) + } + NR == 16 { + print("set " set_option " fish_color_match " $0) + } + NR == 17 { + print("set " set_option " fish_color_search_match " $0) + } + NR == 18 { + print("set " set_option " fish_color_selection " $0) + } + NR == 19 { + print("set " set_option " fish_pager_color_prefix " $0) + } + NR == 20 { + print("set " set_option " fish_pager_color_completion " $0) + } + NR == 21 { + print("set " set_option " fish_pager_color_description " $0) + } + NR == 22 { + print("set " set_option " fish_pager_color_progress " $0) + } + NR == 23 { + print("set " set_option " fish_color_history_current " $0) + } + NR == 24 { + print("set " set_option " fish_color_host " $0) + } + + ' +end + + +function __fisher_reset_default_fish_colors + set -U fish_color_normal normal + set -U fish_color_command 005fd7 purple + set -U fish_color_param 00afff cyan + set -U fish_color_redirection 005fd7 + set -U fish_color_comment 600 + set -U fish_color_error red --bold + set -U fish_color_escape cyan + set -U fish_color_operator cyan + set -U fish_color_end green + set -U fish_color_quote brown + set -U fish_color_autosuggestion 555 yellow + set -U fish_color_user green + set -U fish_color_valid_path --underline + set -U fish_color_cwd green + set -U fish_color_cwd_root red + set -U fish_color_match cyan + set -U fish_color_search_match --background=purple + set -U fish_color_selection --background=purple + set -U fish_pager_color_prefix cyan + set -U fish_pager_color_completion normal + set -U fish_pager_color_description 555 yellow + set -U fish_pager_color_progress cyan + set -U fish_color_history_current cyan + set -U fish_color_host normal +end + + +function __fisher_read_bundle_file + command awk -v FS=\t ' + /^$/ || /^[ \t]*#/ || /^(--|-).*/ { + next + } + + /^omf\// { + sub(/^omf\//, "oh-my-fish/") + + if ($0 !~ /(theme|plugin)-/) { + sub(/^oh-my-fish\//, "oh-my-fish/plugin-") + } + } + + /^[ \t]*package / { + sub("^[ \t]*package ", "oh-my-fish/plugin-") + } + + { + sub(/\.git$/, "") + sub("^[@* \t]*", "") + + if (!dedupe[$0]++) { + printf("%s\n", $0) + } + } + ' +end + + +function __fisher_plugin_increment_ref_count -a name + set -U fisher_dependency_count $fisher_dependency_count $name +end + + +function __fisher_plugin_decrement_ref_count -a name + if set -l i (contains --index -- "$name" $fisher_dependency_count) + set -e fisher_dependency_count[$i] + end +end + + +function __fisher_plugin_get_ref_count -a name + printf "%s\n" $fisher_dependency_count | command awk -v plugin="$name" ' + + BEGIN { + i = 0 + } + + $0 == plugin { + i++ + } + + END { + print(i) + } + + ' +end + + +function __fisher_complete + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a install -d "Install plugins" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a update -d "Update plugins and self" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a rm -d "Remove plugins" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a ls -d "List what you've installed" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a ls-remote -d "List everything that's available" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -a help -d "Show help" + + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -s h -l help -d "Show usage help" + complete -xc $fisher_cmd_name -n "__fish_use_subcommand" -s v -l version -d "Show version information" + complete -xc $fisher_cmd_name -s q -l quiet -d "Enable quiet mode" + + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from ls-remote" -l "format" -d "Format with verbs: %name, %url, %info and %stars" + + set -l config_glob "$fisher_config"/* + set -l config (printf "%s\n" $config_glob | command sed "s|.*/||") + + if test ! -s "$fisher_cache/.index" + if test ! -z "$config" + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from l ls list u up update r rm remove h help" -a "$config" + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from l ls list u up update r rm remove h help" -a "$fisher_active_prompt" -d "Prompt" + end + return + end + + set -l real_home ~ + + for name in (command find $config_glob -maxdepth 0 -type l ^ /dev/null) + set -l path (command readlink "$name") + set -l name (command basename "$name" | sed "s|$real_home|~|") + + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from l ls list u up update r rm remove h help" -a "$name" -d "$path" + end + + set -l IFS \t + + command awk -v FS=\t -v OFS=\t ' + + { + print($1, $2) + } + + ' "$fisher_cache/.index" ^ /dev/null | while read -l name info + + switch "$name" + case fisherman\* + continue + end + + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from info ls-remote" -a "$name" -d "$info" + + if contains -- "$name" $config + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from l ls list u up update r rm remove h help" -a "$name" -d "$info" + else + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from i in install" -a "$name" -d "$info" + end + end + + if functions -q __fisher_plugin_get_url_info + for i in (__fisher_plugin_get_url_info -- $config_glob) + switch "$i" + case fisherman\* + case \* + set -l name (__fisher_plugin_get_names "$i")[1] + complete -xc $fisher_cmd_name -n "__fish_seen_subcommand_from l ls list u up update r rm remove h help" -a "$name" -d "$i" + end + end + end +end + + +function __fisher_humanize_duration + command awk ' + function hmTime(time, stamp) { + split("h:m:s:ms", units, ":") + + for (i = 2; i >= -1; i--) { + if (t = int( i < 0 ? time % 1000 : time / (60 ^ i * 1000) % 60 )) { + stamp = stamp t units[sqrt((i - 2) ^ 2) + 1] " " + } + } + + if (stamp ~ /^ *$/) { + return "0ms" + } + + return substr(stamp, 1, length(stamp) - 1) + } + + { + print hmTime($0) + } + ' +end + + +function __fisher_get_key + stty -icanon -echo ^ /dev/null + printf "$argv" > /dev/stderr + while true + dd bs=1 count=1 ^ /dev/null | read -p "" -l yn + switch "$yn" + case y Y n N + printf "\n" > /dev/stderr + printf "%s\n" $yn > /dev/stdout + break + end + end + stty icanon echo > /dev/stderr ^ /dev/null +end + + +switch (command uname) + case Darwin FreeBSD + function __fisher_get_epoch_in_ms -a elapsed + if test -z "$elapsed" + set elapsed 0 + end + + if command -s perl > /dev/null + perl -MTime::HiRes -e 'printf("%.0f\n", (Time::HiRes::time() * 1000) - '$elapsed')' + else + math (command date "+%s") - $elapsed + end + end + + case \* + function __fisher_get_epoch_in_ms -a elapsed + if test -z "$elapsed" + set elapsed 0 + end + math (command date "+%s%3N") - $elapsed + end +end + + +function __fisher_parse_column_output + command awk -v FS=\t ' + { + for (i = 1; i <= NF; i++) { + if ($i != "") { + print $i + } + } + } + ' +end + + +function __fisher_get_file_age -a file + if type -q perl + perl -e "printf(\"%s\n\", time - (stat ('$file'))[9])" ^ /dev/null + + else if type -q python + python -c "from __future__ import print_function; import os, time; print(int(time.time() - os.path.getmtime('$file')))" ^ /dev/null + end +end + + +function __fisher_usage + set -l u (set_color -u) + set -l nc (set_color normal) + + echo "Usage: $fisher_cmd_name [COMMAND] [PLUGINS]" + echo + echo "where COMMAND is one of:" + echo " "$u"i"$nc"nstall (default)" + echo " "$u"u"$nc"pdate" + echo " "$u"r"$nc"m" + echo " "$u"l"$nc"s (or ls-remote [--format=FORMAT])" + echo " "$u"h"$nc"elp" +end + + +function __fisher_version + set -l real_home ~ + printf "fisherman version $fisher_version %s\n" ( + __fisher_plugin_normalize_path (status -f) | command sed "s|$real_home|~|;s|$__fish_datadir|\$__fish_datadir|") +end + + +function __fisher_help -a cmd number + if test -z "$argv" + set -l page "$fisher_cache/$fisher_cmd_name.1" + + if test ! -s "$page" + __fisher_man_page_write > "$page" + end + + set -l pager "/usr/bin/less -s" + + if test ! -z "$PAGER" + set pager "$PAGER" + end + + man -P "$pager" -- "$page" + command rm -f "$page" + + else + if test -z "$number" + set number 1 + end + + set -l page "$fisher_config/$cmd/man/man$number/$cmd.$number" + + if not man "$page" ^ /dev/null + if test -d "$fisher_config/$cmd" + __fisher_log info "There's no manual for this plugin." "$__fisher_stderr" + + set -l url (__fisher_plugin_get_url_info -- "$fisher_config/$cmd") + + __fisher_log info "Try online: <&github.com/$url&>" "$__fisher_stderr" + else + __fisher_log error "This plugin is not installed." "$__fisher_stderr" + end + + return 1 + end + end +end + + +function __fisher_self_uninstall -a yn + set -l file (status --current-filename) + set -l u (set_color -u) + set -l nc (set_color normal) + + switch "$yn" + case -y --yes + case \* + __fisher_log info " + This will permanently remove fisherman from your system. + The following directories and files will be erased: + + $fisher_cache + $fisher_config + $fish_config/functions/$fisher_cmd_name.fish + $fish_config/completions/$fisher_cmd_name.fish + + " /dev/stderr + + echo -sn "Continue? [Y/n] " > /dev/stderr + + __fisher_get_key | read -l yn + + switch "$yn" + case n N + set -l username + + if test ! -z "$USER" + set username " $USER" + end + + __fisher_log okay "As you wish cap!" + return 1 + end + end + + complete -c $fisher_cmd_name --erase + + __fisher_show_spinner + + echo "$fisher_cmd_name ls | $fisher_cmd_name rm -q" | source ^ /dev/null + + __fisher_show_spinner + + command rm -rf "$fisher_cache" "$fisher_config" + command rm -f "$fish_config"/{functions,completions}/$fisher_cmd_name.fish "$fisher_file" + + set -e fish_config + set -e fish_path + set -e fisher_active_prompt + set -e fisher_cache + set -e fisher_config + set -e fisher_file + set -e fisher_version + set -e fisher_spinners + + __fisher_log info "Done." "$__fisher_stderr" + + set -l funcs (functions -a | command grep __fisher) + + functions -e $funcs $fisher_cmd_name +end + + +function __fisher_man_page_write + echo '. +.TH "FISHERMAN" "1" "May 2016" "" "fisherman" +. +.SH "NAME" +\fBfisherman\fR \- fish plugin manager +. +.SH "SYNOPSIS" +'"$fisher_cmd_name"' [(\fBi\fRnstall | \fBu\fRpdate | \fBl\fRs[\-remote] | \fBr\fRm | \fBh\fRelp) PLUGINS] +. +.br +. +.SH "DESCRIPTION" +A plugin manager for fish\. +. +.SH "OPTIONS" +. +.IP "\(bu" 4 +\-v, \-\-version: Show version information\. +. +.IP "\(bu" 4 +\-h, \-\-help: Show usage help\. Use the long form to display this page\. +. +.IP "\(bu" 4 +\-q, \-\-quiet: Enable quiet mode\. Use to suppress output\. +. +.IP "" 0 +. +.SH "USAGE" +Install a plugin\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' mono +. +.fi +. +.IP "" 0 +. +.P +Install some plugins\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' z fzf edc/bass omf/tab +. +.fi +. +.IP "" 0 +. +.P +Install a gist\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' https://gist\.github\.com/username/1f40e1c6e0551b2666b2 +. +.fi +. +.IP "" 0 +. +.P +Install a local directory\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' ~/my/plugin +. +.fi +. +.IP "" 0 +. +.P +Edit your \fIfishfile\fR and run \fB'"$fisher_cmd_name"'\fR to commit changes\. +. +.IP "" 4 +. +.nf + +$EDITOR ~/\.config/fish/fishfile +'"$fisher_cmd_name"' +. +.fi +. +.IP "" 0 +. +.P +Show everything you\'ve installed\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' ls +@ plugin # a local directory +* mono # the current prompt + bass + fzf + thefuck + z +. +.fi +. +.IP "" 0 +. +.P +Show everything that\'s available\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' ls\-remote +. +.fi +. +.IP "" 0 +. +.P +Update everything\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' up +. +.fi +. +.IP "" 0 +. +.P +Update some plugins\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' up bass z fzf +. +.fi +. +.IP "" 0 +. +.P +Remove plugins\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' rm thefuck +. +.fi +. +.IP "" 0 +. +.P +Remove all the plugins\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' ls | '"$fisher_cmd_name"' rm +. +.fi +. +.IP "" 0 +. +.P +Get help\. +. +.IP "" 4 +. +.nf + +'"$fisher_cmd_name"' help z +. +.fi +. +.IP "" 0 +. +.SH "FAQ" +. +.SS "What is the required fish version?" +>=2\.2\.0\. +. +.P +For \fIsnippet\fR support, upgrade to >=2\.3\.0 or append the following code to your \fI~/\.config/fish/config\.fish\fR\. +. +.IP "" 4 +. +.nf + +for file in ~/\.config/fish/conf\.d/*\.fish + source $file +end +. +.fi +. +.IP "" 0 +. +.SS "Is fisherman compatible with oh\-my\-fish themes and plugins?" +Yes\. +. +.SS "Where does fisherman put stuff?" +The cache and configuration go in \fI~/\.cache/fisherman\fR and \fI~/\.config/fisherman\fR respectively\. +. +.P +The fishfile is saved to \fI~/\.config/fish/fishfile\fR\. +. +.SS "What is a fishfile and how do I use it?" +The fishfile \fI~/\.config/fish/fishfile\fR lists what plugins you\'ve installed\. +. +.P +This file is updated automatically as you install / remove plugins. You can also edit this file and run \fBfisher\fR to commit changes\. +. +.P +This mechanism only installs plugins and missing dependencies\. To remove plugins, use \fBfisher rm\fR\. +. +.SS "What is a plugin?" +A plugin is: +. +.IP "1." 4 +a directory or git repo with one or more \fI\.fish\fR functions either at the root level of the project or inside a \fIfunctions\fR directory +. +.IP "2." 4 +a theme or prompt, i\.e, a \fIfish_prompt\.fish\fR, \fIfish_right_prompt\.fish\fR or both files +. +.IP "3." 4 +a snippet, i\.e, one or more \fI\.fish\fR files inside a directory named \fIconf\.d\fR, evaluated by fish at the start of the session +. +.IP "" 0 +. +.SS "How can I list plugins as dependencies to my plugin?" +Create a new \fIfishfile\fR file at the root level of your project and write in the plugins\.' +end diff --git a/.config/fish/functions/getopts.fish b/.config/fish/functions/getopts.fish new file mode 120000 index 0000000..6e4ddd9 --- /dev/null +++ b/.config/fish/functions/getopts.fish @@ -0,0 +1 @@ +/home/joey/.config/fisherman/getopts/getopts.fish \ No newline at end of file diff --git a/.config/fish/functions/jd.fish b/.config/fish/functions/jd.fish new file mode 100644 index 0000000..3008ff3 --- /dev/null +++ b/.config/fish/functions/jd.fish @@ -0,0 +1,3 @@ +function jd + command bash ~/bashscripts/jd.bash $argv +end