136 Commits

Author SHA1 Message Date
709c65ce7b Move main.yaml to tasks.yaml 2021-11-19 22:04:42 +00:00
782589ff81 Add unzip to Debian package list 2021-11-06 15:29:37 +00:00
cc5840fd20 Start using Ansible for config management 2021-11-05 14:07:45 +00:00
014dadecb2 Only set WGETRC when ~/.config/wgetrc exists 2021-08-03 14:19:08 +01:00
b89428cd32 Extract .tar.xz properly on Linux 2021-07-27 23:52:47 +01:00
85b531e773 Use a different bat theme
Don't use Solarized Dark theme because not all `bat` installs make it
available.
2021-07-14 21:21:58 +01:00
acfd0cdee4 More escape sequence utilities
* Add `tmux-dcs-passthrough` to passthrough escape sequences tmux
  doesn't understand.
* Add `notify` to post a notification via the terminal emulator.
2021-06-17 22:46:14 +01:00
4561adf530 Teach ipython to use XDG base dirs 2021-06-17 22:46:14 +01:00
a7a8d7da8f Properly extract .tar.xz on macOS 2021-06-17 22:46:14 +01:00
20a3911ab7 Ensure pynvim is installed in autoenv's 2021-04-17 17:39:57 +01:00
ff87027cf7 Fix a long standing issue with fresh_almostontop()
Up till now setting the `-a` flag of the `prompt_fresh_setup` theme
resulted in duplicate prompts being printed to the terminal. The first,
the interactive prompt with syntax highlighting, and a second after a
call to the `clear` command without syntax highlighting. This patch
replaces the old implementation with one which does not use `clear`.
Instead it queries the terminal for the current cursor position, then
uses this to move to the bottom of the terminal, print a number of new
lines to move the stale command output off screen, and finally move
almost back to the top ready for the invoked command to print it's
output.
2021-03-20 00:03:20 +00:00
b4d22fc49f Remove guake workaround 2021-03-09 19:19:08 +00:00
b694e9cdf5 Add copy and paste aliases to clipboard commands
Interact with the clipboard through the `copy` and `paste` aliases.

`copy` is defined when:

1. An `ssh` connection is detected, using OSC-52.
2. macOS is detected, using `pbcopy`.
3. `xsel` is detected.

`paste` is define when:

1. macOS is detected, using `pbpaste`.
2. `xsel` is detected.
2021-03-02 20:04:33 +00:00
d91d6b3534 Wrap bat with additional arguments 2021-03-02 20:02:30 +00:00
309a8833c8 Make using docker on macOS nicer 2021-02-20 15:36:26 +00:00
c4a91481db Add autoenv reload subcommand
The `autoenv reload` subcommand reloads the current environment.
2021-02-09 16:47:27 +00:00
0b5fc5ad97 Set CMAKE_GENERATOR when ninja is present 2021-01-18 19:11:24 +00:00
258baeba77 Add support for Fedora 2020-12-31 15:55:53 +00:00
b6c11ecdfb Add cmake-uninstall script 2020-09-12 15:47:36 +01:00
92bacb5785 Teach various tools XDG Base Directory spec manners 2020-08-22 10:43:26 +01:00
6935281118 Fix ignore pattern for cloned plugins 2020-08-22 10:42:49 +01:00
6be7ac0e4e Fix cls alias when in tmux on iTerm2 2020-07-31 12:24:43 +01:00
a67649e844 Add frequent-directory function
`frequent-directory` exports and environment variable and creates a hash
directory with the given argument of the form `<name>=<path>`.
2020-07-30 11:24:56 +01:00
01fcdc1863 Update cls to work correctly in Windows Terminal 2020-07-17 23:10:16 +01:00
6d92a82d8c Load autoenv plugin later to make build-dir ready 2020-07-08 16:06:14 +01:00
81657d6f50 Update vim version check for enabling vimdebug 2020-02-06 13:36:05 +00:00
db124794ef Add unversioned brew python links to PATH
The `python` Homebrew package installs unversioned links to Python 3
executables in `/usr/local/opt/python/libexec/bin`. Add this directory
to the `PATH` environment variable when it's present.
2020-01-16 23:25:09 +00:00
ec8675fa86 Use XDG base dirs for ccache 2020-01-14 10:54:24 +00:00
9164432cc2 Don't store less history 2019-12-10 13:26:36 +00:00
39a4d589b3 Change default pylint data storage location 2019-12-10 12:16:44 +00:00
6eec18c98e Set EDITOR to vim if it exists 2019-11-10 13:47:09 +00:00
1cf7e1dcaf Don't send git clone to /dev/null 2019-10-05 19:12:21 +01:00
908ef3efa5 Add autoenv add=py to streamline virtualenvs 2019-10-05 19:11:26 +01:00
4252d06e65 Fix ccache PATH on Manjaro 2019-10-01 22:50:20 +01:00
9854518c76 Fix Home/End on Arch where $key is not auto setup 2019-09-18 22:01:12 +01:00
aab16bd355 Add zsh pacman package 2019-09-17 20:41:26 +01:00
4812d5e564 Don't prompt for sandbox authorization
Automatically approve `.enter`/`.exit` scripts when creating or renaming
sandboxes.
2019-09-10 20:13:10 +01:00
610cae2f57 Check for tmux session in prompt
Before invoking the `tmux` command to unset the vim pane variable first
check that a `tmux` session exists.
2019-09-05 11:22:47 +01:00
a3832ff49e Automatically authorize sandbox .enter/.exit 2019-09-03 21:06:48 +01:00
a2509a88b5 Add git clone support to sandbox create
Partially address #13 by adding the `--git <repo>` option to `sandbox
create`. This enables the quick cloning of a remote repository instead
of doing the tedious dance of creating a sandbox, cloning the remote
repo, deleting the sandbox repo them moving the `.git` directory before
doing a `git reset --hard HEAD`.

Additionally, improve the error messages for all `sandbox` commands,
clean up the completions a little, and use a consistent style in the
scripts.
2019-08-29 00:56:26 +01:00
8997d9cae0 Add zsh-completions
The [zsh-completions](https://github.com/zsh-users/zsh-completions) repo
contains completions for various commands but not all of these are
useful so the `update-completion-links.zsh` script inspects the `PATH`
to determine which of the completions should be symlinked to
`~/.local/share/zsh/site-functions` which resides on the `fpath`.
2019-08-23 21:11:56 +01:00
8526bdb4e3 Export CTEST_OUTPUT_ON_FAILURE=1
When a `ctest` run contains a failed test, actually print the `stdout`
and `stderr` output.
2019-08-22 21:32:15 +01:00
47f821e80a Don't unset tmux option when not in tmux 2019-08-22 21:31:56 +01:00
fcae9e885e Unset the vim navigation flag on prompt redraw
Make using the `@vim$TMUX_PANE` window flag much more robust by
unsetting it every time the zsh prompt is drawn and setting it again
using a `FocusGained` `autocmd` in vim. This removes the need for the
hacky check for zsh in the conditional defined in the `in_vim` variable.
2019-08-16 21:57:33 +01:00
7a8cf750bd Don't apply Begin/End key fix on macOS 2019-06-07 20:07:32 +01:00
7a0c73dabb autoenv: Automatically update autoenv during edit
Fixes #18 by exiting the autoenv before invoking vim for editing the
`.enter` and `.exit` scripts, then enters the autoenv after vim exits.
This reduces the number of steps required to update the current autoenv
state.
2019-05-30 19:22:04 +01:00
0da54801e4 Fix HOME and END key bindings in zle 2019-05-22 10:51:54 +01:00
4b2b0d38c7 Drop fast-syntax-highlighting due to being wrong
When using `git` aliases, the alias would be highlighted red by
fast-syntax-highlighting even though the alias is valid so remove it and
go back to zsh-syntax-highlighting instead.
2019-05-02 12:10:37 +01:00
a095e9383c Escape * in vimdebug before passing to debug
With `setopt nonomatch` unescaped `*` can be used in command arguments
however when passing command arguments to `vimdebug` the `*` _should_
be escaped so that the debugger e.g. `gdb` will correctly invoke the
program where `setopt nonomatch` does not apply.
2019-04-18 10:41:12 +01:00
6bd2b8f0cc Add fzf to install 2019-03-24 16:24:31 +00:00