Commit Graph

534 Commits

Author SHA1 Message Date
Bruno BELANYI 1e9f6fe957 home: vim: fix lua formatting 2023-05-07 13:36:10 +01:00
Bruno BELANYI c2d231d3f1 home: vim: use actual lua files
Since most of the settings are actually just lua in a VimL file.
2023-05-07 13:36:10 +01:00
Bruno BELANYI 9530864b10 home: vim: fastfold: use lua configuration 2023-05-07 13:36:10 +01:00
Bruno BELANYI e599a97e45 home: vim: abbreviations: use lua
This makes it less repetitive.
2023-05-07 13:36:10 +01:00
Bruno BELANYI 39c2e5db8c home: vim: signtoggle: use lua autocommands
A nice next step would be to use actual lua callbacks instead of the
VimL command.
2023-05-07 13:36:10 +01:00
Bruno BELANYI dba8836381 home: vim: numbertoggle: use lua autocommands
A nice next step would be to use actual lua callbacks instead of the
VimL command.
2023-05-07 13:36:10 +01:00
Bruno BELANYI 36b0c67832 home: vim: completion: use lua settings 2023-05-07 13:33:02 +01:00
Bruno BELANYI 68b9c3b9b1 home: vim: remove 'vim-pandoc'
The tree-sitter code-block high-lighting is built-in and works better,
and I don't use any of the other features.
2023-05-07 13:04:37 +01:00
Bruno BELANYI 46d9e5c829 home: vim: lspconfig: add 'nil'
ci/woodpecker/push/check Pipeline was successful Details
2023-05-04 09:27:19 +00:00
Bruno BELANYI beeafe5e33 home: nix: remove unused 'options' 2023-05-04 09:27:19 +00:00
Bruno BELANYI 85e31e5d6c home: zsh: remove unused 'with pkgs' 2023-05-04 09:27:19 +00:00
Bruno BELANYI 9f3a8ac2bd home: zsh: extract aliases
ci/woodpecker/push/check Pipeline was successful Details
It doesn't (yet?) support nushell, if I ever end up switching to it.
2023-05-03 20:20:07 +01:00
Bruno BELANYI 4feee73b8e home: vim: set 'splitkeep' 2023-05-03 20:02:34 +01:00
Bruno BELANYI 7bd2e1504d home: vim: lua: lsp: customize diagnostics display 2023-05-03 15:02:44 +00:00
Bruno BELANYI b0f054b1e6 home: vim: configure 'lsp_lines' 2023-05-03 15:02:44 +00:00
Bruno BELANYI 6cdbd6bb29 home: vim: lua: lsp: remove diagnostic on hover 2023-05-03 15:02:44 +00:00
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
ci/woodpecker/push/check Pipeline was successful Details
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
ci/woodpecker/push/check Pipeline was successful Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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'
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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'
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
2023-03-14 17:00:45 +00:00
Bruno BELANYI 623bb6c893 home: vim: git: attach to untracked buffers
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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'
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
They broke, once again...
2023-02-19 14:16:13 +00:00
Bruno BELANYI 75396c4c4c home: firefox: tridactyl: use more private editor
continuous-integration/drone/push Build is passing Details
2023-02-19 14:12:09 +00:00
Bruno BELANYI 5d42f55fc6 home: firefox: tridactyl: fix 'editorcmd'
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
2023-02-19 12:25:40 +00:00
Bruno BELANYI 225e8f236e home: vim: ftdetect: add direnv
continuous-integration/drone/push Build is passing Details
2023-02-17 15:53:55 +00:00
Bruno BELANYI 2ec9aae6b7 home: pager: remove colored man pages
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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'
continuous-integration/drone/push Build is passing Details
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'
continuous-integration/drone/push Build is passing Details
2023-02-11 22:17:22 +00:00
Bruno BELANYI 8dcc59d481 flake: bump inputs
continuous-integration/drone/push Build is passing Details
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
continuous-integration/drone/push Build is passing Details
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