Commit graph

518 commits

Author SHA1 Message Date
Bruno BELANYI e4e44dd8fa home: atuin: enable command line preview 2023-05-03 15:02:44 +00:00
Bruno BELANYI f41fd5d42e home: atuin: use 'skim' engine 2023-05-03 15:02:44 +00:00
Bruno BELANYI 5a9e62d556 home: add atuin
I really like the `fzf` history widget, and this is not as good UI-wise.

However I like the fact that this uses a DB:

* It is more reliable when the history file gets messed up [1]
* It allows syncing between different hosts (not sure if I will use it)
* It adds more context to the search
    * The current directory
    * The shell _session_, I can *either* search all sessions or
      restrict to just the current one

I will be looking into whether or not I can hack something together to
get a better UI (by using `fzf` of course).
2023-05-03 15:02:44 +00:00
Bruno BELANYI 0ab56888bd home: extract dircolors configuration 2023-05-03 15:02:44 +00:00
Bruno BELANYI 1d7b9b99db home: extract fzf configuration 2023-05-03 15:02:44 +00:00
Bruno BELANYI c82361f9e4 home: git: ignore neovim 'exrc' configuration 2023-05-03 15:02:44 +00:00
Bruno BELANYI 5c372cfa95 home: vim: use 'exrc'
Remove the home-grown "solution" that I had stolen from school (and
never used...) for project-local configuration.

Since [1], it is okay to use the built-in vim option for this, since it
only asks for user-input before trusting a file.

Since [2] they even support lua files!

[1]: https://github.com/neovim/neovim/pull/20956
[2]: https://github.com/neovim/neovim/pull/21436
2023-05-03 15:02:44 +00:00
Bruno BELANYI e9f07e67dc home: vim: add diff line matching
All checks were successful
ci/woodpecker/push/check Pipeline was successful
This should bring more readable diffs. See [1].

[1]: https://github.com/neovim/neovim/pull/14537
2023-04-19 08:36:40 +00:00
Bruno BELANYI 2375f88e56 home: vim: use patience diff
This brings it in line with my `git` configuration.
2023-04-19 08:34:39 +00:00
Bruno BELANYI 9781ef06b0 home: wm: i3bar: better 'battery' formats
All checks were successful
ci/woodpecker/push/check Pipeline was successful
2023-04-01 20:29:23 +01:00
Bruno BELANYI 72dd9ae834 home: wm: i3bar: fix 'battery' block icon 2023-04-01 20:29:23 +01:00
Bruno BELANYI f9ddcff5ee home: wm: i3: use upstream 'rofi-bluetooth' 2023-04-01 16:20:55 +01:00
Bruno BELANYI 9c36d65d80 home: ssh: use canonical gitea subdomain 2023-04-01 13:05:47 +02:00
Bruno BELANYI b3b115ee1d home: ssh: use canonical gitea subdomain 2023-04-01 13:05:47 +02:00
Bruno BELANYI 84bed03367 home: ssh: remove old 'work' host
I don't work there anymore.
2023-04-01 13:05:47 +02:00
Bruno BELANYI f0a93f878b home: nix: add 'NIX_PATH' handling
All checks were successful
continuous-integration/drone/push Build is passing
Still waiting for the actual home-manager module option to be added [1].

In the meantime, just do it by hand.

[1]: https://github.com/nix-community/home-manager/pull/2677
2023-03-30 09:58:46 +00:00
Bruno BELANYI 76edeffdc7 home: pager: use XDG-compliant history location
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-27 08:23:58 +00:00
Bruno BELANYI 83268e7db6 home: xdg: force more XDG compliance
Thanks a to a nifty tool [1] I learnt about some more easy fixes.

[1]: https://github.com/b3nj5m1n/xdg-ninja
2023-03-27 08:23:58 +00:00
Bruno BELANYI ddc296138c home: move gpg-specific alias to 'gpg'
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-24 11:18:08 +00:00
Bruno BELANYI 359456fbc1 home: terminal: alacritty: remove unused arguments 2023-03-22 10:45:13 +00:00
Bruno BELANYI 84fc1601c5 home: vim: 'unimpaired' mappings for formatting
All checks were successful
continuous-integration/drone/push Build is passing
I'll migrate to calling the lua API directly if they stop expecting a
non-nil argument.
2023-03-20 09:52:05 +00:00
Bruno BELANYI 0241bfc781 home: vim: modify 'unimpaired' quickfix mappings 2023-03-20 09:52:05 +00:00
Bruno BELANYI 2e9704ed1d home: wm: i3: simplify status command
The v0.30.0 of `i3status-rs` automatically resolves a configuration name
inside its configuration directory, making this much simpler.
2023-03-19 22:28:27 +00:00
Bruno BELANYI 7cec58e215 home: wm: i3bar: update to v0.30.X
This should be equivalent to the previous version's configuration, since
v0.30.0 introduced a lot of breaking changes.
2023-03-19 22:28:27 +00:00
Bruno BELANYI 176ff5d6e3 flake: bump inputs
Since the v0.30.0 version of `i3status-rust` was a breaking change, pin
the package to v0.22.0 for now.
2023-03-19 22:26:25 +00:00
Bruno BELANYI 887428fddd home: wm: i3: use explicit path to bar config
The v0.30.0 is about to change how it resolves the configuration path,
so make it explicit to ease the transition and simplify later.
2023-03-19 22:25:53 +00:00
Bruno BELANYI 05973b93ff home: tmux: add 'enabledPassthrough'
All checks were successful
continuous-integration/drone/push Build is passing
This is useful for cases where some programs expect to be able to use
the tmux passthrough escape sequences by using the tmux passthrough
sequence.

One such example is `osc52` script I packaged.

However I like the idea of tmux filtering all escape sequences by
default, so it's not enabled by default.
2023-03-16 16:42:55 +00:00
Bruno BELANYI 20341a3129 refactor: 'with lib.my' -> 'with lib' 2023-03-16 16:42:55 +00:00
Bruno BELANYI 1db162f272 home: zsh: add ctrl-{left,right} mapping 2023-03-15 18:20:23 +00:00
Bruno BELANYI 4f0a619921 home: zsh: add ctrl-delete mapping 2023-03-15 18:20:23 +00:00
Bruno BELANYI 69fbc438c1 home: zsh: add {home,end} mapping 2023-03-15 18:20:23 +00:00
Bruno BELANYI c48f6261be home: zsh: add page{up,down} mapping 2023-03-15 18:20:23 +00:00
Bruno BELANYI af8f3c814b home: zsh: ensure application mode with zle 2023-03-15 18:20:23 +00:00
Bruno BELANYI 2431f8f207 home: zsh: refactor 'terminfo' handling
This is more readable.

Largely inspired by oh-my-zsh.
2023-03-15 18:20:23 +00:00
Bruno BELANYI bc5fa3f679 home: zsh: use terminfo for mappings 2023-03-15 17:40:05 +00:00
Bruno BELANYI ca047bfe97 home: zsh: use more readable option names
All checks were successful
continuous-integration/drone/push Build is passing
Since they ignore underscores, this is more readable.
2023-03-15 15:20:14 +00:00
Bruno BELANYI eb75fcfa3f home: zsh: enable slash squeezing 2023-03-15 15:20:14 +00:00
Bruno BELANYI e8c52175b6 home: git: add 'root' alias
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-14 17:00:45 +00:00
Bruno BELANYI 623bb6c893 home: vim: git: attach to untracked buffers
All checks were successful
continuous-integration/drone/push Build is passing
Turns outs it looks way more discreet now. Whether that's due to an
update to the plug-in or my changing colorscheme, I don't know.
2023-03-13 15:49:07 +00:00
Bruno BELANYI 1e4d4650e2 home: zsh: disable shared history
All checks were successful
continuous-integration/drone/push Build is passing
I know I just activated it, but I can't get used to it...

I would like to have a mixture of it:
* Be able to search across *all* shell histories when using Ctrl-r.
* Only go up/down my session's shell history when using Ctrl-n/Ctrl-p.

Enabling shared history gets me the first one, but means I can't limit
my up/down history to just the one session.

Disabling shared history means that I can't search across all shell
histories, but keeps my up/down history tidier.

All-in-all I like the second one better.
2023-03-11 22:01:47 +00:00
Bruno BELANYI 2d2f729138 home: zsh: don't hard-code '$XDG_CONFIG_HOME'
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-08 14:42:54 +00:00
Bruno BELANYI f1a7e9fd93 home: zsh: enable history sharing 2023-03-08 14:37:37 +00:00
Bruno BELANYI 7dd221cc93 home: zsh: expire duplicates first 2023-03-08 14:37:37 +00:00
Bruno BELANYI ff66361f65 home: zsh: use extended history
I have `inc_append_history_time` set, so I should use extended
history...
2023-03-08 14:37:37 +00:00
Bruno BELANYI 4786552e8c home: zsh: verify history expansion
This helps when I absentmindedly run a command which contains
exclamation points.
2023-03-08 14:37:37 +00:00
Bruno BELANYI 068faea1e2 home: zsh: extra-mappings: use single quotes
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-07 11:05:07 +00:00
Bruno BELANYI 41bd17e3ca home: vim: migrate to 'gruvbox-nvim'
I think this one will be more up-to-date with NeoVim evolutions, like
LSP semantic tokens.
2023-03-07 11:05:07 +00:00
Bruno BELANYI a29deaa9bc home: vim: use 'lsp-formatting.nvim'
A few things that are different:
* Async by default.
* Takes care of the order of formatters, if I ever need to do that.
* Allows for easily disabling formatting (unfortunately this is global
  state, not buffer-local).
* Gets rid of the formatting pause when doing `:wq`.
2023-03-07 11:05:07 +00:00
Bruno BELANYI 3122db6536 home: vim: disable mouse integration 2023-03-07 11:05:07 +00:00
Bruno BELANYI 4a6677b024 modules: system: nix: add 'linkInputs' option
All checks were successful
continuous-integration/drone/push Build is passing
Once again, mirroring the work done in the NixOS module.
2023-02-25 01:43:07 +00:00
Bruno BELANYI ca1e2df1e9 home: nix: refactor module
This keeps it in line with the NixOS one.
2023-02-25 01:43:07 +00:00
Bruno BELANYI 58d03d5892 home: nix: add explanatory comment 2023-02-25 01:43:07 +00:00
Bruno BELANYI 607d11bbad home: zsh: disable tmux auto-launch by default
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-22 16:12:30 +00:00
Bruno BELANYI 34c13b077f home: zsh: refactor tmux auto-launch configuration
Introduce an actual option for this behaviour.
2023-02-22 16:11:18 +00:00
Bruno BELANYI 0bbf522c03 home: tmux: change 'use lib.my' to 'use libs' 2023-02-22 16:00:26 +00:00
Bruno BELANYI ee6a735a2c home: add nix
This is basically the same thing as the NixOS module, except for
NIX_PATH handling [1].

[1]: https://github.com/nix-community/home-manager/pull/2677
2023-02-21 17:52:39 +00:00
Bruno BELANYI 86aa156fc0 home: tmux: fix 'hasGui' logic
All checks were successful
continuous-integration/drone/push Build is passing
Take advantage of this fix to make the code more extensible.
2023-02-20 11:19:20 +00:00
Bruno BELANYI 54f335d984 home: tmux: always use tmux-yank
This plugin does have some useful binds.

Since it still sends the OSC52 escape sequence when copying, I don't
have a problem with remote hosts.
2023-02-20 11:19:13 +00:00
Bruno BELANYI 4e59c0d551 home: firefox: tridactyl: fix DDG mapping
All checks were successful
continuous-integration/drone/push Build is passing
They broke, once again...
2023-02-19 14:16:13 +00:00
Bruno BELANYI 75396c4c4c home: firefox: tridactyl: use more private editor
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-19 14:12:09 +00:00
Bruno BELANYI 5d42f55fc6 home: firefox: tridactyl: fix 'editorcmd'
All checks were successful
continuous-integration/drone/push Build is passing
Turns out `alacritty` is smarter than `termit` with its handling of
command execution (i.e: actually expects multiple arguments to exec(2)).

So account for the difference in the module.
2023-02-19 14:02:57 +00:00
Bruno BELANYI e667c042cb home: zsh: add colorful aliases
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-19 12:25:40 +00:00
Bruno BELANYI 225e8f236e home: vim: ftdetect: add direnv
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-17 15:53:55 +00:00
Bruno BELANYI 2ec9aae6b7 home: pager: remove colored man pages
All checks were successful
continuous-integration/drone/push Build is passing
It seems to have broken at some point, and I didn't notice.

Might as well remove it since I do not care for it.
2023-02-16 12:06:28 +00:00
Bruno BELANYI a61a602bd2 home: ssh: include local-only config file
Useful for configuration options that should remain secret.
2023-02-15 15:02:15 +00:00
Bruno BELANYI e8a46ae248 home: firefox: tridactyl: use preferred terminal
Thankfully, alacritty and termite both use the same command line
arguments for this. If I ever want to use another one, I might have to
make the logic a bit more robust.
2023-02-12 17:33:45 +00:00
Bruno BELANYI 4f883b0198 home: terminal: remove DPI workaround
And instead change the font size to be *about* right.
2023-02-12 17:32:48 +00:00
Bruno BELANYI f89e10fdca home: terminal: add alacritty 2023-02-12 16:57:54 +00:00
Bruno BELANYI b6bbe5a01e home: firefox: tridactyl: move cursor in editor
This means that the cursor in vim will be in the same position as the
one in the input form.
2023-02-12 16:57:54 +00:00
Bruno BELANYI d25922ef15 home: packages: remove 'termite.terminfo' 2023-02-12 16:46:18 +00:00
Bruno BELANYI c1c3146311 home: zsh: always enable VTE integration 2023-02-12 16:43:55 +00:00
Bruno BELANYI 70f5e46860 home: tmux: fix OSC52 forwarding
All checks were successful
continuous-integration/drone/push Build is passing
I want neovim to be able to set my clipboard, and don't care for the
potential security issues of letting any program be able to do such a
thing.
2023-02-12 12:03:10 +00:00
Bruno BELANYI 2ffb8e6ee6 home: vim: add 'nvim-osc52'
All checks were successful
continuous-integration/drone/push Build is passing
I do get the message when copying into the clipboard while ssh-ing.

But trying to paste from my system clipboard shows that it did *not* get
copied. This seems to only happen inside tmux.

However tmux itself *does* copy to the clipboard correctly through OSC52.
2023-02-12 11:55:58 +00:00
Bruno BELANYI e04fa74412 home: vim: lua: utils: add 'is_ssh'
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-11 22:17:22 +00:00
Bruno BELANYI 8dcc59d481 flake: bump inputs
All checks were successful
continuous-integration/drone/push Build is passing
And migrate firefox extensions configuration to the profile-specific
format.
2023-02-08 22:02:40 +00:00
Bruno BELANYI 699b6b8e33 home: zsh: include local-only config file
All checks were successful
continuous-integration/drone/push Build is passing
Useful for configuration options that should remain secret.
2023-02-08 14:44:23 +00:00
Bruno BELANYI 3a0fa3398d home: zsh: modify 'initExtra' inclusion style 2023-02-08 14:43:39 +00:00
Bruno BELANYI 938fb71f9c home: git: include local-only config file
Useful for configuration options that should remain secret.
2023-02-08 14:31:32 +00:00
Bruno BELANYI 5a07dda93b home: git: setup work identity
Now that I am at Google, gotta make sure I use the correct identity.
2023-02-08 14:24:05 +00:00
Bruno BELANYI 2b3fb4fa5a home: vim: use shorter tree-sitter alias 2023-02-08 14:03:23 +00:00
Bruno BELANYI 0e4a4df544 home: zsh: add usual aliases
I forgot to add them, since on NixOS they are defined at the system
level by default.
2023-02-08 10:36:10 +00:00
Bruno BELANYI 4971634115 home: vim: make it the default editor explicitly 2023-02-07 14:19:50 +00:00
Bruno BELANYI b4d745c50e home: vim: add 'cmp_luasnip'
I had forgotten to add it even though I configured it as a source...
2023-01-20 19:16:20 +00:00
Bruno BELANYI 19e42cdc26 home: vim: reorder snippet plugins 2023-01-20 19:15:31 +00:00
Bruno BELANYI 5f3299e383 home: vim: luasnip: use lazy-loading 2023-01-20 19:10:14 +00:00
Bruno BELANYI 92e63eae25 home: firefox: remove 'https-everywhere'
It's been made redundant.
2023-01-14 20:10:56 +01:00
Bruno BELANYI 18f81a05eb home: mail: disable himalaya
I don't actually use it, should circle back to it in the future.
2022-12-16 12:56:16 +01:00
Bruno BELANYI 6913e0f896 flake: bump inputs
Some new options were needed for `himalaya`.
2022-12-16 12:55:01 +01:00
Bruno BELANYI 16d4147321 home: vim: lspconfig: update deprecated call 2022-11-03 18:07:00 +01:00
Bruno BELANYI 236d48befb home: vim: lua: lsp: update for nvim 0.8
Two big changes:

* Making use of the lua API for creating autocmds.
* Using `client.supports_method`.
2022-11-03 18:07:00 +01:00
Bruno BELANYI 3c3e56002f home: vim: add 'nix' ftplugin 2022-10-26 14:14:01 +02:00
Bruno BELANYI e0b7103c8d home: wm: i3: add floating-related mappings 2022-10-04 11:40:44 +02:00
Bruno BELANYI 5e021e6436 all: remove package aliases 2022-09-30 08:59:27 +02:00
Bruno BELANYI 4216c654e7 home: vim: migrate to 'nvim-surround'
It's potentially more customizable, and integrates with tree-sitter. It
also allows for buffer/filetype specific pairs.
2022-09-02 09:56:20 +02:00
Bruno BELANYI 6748b5b5e6 home: mail: accounts: use 'outlook' flavor 2022-08-31 17:16:44 +02:00
Bruno BELANYI 3efba75169 home: gdb: fix auto-load safe path 2022-08-10 15:23:21 +02:00
Bruno BELANYI 468fbdd69a home: xdg: do not set 'WGETRC'
I don't use it...
2022-07-11 14:11:43 +02:00
Bruno BELANYI 9f82981602 home: vim: add 'nvim-lspconfig'
For some reason I had not added it to my plug-in list, but it still
worked until I bumped my inputs.
2022-06-23 10:02:32 +02:00
Bruno BELANYI 7e4e41a07f home: vim: add 'tiger' file-type configuration 2022-06-20 14:33:44 +02:00
Bruno BELANYI 530fb66e19 home: migrate 'cursor' module to new option
Make it part of 'home.wm' now, since that makes more sense.

Not sure about making it related to 'i3' being activated though, will
need to think about this in the future.
2022-06-15 11:27:03 +02:00