Commit graph

49 commits

Author SHA1 Message Date
Oliver Davies b30909b32a zsh: add some suffix aliases
Aliases that run when files of a matching type are opened.

See https://youtu.be/8CZIv3MJvic?si=QVqtaCDNaygs2qaE&t=670.
2024-08-19 22:18:02 +01:00
Oliver Davies c712a1b254 Add aliases for curl
Use the cursor position to not have a trailing space after expanding the
abbreviation, making it easier to type any following characters.

See https://zsh-abbr.olets.dev/usage.html#place-the-cursor and
https://github.com/olets/zsh-abbr/discussions/97
2024-08-19 22:10:29 +01:00
Oliver Davies 0acedf8bea Remove starship, atuin and wezterm 2024-08-13 12:04:40 +01:00
Oliver Davies 22385b9a1c Revert "git: use difftastic by default"
This reverts commit 2fbf67507f.
2024-07-28 13:29:57 +01:00
Oliver Davies b944d20123 zsh: run zle reset-prompt in each widget
Instead of having to press the Enter key after running a widget, use
`zle reset-prompt` to reset the prompt.
2024-07-24 08:01:20 +01:00
Oliver Davies 0a28c2a5b3 zsh: open nvim with Ctrl+v 2024-07-23 20:47:53 +01:00
Oliver Davies 537eb704e7 zsh: remove zsh-auto-notify plugin
`AUTO_NOTIFY_IGNORE` keeps being reset within a tmux session, so I'm
removing this for now until I have time to investigate further and
resolve.
2024-07-11 13:14:10 +01:00
Oliver Davies f0e3671e1d zsh: remove unused functions 2024-07-09 14:25:41 +01:00
Oliver Davies 2fbf67507f git: use difftastic by default
As described in
https://difftastic.wilfred.me.uk/git.html#difftastic-by-default, the
`--ext-diff` option needs to be used for difftastic to be used on
commands other than `git diff`, such as `git show` or `git log`.

> This only applies to git diff. For other git commands, you still need
to specify --ext-diff, or use an alias as described above.

```shell
$ git diff
$ git show HEAD --ext-diff
$ git log -p --ext-diff
```

> Conversely, if you need to copy/paste a diff in the standard diff
format, you can use git diff --no-ext-diff.
2024-07-09 14:15:46 +01:00
Oliver Davies 42c1bc4045 zsh: remove just override 2024-07-09 12:01:08 +01:00
Oliver Davies 0c4167a464 zsh: don't automatically source zsh plugins
It seems this is done automatically.
2024-07-08 18:46:56 +01:00
Oliver Davies b11055fd8e zsh: configure auto-notify ignore settings 2024-07-03 09:08:47 +01:00
Oliver Davies b68d48603e zsh: extract aliases and abbreviations into
...separate files
2024-06-30 14:22:57 +01:00
Oliver Davies 0ec273cbb4 zsh: fix gs alias for git status 2024-06-29 20:51:22 +01:00
Oliver Davies 53423ccdbf zsh: add zsh-auto-notify plugin
Shows notifications when long running tasks are completed.

See https://github.com/MichaelAquilina/zsh-auto-notify.
2024-06-29 20:47:41 +01:00
Oliver Davies 0df5f17dae zsh: migrate to zsh-abbr
Migrate from `zsh-expand` to `zsh-abbr` as it seems more performant and
isn't giving me unwanted expansions, such as when typing `run` within
this repository and it completing to something else.

Whilst Home Manager does have `programs.zsh-attr`, there isn't an option
for setting global abbreviations that expand anywhere in the command,
which I need to replace global ZSH aliases such as `G` which expands to
`| grep`.

For now, I've installed `zsh-abbr` via zplug and am creating the
`user-abbreviations` file using Home Manager where I can use `attr -g`
for global aliases.

If or when support is added for global abbreviations in Home Manager,
I'll switch to `programs.zsh-abbr.abbreviations`.

`programs.zsh.shellAliases` is still used for aliases that shouldn't
expand, whereas everything else has been moved to abbreviations.
2024-06-25 12:43:30 +01:00
Oliver Davies b3b96c3163 Add navigation aliases 2024-06-19 22:04:51 +01:00
Oliver Davies f0163cd28c Revert "Reapply "Remove starship""
This reverts commit 7c06364329.
2024-06-19 21:59:18 +01:00
Oliver Davies 7f2df5f726 Run nix fmt
Format using `nixfmt-rfc-style`.
2024-06-10 09:38:34 +01:00
Oliver Davies 7c06364329 Reapply "Remove starship"
This reverts commit e4923e708e.
2024-06-09 20:55:21 +01:00
Oliver Davies f952e2d6b8 Refactor zsh configuration
* Move aliases into `programs.zsh.shellAliases` and
  `programs.shellGlobalAliases`.
* Use the `MenkeTechnologies/zsh-expand` plugin instead of using custom
  expansion code.

https://github.com/MenkeTechnologies/zsh-expand
2024-06-09 20:54:19 +01:00
Oliver Davies e4923e708e Revert "Remove starship"
This reverts commit 90a1ca81aa.
2024-06-02 01:43:01 +01:00
Oliver Davies c8bc522268 Revert "Use fzf for searching zsh history"
This reverts commit 0bbd536e3e.
2024-06-01 14:38:55 +01:00
Oliver Davies c8cc72b1ac Add build-configs from its derivation
It currently uses a local version of `build-configs`. I need to look
into how to get it to with Nix and a private GitHub repository.
2024-05-22 09:21:25 +01:00
Oliver Davies 395e92054e Add vss alias for sorting words in my spellfile
Automatically sort and update the words within my `spellfile` that's
used by Neovim.
2024-05-22 08:52:27 +01:00
Oliver Davies ab20c7de69 Consolidate Git aliases
Move the `update` alias into the Git namespace, so it's now `git
update`, and remove the others that I wasn't using.
2024-05-20 19:09:17 +01:00
Oliver Davies f766a15616 Alias cat to bat 2024-05-15 13:49:05 +01:00
Oliver Davies 7b9e5c6cfc Add todo and til functions
Add helper functions to write text input into a `TODO.txt` or `TIL.txt`
file respectively.

Extracting this to a function means I'm not able to overwrite the
contents of a file by typing `echo "foo" > TODO.txt` or similar
accidentally and overwriting the entire file instead of appending to it.
2024-05-12 09:25:21 +02:00
Oliver Davies 475a2195c0 Configure lsd
See: https://github.com/lsd-rs/lsd
2024-05-11 01:55:59 +02:00
Oliver Davies 0a5815c116 Add the git root command
Add the `git root` command shown by Greg in his YouTube video:

https://www.youtube.com/watch?v=C5aRtq-Rtbg
2024-05-09 23:57:05 +01:00
Oliver Davies 5d3f7ef58f Override just command
If a `.ignored/justfile` exists, e.g. for open-source projects I can't
commit a `justfile` to, use it by default.
2024-05-09 23:40:30 +01:00
Oliver Davies 634ed23325 Override the ttyper command with a function
Set values for the number of words and languages, as there isn't a word
setting to add to a `config.toml` file.

This is based on https://www.youtube.com/watch?v=C5aRtq-Rtbg by Greg
Hurrell.
2024-05-09 23:31:43 +01:00
Oliver Davies c99f23be11 Source the zsh-fzf-history-search plugin 2024-05-05 11:55:58 +01:00
Oliver Davies d4f347186d Use a regular git clone 2024-04-24 22:08:38 +01:00
Oliver Davies 0bbd536e3e Use fzf for searching zsh history 2024-04-19 21:38:00 +01:00
Oliver Davies 0a54e63a16 Fix Bitbucket URL 2024-04-17 10:26:57 +01:00
Oliver Davies 39fa2a2fc5 Make clone work with HTTPS URL 2024-04-17 08:48:28 +01:00
Oliver Davies bbfdb0362d Add TODO for extracting the domain from HTTPS URLs 2024-04-17 07:41:56 +01:00
Oliver Davies c9b423c9a8 Fix repo path 2024-04-17 00:27:05 +01:00
Oliver Davies d0e42b602f Echo the git clone command before running it 2024-04-17 00:24:46 +01:00
Oliver Davies 51b6d6b8c5 Add a REPOS environment variable 2024-04-17 00:24:41 +01:00
Oliver Davies c0fabc4f20 Rename variable 2024-04-17 00:08:13 +01:00
Oliver Davies a1f4782b63 Use git bare-clone when cloning the repo 2024-04-17 00:07:42 +01:00
Oliver Davies a57d60e1b4 Fix GitLab and Bitbucket URLs
Remove GitLab and Bitbucket URLs when getting the user and repo name.
2024-04-16 23:04:42 +01:00
Oliver Davies d26ecee2ee Extract the remote URL from the repository URL 2024-04-16 18:06:30 +01:00
Oliver Davies 2074c748cb Create new sessions using bin/t 2024-04-16 18:02:36 +01:00
Oliver Davies 5a934bf843 Add clone ZSH function 2024-04-16 16:22:52 +01:00
Oliver Davies b1421c97e1 Format using nixfmt 2024-03-18 20:34:51 +00:00
Oliver Davies addad268e5 Rename system to lib 2024-02-29 08:24:01 +00:00
Renamed from system/shared/modules/zsh.nix (Browse further)