normalized naming to kebab case.
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 255 KiB After Width: | Height: | Size: 255 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 212 KiB After Width: | Height: | Size: 212 KiB |
Before Width: | Height: | Size: 217 KiB After Width: | Height: | Size: 217 KiB |
|
@ -161,13 +161,13 @@ Of course, fish still has the same level of configurability as zsh, it just also
|
||||||
|
|
||||||
To demonstrate my point, this is the default prompt for zsh with no configuration.
|
To demonstrate my point, this is the default prompt for zsh with no configuration.
|
||||||
It *only* shows the hostname, none of the advanced features you can get out of a zsh prompt even without plugins.
|
It *only* shows the hostname, none of the advanced features you can get out of a zsh prompt even without plugins.
|
||||||
![zsh prompt, only shows hostname](zsh_prompt.png)
|
![zsh prompt, only shows hostname](zsh-prompt.png)
|
||||||
Here is bash's prompt.
|
Here is bash's prompt.
|
||||||
It actually gives more info than zsh's, even though zsh can do more when properly configured.
|
It actually gives more info than zsh's, even though zsh can do more when properly configured.
|
||||||
![bash prompt, shows hostname and current directory](bash_prompt.png)
|
![bash prompt, shows hostname and current directory](bash-prompt.png)
|
||||||
And here is fish's default prompt.
|
And here is fish's default prompt.
|
||||||
It has a few colours, shows everything the bash prompt does, and additionally shows the git branch we are on.
|
It has a few colours, shows everything the bash prompt does, and additionally shows the git branch we are on.
|
||||||
![fish prompt, has colours, shows hostname, current directory, and git info](fish_prompt.png)
|
![fish prompt, has colours, shows hostname, current directory, and git info](fish-prompt.png)
|
||||||
|
|
||||||
Text editors are another great example of the evolution of out of the box defaults.
|
Text editors are another great example of the evolution of out of the box defaults.
|
||||||
Vim and Neovim both improved on their predecessors,
|
Vim and Neovim both improved on their predecessors,
|
||||||
|
@ -225,18 +225,18 @@ Naturally, when you go months without using certain parts of a program, you tend
|
||||||
Which-key solves that handily, by offering quick, non-intrusive reminders of what is available.
|
Which-key solves that handily, by offering quick, non-intrusive reminders of what is available.
|
||||||
Here's what my which-key config looks like:
|
Here's what my which-key config looks like:
|
||||||
|
|
||||||
![Which-key.nvim, showing contextual key hints](nvim_which_key.png)
|
![Which-key.nvim, showing contextual key hints](nvim-which-key.png)
|
||||||
|
|
||||||
Now, which-key and its like have been around for a while,
|
Now, which-key and its like have been around for a while,
|
||||||
but other TUI programs have integrated contextual hints without the need for a plugin.
|
but other TUI programs have integrated contextual hints without the need for a plugin.
|
||||||
The two that I am aware of are zellij and helix.
|
The two that I am aware of are zellij and helix.
|
||||||
|
|
||||||
![Helix's contextual hint](helix_contextual_hint.png)
|
![Helix's contextual hint](helix-contextual-hint.png)
|
||||||
|
|
||||||
Helix both has autocompletion for its built in command line and a contextual hint that appears when you press the first key in a multi key combo.
|
Helix both has autocompletion for its built in command line and a contextual hint that appears when you press the first key in a multi key combo.
|
||||||
This drastically helps both new and experienced users learn and remember keybinds without making the editor any less powerful.
|
This drastically helps both new and experienced users learn and remember keybinds without making the editor any less powerful.
|
||||||
|
|
||||||
![Zellij's hint bar](zellij_hints.png)
|
![Zellij's hint bar](zellij-hints.png)
|
||||||
|
|
||||||
Zellij has a bottom bar displaying keybindings available in the current mode.
|
Zellij has a bottom bar displaying keybindings available in the current mode.
|
||||||
This has proven invaluable for me, as I don't use a terminal multiplexer much
|
This has proven invaluable for me, as I don't use a terminal multiplexer much
|
Before Width: | Height: | Size: 217 KiB After Width: | Height: | Size: 217 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.7 KiB |
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 1.9 MiB |
|
@ -3,7 +3,7 @@ title = "Building My New Keyboard."
|
||||||
date = 2024-02-06T15:01:28-06:00
|
date = 2024-02-06T15:01:28-06:00
|
||||||
draft = false
|
draft = false
|
||||||
[cover]
|
[cover]
|
||||||
image = "keyboard_with_case"
|
image = "keyboard-with-case"
|
||||||
+++
|
+++
|
||||||
|
|
||||||
I've been using a split keyboard at home now for several years
|
I've been using a split keyboard at home now for several years
|
||||||
|
@ -36,7 +36,7 @@ I did ruin one switch by letting a leg getting hot enough to melt the housing pl
|
||||||
and desoldering it was unexpectedly difficult,
|
and desoldering it was unexpectedly difficult,
|
||||||
but not every build can be mistake free, right?
|
but not every build can be mistake free, right?
|
||||||
|
|
||||||
![The finished keyboard](finished_keyboard.jpg)
|
![The finished keyboard](finished-keyboard.jpg)
|
||||||
|
|
||||||
Flashing QMK was uneventful, working exactly as the [QMK docs](https://github.com/qmk/qmk_firmware/tree/master/keyboards/ferris/sweep) for the Ferris Sweep suggested.
|
Flashing QMK was uneventful, working exactly as the [QMK docs](https://github.com/qmk/qmk_firmware/tree/master/keyboards/ferris/sweep) for the Ferris Sweep suggested.
|
||||||
I would, however, recommend flashing the micros *before* doing any soldering,
|
I would, however, recommend flashing the micros *before* doing any soldering,
|
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 99 KiB |
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
|
@ -17,7 +17,7 @@ such as the sever crashing if you view a folder with too many files in the web i
|
||||||
Nextcloud does a lot of things, and does things very well,
|
Nextcloud does a lot of things, and does things very well,
|
||||||
but I would not describe it as a rock solid piece of software.
|
but I would not describe it as a rock solid piece of software.
|
||||||
|
|
||||||
Due to this, during our [move to germany](./movingToGermany) and the resuling reorganization of the homelab,
|
Due to this, during our [move to germany](../moving-to-germany) and the resuling reorganization of the homelab,
|
||||||
I decided to *finally* ditch Nextcloud, after talking about it for months.
|
I decided to *finally* ditch Nextcloud, after talking about it for months.
|
||||||
|
|
||||||
## Syncthing
|
## Syncthing
|
||||||
|
@ -65,6 +65,11 @@ and it is the architecture that I used to fully replace nextcloud.
|
||||||
|
|
||||||
## File Manager
|
## File Manager
|
||||||
|
|
||||||
|
While Syncthing is great for file syncing between devices,
|
||||||
|
we also wanted to be able to acess a web interface to upload, download, and view files on devices not in our Syncthing network.
|
||||||
|
|
||||||
|
TODO
|
||||||
|
|
||||||
## Radicale
|
## Radicale
|
||||||
|
|
||||||
The final function my family and I used nextcloud for was calander and todo list syncing.
|
The final function my family and I used nextcloud for was calander and todo list syncing.
|
||||||
|
@ -73,3 +78,9 @@ using DavX^5 as a mobile client, and Thunderbirds Lightning plugin as a desktop
|
||||||
This was almost a more important function than filesyncing, as my wife and I use it to organize our calanders,
|
This was almost a more important function than filesyncing, as my wife and I use it to organize our calanders,
|
||||||
Keep shopping lists, chore lists, lists of movies to watch, lists of long term projects, etc.
|
Keep shopping lists, chore lists, lists of movies to watch, lists of long term projects, etc.
|
||||||
(we *really* used the hell out of todo lists.)
|
(we *really* used the hell out of todo lists.)
|
||||||
|
|
||||||
|
For this, we used [Radicale](TODO). Radicale *only* does CalDav and CardDav syncing, nothing else,
|
||||||
|
but between Syncthing and FileManager, thats all we needed it to do to complete the nextcloud replacement.
|
||||||
|
Installation was incredibly simple, thanks to the existence of a prebuilt NixOs module for it.
|
||||||
|
After about an hour of research and work, I had a Radicale server up and running on my Hetzner node,
|
||||||
|
and had exported all of our calanders from Nextcloud and imported them into Radicale.
|
|
@ -1,6 +1,6 @@
|
||||||
+++
|
+++
|
||||||
title = "Moving To Germany"
|
title = "Moving To Germany"
|
||||||
date = 2024-08-05T22:10:32-05:00
|
date = 2024-07-27T17:10:32-05:00
|
||||||
draft = true
|
draft = true
|
||||||
+++
|
+++
|
||||||
|
|