mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-07-16 09:32:39 +02:00
feat: morden cli tools
This commit is contained in:
@@ -32,7 +32,6 @@
|
|||||||
# misc
|
# misc
|
||||||
pkgs-unstable.devbox
|
pkgs-unstable.devbox
|
||||||
glow # markdown previewer
|
glow # markdown previewer
|
||||||
fzf
|
|
||||||
gdu # disk usage analyzer, required by AstroNvim
|
gdu # disk usage analyzer, required by AstroNvim
|
||||||
bfg-repo-cleaner # remove large files from git history
|
bfg-repo-cleaner # remove large files from git history
|
||||||
k6 # load testing tool
|
k6 # load testing tool
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ in {
|
|||||||
## Optional dependencies
|
## Optional dependencies
|
||||||
fd # faster projectile indexing
|
fd # faster projectile indexing
|
||||||
imagemagick # for image-dired
|
imagemagick # for image-dired
|
||||||
|
fd # faster projectile indexing
|
||||||
zstd # for undo-fu-session/undo-tree compression
|
zstd # for undo-fu-session/undo-tree compression
|
||||||
|
|
||||||
# go-mode
|
# go-mode
|
||||||
|
|||||||
@@ -132,7 +132,13 @@ Press `<Space> + D` to view available bindings and options.
|
|||||||
| Description | Shortcut |
|
| Description | Shortcut |
|
||||||
| ------------------------------------------------------------ | ---------------------------------------------------------------- |
|
| ------------------------------------------------------------ | ---------------------------------------------------------------- |
|
||||||
| Open spectre.nvim search and replace panel | `<Space> + ss` |
|
| Open spectre.nvim search and replace panel | `<Space> + ss` |
|
||||||
| Search and replace in command line(need install `sad` first) | `find -name "*.nix" \| sad '<pattern>' '<replacement>' \| delta` |
|
|
||||||
|
Search and replace via cli(fd + sad + delta):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
fd "\\.nix$" . | sad '<pattern>' '<replacement>' | delta
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### Surrounding Characters
|
### Surrounding Characters
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
nur-ryan4yin,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
# a cat(1) clone with syntax highlighting and Git integration.
|
|
||||||
programs.bat = {
|
|
||||||
enable = true;
|
|
||||||
config = {
|
|
||||||
pager = "less -FR";
|
|
||||||
theme = "catppuccin-mocha";
|
|
||||||
};
|
|
||||||
themes = {
|
|
||||||
# https://raw.githubusercontent.com/catppuccin/bat/main/Catppuccin-mocha.tmTheme
|
|
||||||
catppuccin-mocha = {
|
|
||||||
src = nur-ryan4yin.packages.${pkgs.system}.catppuccin-bat;
|
|
||||||
file = "Catppuccin-mocha.tmTheme";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
+93
-28
@@ -1,13 +1,11 @@
|
|||||||
{pkgs, ...}: {
|
{
|
||||||
|
pkgs,
|
||||||
|
nur-ryan4yin,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
neofetch
|
neofetch
|
||||||
|
|
||||||
# archives
|
|
||||||
zip
|
|
||||||
xz
|
|
||||||
unzip
|
|
||||||
p7zip
|
|
||||||
|
|
||||||
# networking tools
|
# networking tools
|
||||||
mtr # A network diagnostic tool
|
mtr # A network diagnostic tool
|
||||||
iperf3
|
iperf3
|
||||||
@@ -18,43 +16,66 @@
|
|||||||
nmap # A utility for network discovery and security auditing
|
nmap # A utility for network discovery and security auditing
|
||||||
ipcalc # it is a calculator for the IPv4/v6 addresses
|
ipcalc # it is a calculator for the IPv4/v6 addresses
|
||||||
|
|
||||||
# Text Processing
|
# archives
|
||||||
# Docs: https://github.com/learnbyexample/Command-line-text-processing
|
zip
|
||||||
gnugrep # GNU grep, provides `grep`/`egrep`/`fgrep`
|
xz
|
||||||
gnused # GNU sed, very powerful(mainly for replacing text in files)
|
unzip
|
||||||
gnumake
|
p7zip
|
||||||
just # a command runner like make, but simpler
|
|
||||||
gawk # GNU awk, a pattern scanning and processing language
|
|
||||||
delta # A viewer for git and diff output
|
|
||||||
# A fast and polyglot tool for code searching, linting, rewriting at large scale
|
|
||||||
# supported languages: only some mainstream languages currently(do not support nix/nginx/yaml/toml/...)
|
|
||||||
ast-grep
|
|
||||||
jq # A lightweight and flexible command-line JSON processor
|
|
||||||
yq-go # yaml processer https://github.com/mikefarah/yq
|
|
||||||
|
|
||||||
sad # CLI search and replace, with diff preview, really useful!!!
|
|
||||||
lazygit # Git terminal UI.
|
|
||||||
|
|
||||||
# misc
|
# misc
|
||||||
tldr
|
tldr
|
||||||
cowsay
|
cowsay
|
||||||
file
|
file
|
||||||
|
findutils
|
||||||
which
|
which
|
||||||
tree
|
tree
|
||||||
gnutar
|
gnutar
|
||||||
zstd
|
zstd
|
||||||
caddy
|
|
||||||
gnupg
|
gnupg
|
||||||
rsync
|
rsync
|
||||||
|
|
||||||
|
# Text Processing
|
||||||
|
# Docs: https://github.com/learnbyexample/Command-line-text-processing
|
||||||
|
|
||||||
|
gnugrep # GNU grep, provides `grep`/`egrep`/`fgrep`
|
||||||
|
gnused # GNU sed, very powerful(mainly for replacing text in files)
|
||||||
|
gnumake
|
||||||
|
gawk # GNU awk, a pattern scanning and processing language
|
||||||
|
jq # A lightweight and flexible command-line JSON processor
|
||||||
|
|
||||||
|
# morden cli tools, replacement of grep/sed/...
|
||||||
|
|
||||||
|
# Interactively filter its input using fuzzy searching, not limit to filenames.
|
||||||
|
fzf
|
||||||
|
# search for files by name, faster than find
|
||||||
|
fd
|
||||||
|
# search for files by its content, replacement of grep
|
||||||
|
(ripgrep.override {withPCRE2 = true;})
|
||||||
|
|
||||||
|
# A fast and polyglot tool for code searching, linting, rewriting at large scale
|
||||||
|
# supported languages: only some mainstream languages currently(do not support nix/nginx/yaml/toml/...)
|
||||||
|
ast-grep
|
||||||
|
|
||||||
|
sad # CLI search and replace, just like sed, but with diff preview.
|
||||||
|
yq-go # yaml processer https://github.com/mikefarah/yq
|
||||||
|
just # a command runner like make, but simpler
|
||||||
|
delta # A viewer for git and diff output
|
||||||
|
lazygit # Git terminal UI.
|
||||||
|
hyperfine # command-line benchmarking tool
|
||||||
|
gping # ping, but with a graph(TUI)
|
||||||
|
doggo # DNS client for humans
|
||||||
|
duf # Disk Usage/Free Utility - a better 'df' alternative
|
||||||
|
du-dust # A more intuitive version of `du` in rust
|
||||||
|
ncdu # analyzer your disk usage Interactively, via TUI(replacement of `du`)
|
||||||
|
|
||||||
# nix related
|
# nix related
|
||||||
#
|
#
|
||||||
# it provides the command `nom` works just like `nix
|
# it provides the command `nom` works just like `nix
|
||||||
# with more details log output
|
# with more details log output
|
||||||
nix-output-monitor
|
nix-output-monitor
|
||||||
nodePackages.node2nix
|
|
||||||
|
|
||||||
# productivity
|
# productivity
|
||||||
|
caddy
|
||||||
hugo # static site generator
|
hugo # static site generator
|
||||||
glow # markdown previewer in terminal
|
glow # markdown previewer in terminal
|
||||||
];
|
];
|
||||||
@@ -69,6 +90,22 @@
|
|||||||
icons = true;
|
icons = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# a cat(1) clone with syntax highlighting and Git integration.
|
||||||
|
bat = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
pager = "less -FR";
|
||||||
|
theme = "catppuccin-mocha";
|
||||||
|
};
|
||||||
|
themes = {
|
||||||
|
# https://raw.githubusercontent.com/catppuccin/bat/main/Catppuccin-mocha.tmTheme
|
||||||
|
catppuccin-mocha = {
|
||||||
|
src = nur-ryan4yin.packages.${pkgs.system}.catppuccin-bat;
|
||||||
|
file = "Catppuccin-mocha.tmTheme";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# A command-line fuzzy finder
|
# A command-line fuzzy finder
|
||||||
fzf = {
|
fzf = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -90,11 +127,39 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# skim provides a single executable: sk.
|
# zoxide is a smarter cd command, inspired by z and autojump.
|
||||||
# Basically anywhere you would want to use grep, try sk instead.
|
# It remembers which directories you use most frequently,
|
||||||
skim = {
|
# so you can "jump" to them in just a few keystrokes.
|
||||||
|
# zoxide works on all major shells.
|
||||||
|
#
|
||||||
|
# z foo # cd into highest ranked directory matching foo
|
||||||
|
# z foo bar # cd into highest ranked directory matching foo and bar
|
||||||
|
# z foo / # cd into a subdirectory starting with foo
|
||||||
|
#
|
||||||
|
# z ~/foo # z also works like a regular cd command
|
||||||
|
# z foo/ # cd into relative path
|
||||||
|
# z .. # cd one level up
|
||||||
|
# z - # cd into previous directory
|
||||||
|
#
|
||||||
|
# zi foo # cd with interactive selection (using fzf)
|
||||||
|
#
|
||||||
|
# z foo<SPACE><TAB> # show interactive completions (zoxide v0.8.0+, bash 4.4+/fish/zsh only)
|
||||||
|
zoxide = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableBashIntegration = true;
|
enableBashIntegration = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
enableNushellIntegration = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Atuin replaces your existing shell history with a SQLite database,
|
||||||
|
# and records additional context for your commands.
|
||||||
|
# Additionally, it provides optional and fully encrypted
|
||||||
|
# synchronisation of your history between machines, via an Atuin server.
|
||||||
|
atuin = {
|
||||||
|
enable = true;
|
||||||
|
enableBashIntegration = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
enableNushellIntegration = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user