Compare commits

...

8 Commits

Author SHA1 Message Date
github-actions[bot]
1dd3d952cf chore: update pre-commit hooks (#54)
Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com>
2024-12-22 02:07:59 +02:00
1ffd6e1569 feat(nvim): update blink config 2024-12-20 22:54:17 +02:00
a76033a48a chore(deps): update Brewfile 2024-12-20 18:55:14 +02:00
34dc18883e chore(config): aerospace tweaks 2024-12-20 18:14:57 +02:00
832d8b94f3 chore(nvim): add the awesome youtube video to mini 2024-12-20 12:37:00 +02:00
c40eb765f8 chore(config): tweak aerospace config 2024-12-20 12:06:37 +02:00
github-actions[bot]
1bb7e9076b chore: update pre-commit hooks (#53)
Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com>
2024-12-20 10:11:10 +02:00
ivuorinen
17821dfefa chore(git): Update submodules (automated)
asdf 54d15e3
antidote
dotbot v1.20.4
2024-12-20 03:09:26 +00:00
7 changed files with 207 additions and 81 deletions

View File

@@ -48,7 +48,7 @@ repos:
- id: actionlint - id: actionlint
- repo: https://github.com/renovatebot/pre-commit-hooks - repo: https://github.com/renovatebot/pre-commit-hooks
rev: 39.74.1 rev: 39.80.0
hooks: hooks:
- id: renovate-config-validator - id: renovate-config-validator

View File

@@ -40,13 +40,37 @@ automatically-unhide-macos-hidden-apps = true
# run = ['layout floating', 'move-node-to-workspace S'] # The callback itself # run = ['layout floating', 'move-node-to-workspace S'] # The callback itself
[[on-window-detected]] [[on-window-detected]]
if.app-name-regex-substring = 'ferdium' if.app-id = 'org.ferdium.ferdium-app' # Ferdium, has WhatsApp etc.
run = 'layout floating' run = ['layout floating']
[[on-window-detected]] [[on-window-detected]]
if.app-name-regex-substring = 'finder' if.app-name-regex-substring = 'finder'
run = 'layout floating' run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.apple.finder' # Finder
run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.apple.mail' # Mail
run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.DanPristupov.Fork' # Fork
run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.flexibits.fantastical2.mac' # Fantastical
run = 'layout floating'
[[on-window-detected]]
if.app-id = 'org.whispersystems.signal-desktop' # Signal
run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.tidal.desktop'
run = ['layout floating', 'move-node-to-workspace 2']
# Possible values: (qwerty|dvorak) # Possible values: (qwerty|dvorak)
# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping # See https://nikitabobko.github.io/AeroSpace/guide#key-mapping
[key-mapping] [key-mapping]
@@ -62,10 +86,11 @@ preset = 'qwerty'
[gaps] [gaps]
inner.horizontal = 5 inner.horizontal = 5
inner.vertical = 5 inner.vertical = 5
outer.top = 5 # outer.top = 0
outer.right = 5 outer.top = [{ monitor.'^built-in retina display$' = 20 }, 0]
outer.bottom = 5 outer.right = 0
outer.left = 5 outer.bottom = 0
outer.left = 0
# 'main' binding mode declaration # 'main' binding mode declaration
# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes # See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes
@@ -97,13 +122,13 @@ outer.left = 5
# end tell' # end tell'
# ''' # '''
alt-ctrl-shift-f = 'fullscreen' alt-cmd-shift-f = 'fullscreen'
alt-ctrl-f = 'layout floating' alt-cmd-f = 'layout floating'
alt-shift-left = 'join-with left' alt-cmd-left = 'join-with left'
alt-shift-down = 'join-with down' alt-cmd-down = 'join-with down'
alt-shift-up = 'join-with up' alt-cmd-up = 'join-with up'
alt-shift-right = 'join-with right' alt-cmd-right = 'join-with right'
# See: https://nikitabobko.github.io/AeroSpace/commands#focus # See: https://nikitabobko.github.io/AeroSpace/commands#focus
alt-h = 'focus left' alt-h = 'focus left'
@@ -117,39 +142,32 @@ alt-shift-j = 'move down'
alt-shift-k = 'move up' alt-shift-k = 'move up'
alt-shift-l = 'move right' alt-shift-l = 'move right'
# See: https://nikitabobko.github.io/AeroSpace/commands#resize
alt-shift-minus = 'resize smart -50'
alt-shift-equal = 'resize smart +50'
# See: https://nikitabobko.github.io/AeroSpace/commands#workspace # See: https://nikitabobko.github.io/AeroSpace/commands#workspace
alt-cmd-z = 'workspace 1' cmd-shift-1 = 'workspace 1' # Main
alt-cmd-x = 'workspace 2' cmd-shift-2 = 'workspace 2' # Music
# alt-cmd-c = 'workspace 3'
# alt-cmd-v = 'workspace 4'
# See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace # See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace
alt-shift-1 = 'move-node-to-workspace 1 --focus-follows-window' alt-cmd-1 = 'move-node-to-workspace 1 --focus-follows-window'
alt-shift-2 = 'move-node-to-workspace 2 --focus-follows-window' alt-cmd-2 = 'move-node-to-workspace 2 --focus-follows-window'
# alt-shift-3 = 'move-node-to-workspace 3 --focus-follows-window'
# alt-shift-4 = 'move-node-to-workspace 4 --focus-follows-window'
alt-tab = 'workspace-back-and-forth' shift-tab = 'workspace-back-and-forth'
alt-shift-tab = 'move-workspace-to-monitor --wrap-around next' # alt-shift-tab = 'move-workspace-to-monitor --wrap-around next'
# See: https://nikitabobko.github.io/AeroSpace/commands#mode # See: https://nikitabobko.github.io/AeroSpace/commands#mode
alt-cmd-s = 'mode service'
alt-cmd-a = 'mode apps'
# Taken:
# - <alt> + hjkl 1234 ,.
# - <alt><shift> + hjkl 1234 -=; <cr> ↑↓←→
alt-c = 'exec-and-forget open -a /Applications/Ferdium.app'
alt-o = 'exec-and-forget open -a /Applications/Obsidian.app'
alt-b = 'exec-and-forget open -a /Applications/Brave Browser.app'
alt-t = 'exec-and-forget open -a /Applications/TIDAL.app'
# 'service' binding mode declaration.
# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes # See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes
alt-a = 'mode apps'
alt-s = 'mode service'
alt-d = 'mode resize'
[mode.apps.binding]
esc = ['reload-config', 'mode main']
alt-b = ['exec-and-forget open -a /Applications/Brave Browser.app', 'mode main']
alt-c = ['exec-and-forget open -a /Applications/Ferdium.app', 'mode main']
alt-o = ['exec-and-forget open -a /Applications/Obsidian.app', 'mode main']
alt-s = ['exec-and-forget open -a /Applications/Slack.app', 'mode main']
alt-t = ['exec-and-forget open -a /Applications/TIDAL.app', 'mode main']
alt-w = ['exec-and-forget open -a /Applications/WezTerm.app', 'mode main']
[mode.service.binding] [mode.service.binding]
esc = ['reload-config', 'mode main'] esc = ['reload-config', 'mode main']
r = ['flatten-workspace-tree', 'mode main'] # reset layout r = ['flatten-workspace-tree', 'mode main'] # reset layout
@@ -157,5 +175,9 @@ r = ['flatten-workspace-tree', 'mode main'] # reset layout
f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout
backspace = ['close-all-windows-but-current', 'mode main'] backspace = ['close-all-windows-but-current', 'mode main']
[mode.apps.binding] [mode.resize.binding]
alt-w = ['exec-and-forget open -a /Applications/WezTerm.app', 'mode main'] # See: https://nikitabobko.github.io/AeroSpace/commands#resize
r = ['flatten-workspace-tree', 'mode main'] # reset layout
h = 'resize smart -70'
l = 'resize smart +70'
esc = ['reload-config', 'mode main']

View File

@@ -13,6 +13,7 @@ tap "jesseduffield/lazygit"
tap "k8sgpt-ai/k8sgpt" tap "k8sgpt-ai/k8sgpt"
tap "keith/formulae" tap "keith/formulae"
tap "mongodb/brew" tap "mongodb/brew"
tap "nikitabobko/tap"
tap "reviewdog/tap" tap "reviewdog/tap"
tap "shivammathur/extensions" tap "shivammathur/extensions"
tap "shivammathur/php" tap "shivammathur/php"
@@ -21,6 +22,20 @@ tap "teamookla/speedtest"
tap "xwmx/taps" tap "xwmx/taps"
# Run your GitHub Actions locally # Run your GitHub Actions locally
brew "act" brew "act"
# Simple, modern, secure file encryption
brew "age"
# Mozilla CA certificate store
brew "ca-certificates"
# Mozilla CA bundle for Python
brew "certifi"
# Cryptographic recipes and primitives for Python
brew "cryptography"
# YAML Parser
brew "libyaml"
# Automate deployment, configuration, and upgrading
brew "ansible"
# Checks ansible playbooks for practices and behaviour
brew "ansible-lint"
# Generic-purpose lossless compression algorithm by Google # Generic-purpose lossless compression algorithm by Google
brew "brotli" brew "brotli"
# Library and utilities for processing GIFs # Library and utilities for processing GIFs
@@ -31,6 +46,8 @@ brew "highway"
brew "imath" brew "imath"
# JPEG image codec that aids compression and decompression # JPEG image codec that aids compression and decompression
brew "jpeg-turbo" brew "jpeg-turbo"
# Library for manipulating PNG images
brew "libpng"
# Zstandard is a real-time compression algorithm # Zstandard is a real-time compression algorithm
brew "zstd" brew "zstd"
# New file format for still image compression # New file format for still image compression
@@ -39,32 +56,38 @@ brew "jpeg-xl"
brew "aom" brew "aom"
# Apache Portable Runtime library # Apache Portable Runtime library
brew "apr" brew "apr"
# Mozilla CA certificate store
brew "ca-certificates"
# Cryptography and SSL/TLS Toolkit
brew "openssl@3"
# Companion library to apr, the Apache Portable Runtime library # Companion library to apr, the Apache Portable Runtime library
brew "apr-util" brew "apr-util"
# Password hashing library and CLI utility # Password hashing library and CLI utility
brew "argon2" brew "argon2"
# Spell checker with better logic than ispell
brew "aspell"
# Automatic configure script builder # Automatic configure script builder
brew "autoconf" brew "autoconf"
# Collection of over 500 reusable autoconf macros # Tool for generating GNU Standards-compliant Makefiles
brew "autoconf-archive" brew "automake"
# Cryptographic recipes and primitives for Python
brew "cryptography"
# Official Amazon AWS command-line interface
brew "awscli"
# Bourne-Again SHell, a UNIX command interpreter
brew "bash"
# GNU multiple precision arithmetic library # GNU multiple precision arithmetic library
brew "gmp" brew "gmp"
# GNU File, Shell, and Text utilities # GNU File, Shell, and Text utilities
brew "coreutils" brew "coreutils"
# Extendable version manager with support for Ruby, Node.js, Erlang & more
brew "asdf"
# Spell checker with better logic than ispell
brew "aspell"
# Collection of over 500 reusable autoconf macros
brew "autoconf-archive"
# Package compiler and linker metadata toolkit
brew "pkgconf"
# Automated text file generator
brew "autogen"
# Official Amazon AWS command-line interface
brew "awscli"
# Bourne-Again SHell, a UNIX command interpreter
brew "bash"
# Clone of cat(1) with syntax highlighting and Git integration
brew "bat"
# Bash Automated Testing System # Bash Automated Testing System
brew "bats-core" brew "bats-core"
# Parser generator
brew "bison"
# Software library to render fonts # Software library to render fonts
brew "freetype" brew "freetype"
# XML-based font configuration API for X Windows # XML-based font configuration API for X Windows
@@ -73,18 +96,32 @@ brew "fontconfig"
brew "gettext" brew "gettext"
# Core application library for C # Core application library for C
brew "glib" brew "glib"
# Mozilla CA bundle for Python # Human-friendly and fast alternative to cut and (sometimes) awk
brew "certifi" brew "choose-rust"
# Cross-platform make
brew "cmake"
# Get a file from an HTTP, HTTPS or FTP server # Get a file from an HTTP, HTTPS or FTP server
brew "curl" brew "curl"
# Lightweight DNS forwarder and DHCP server # Lightweight DNS forwarder and DHCP server
brew "dnsmasq" brew "dnsmasq"
# Spellchecker wrapping library
brew "enchant"
# Perl lib for reading and writing EXIF metadata
brew "exiftool"
# Banner-like program prints strings as ASCII art
brew "figlet"
# Lock file during command # Lock file during command
brew "flock" brew "flock"
# Libraries to talk to Microsoft SQL Server and Sybase databases # Libraries to talk to Microsoft SQL Server and Sybase databases
brew "freetds" brew "freetds"
# Monitor a directory for changes and run a shell command
brew "fswatch"
# Command-line fuzzy finder written in Go
brew "fzf"
# Graphics library to dynamically manipulate images # Graphics library to dynamically manipulate images
brew "gd" brew "gd"
# Disk usage analyzer with console interface written in Go
brew "gdu"
# GitHub command-line tool # GitHub command-line tool
brew "gh" brew "gh"
# OpenType text shaping engine # OpenType text shaping engine
@@ -95,22 +132,40 @@ brew "libb2"
brew "pango" brew "pango"
# Distributed revision control system # Distributed revision control system
brew "git" brew "git"
# Enable transparent encryption/decryption of files in a git repo
brew "git-crypt"
# Small git utilities
brew "git-extras"
# See your latest local git branches, formatted real fancy
brew "git-recent"
# Render markdown on the CLI # Render markdown on the CLI
brew "glow" brew "glow"
# GNU implementation of the famous stream editor
brew "gnu-sed"
# Validating, recursive, caching DNS resolver # Validating, recursive, caching DNS resolver
brew "unbound" brew "unbound"
# GNU Transport Layer Security (TLS) Library # GNU Transport Layer Security (TLS) Library
brew "gnutls" brew "gnutls"
# GNU Pretty Good Privacy (PGP) package # GNU Pretty Good Privacy (PGP) package
brew "gnupg" brew "gnupg"
# Library access to GnuPG
brew "gpgme"
# Open source suite of directory software
brew "openldap"
# Manage your GnuPG keys with ease!
brew "gpg-tui"
# Image manipulation # Image manipulation
brew "netpbm" brew "netpbm"
# Library to render SVG files using Cairo # Library to render SVG files using Cairo
brew "librsvg" brew "librsvg"
# Graph visualization software from AT&T and Bell Labs # Graph visualization software from AT&T and Bell Labs
brew "graphviz" brew "graphviz"
# GNU grep, egrep and fgrep
brew "grep"
# Popular GNU data compression program # Popular GNU data compression program
brew "gzip" brew "gzip"
# Text-based UI library
brew "ncurses"
# Improved top (interactive process viewer) # Improved top (interactive process viewer)
brew "htop" brew "htop"
# Portable abstraction of the hierarchical topology of modern architectures # Portable abstraction of the hierarchical topology of modern architectures
@@ -121,6 +176,8 @@ brew "libheif"
brew "imagemagick" brew "imagemagick"
# Modular IRC client # Modular IRC client
brew "irssi" brew "irssi"
# Image manipulation library
brew "jpeg"
# Lightweight and flexible command-line JSON processor # Lightweight and flexible command-line JSON processor
brew "jq" brew "jq"
# JSON parser for C # JSON parser for C
@@ -129,40 +186,76 @@ brew "json-c"
brew "krb5" brew "krb5"
# Tool to detect/remediate misconfig and security risks of GitHub/GitLab assets # Tool to detect/remediate misconfig and security risks of GitHub/GitLab assets
brew "legitify" brew "legitify"
# BSD-style licensed readline alternative
brew "libedit"
# Conversion library
brew "libiconv"
# Postgres C API library # Postgres C API library
brew "libpq" brew "libpq"
# Version of the SSL/TLS protocol forked from OpenSSL
brew "libressl"
# Multi-platform support library with a focus on asynchronous I/O # Multi-platform support library with a focus on asynchronous I/O
brew "libuv" brew "libuv"
# YAML Parser # GNOME XML library
brew "libyaml" brew "libxml2"
# C library for reading, creating, and modifying zip archives
brew "libzip"
# Package manager for the Lua programming language # Package manager for the Lua programming language
brew "luarocks" brew "luarocks"
# LZMA-based compression program similar to gzip or bzip2
brew "lzip"
# Swiss Army Knife for macOS # Swiss Army Knife for macOS
brew "m-cli" brew "m-cli"
# Collection of tools that nobody wrote when UNIX was young
brew "moreutils"
# NCurses Disk Usage
brew "ncdu"
# HTTP(S) server and reverse proxy, and IMAP/POP3 proxy server # HTTP(S) server and reverse proxy, and IMAP/POP3 proxy server
brew "nginx" brew "nginx"
# Port scanning utility for large networks # Port scanning utility for large networks
brew "nmap" brew "nmap"
# Libraries for security-enabled client and server applications # Libraries for security-enabled client and server applications
brew "nss" brew "nss"
# Open source suite of directory software # Cryptography and SSL/TLS Toolkit
brew "openldap" brew "openssl@1.1"
# General-purpose scripting language # ISO-C API and CLI for generating UUIDs
brew "php" brew "ossp-uuid"
# General-purpose scripting language # General-purpose scripting language
brew "php@8.2" brew "php@8.2"
# Manage compile and link flags for libraries # General-purpose scripting language
brew "pkg-config" brew "php@8.3", link: true
# Python version management
brew "pyenv"
# Migrate pip packages from one Python version to another
brew "pyenv-pip-migrate"
# Pyenv plugin to manage virtualenv
brew "pyenv-virtualenv"
# Interpreted, interactive, object-oriented programming language
brew "python@3.11"
# Install various Ruby versions and implementations
brew "ruby-build"
# Ruby version manager
brew "rbenv"
# Generate C-based recognizers from regular expressions
brew "re2c"
# Static analysis and lint tool, for (ba)sh scripts
brew "shellcheck"
# Send macOS User Notifications from the command-line # Send macOS User Notifications from the command-line
brew "terminal-notifier" brew "terminal-notifier"
# Tool which checks for the support of TLS/SSL ciphers and flaws # Tool which checks for the support of TLS/SSL ciphers and flaws
brew "testssl" brew "testssl"
# Terraform version manager inspired by rbenv
brew "tfenv"
# Linter for Terraform files
brew "tflint"
# Static analysis security scanner for your terraform code # Static analysis security scanner for your terraform code
brew "tfsec" brew "tfsec"
# Terminal multiplexer # Terminal multiplexer
brew "tmux" brew "tmux"
# Display directories as trees (with optional color/HTML output) # Display directories as trees (with optional color/HTML output)
brew "tree" brew "tree"
# Tool for creating isolated virtual python environments
brew "virtualenv"
# Command-line interface to the WakaTime api # Command-line interface to the WakaTime api
brew "wakatime-cli" brew "wakatime-cli"
# Executes a program periodically, showing output fullscreen # Executes a program periodically, showing output fullscreen
@@ -171,10 +264,16 @@ brew "watch"
brew "wget" brew "wget"
# Check your $HOME for unwanted files and directories # Check your $HOME for unwanted files and directories
brew "xdg-ninja", args: ["HEAD"] brew "xdg-ninja", args: ["HEAD"]
# General-purpose lossless data-compression library
brew "zlib"
# Watcher for macOS 10.14+ light/dark mode changes # Watcher for macOS 10.14+ light/dark mode changes
brew "cormacrelf/tap/dark-notify" brew "cormacrelf/tap/dark-notify"
# Igbinary PHP extension # Cleans up your $HOME from those pesky dotfiles
brew "shivammathur/extensions/igbinary@8.3" brew "doron-cohen/tap/antidot"
# lets you quickly switch between multiple git user profiles
brew "gesquive/tap/git-user"
# Automated code review tool integrated with any code analysis tools regardless of programming language.
brew "reviewdog/tap/reviewdog"
# Imagick PHP extension # Imagick PHP extension
brew "shivammathur/extensions/imagick@8.3" brew "shivammathur/extensions/imagick@8.3"
# Mcrypt PHP extension # Mcrypt PHP extension
@@ -190,9 +289,15 @@ brew "shivammathur/extensions/uuid@8.3"
# Yaml PHP extension # Yaml PHP extension
brew "shivammathur/extensions/yaml@8.3" brew "shivammathur/extensions/yaml@8.3"
# General-purpose scripting language # General-purpose scripting language
brew "shivammathur/php/php", link: false
# General-purpose scripting language
brew "shivammathur/php/php-debug" brew "shivammathur/php/php-debug"
# Find & fix known vulnerabilities in open-source dependencies # Find & fix known vulnerabilities in open-source dependencies
brew "snyk/tap/snyk" brew "snyk/tap/snyk"
# Command-line interface for 1Password
cask "1password-cli"
# AeroSpace is an i3-like tiling window manager for macOS
cask "aerospace"
# Text editor # Text editor
cask "coda" cask "coda"
# Universal database tool and SQL client # Universal database tool and SQL client
@@ -206,10 +311,7 @@ cask "font-jetbrains-mono-nerd-font"
cask "font-lato" cask "font-lato"
cask "font-open-sans" cask "font-open-sans"
cask "font-roboto" cask "font-roboto"
cask "font-source-code-pro"
cask "font-source-code-pro-for-powerline" cask "font-source-code-pro-for-powerline"
cask "font-source-sans-pro"
cask "font-source-serif-pro"
# GIT client # GIT client
cask "fork" cask "fork"
# HTTP and GraphQL Client # HTTP and GraphQL Client

View File

@@ -91,21 +91,19 @@ return {
-- default list of enabled providers defined so that you can extend it -- default list of enabled providers defined so that you can extend it
-- elsewhere in your config, without redefining it, via `opts_extend` -- elsewhere in your config, without redefining it, via `opts_extend`
sources = { sources = {
default = {
'lsp',
'copilot',
'path',
'snippets',
'buffer',
},
providers = { providers = {
copilot = { copilot = {
name = 'copilot', name = 'copilot',
module = 'blink-cmp-copilot', module = 'blink-cmp-copilot',
}, },
}, },
completion = {
enabled_providers = {
'lsp',
'copilot',
'path',
'snippets',
'buffer',
},
},
}, },
-- experimental auto-brackets support -- experimental auto-brackets support

View File

@@ -1,8 +1,12 @@
return { return {
-- Library of 40+ independent Lua modules improving overall Neovim -- Library of 40+ independent Lua modules improving overall Neovim
-- (version 0.8 and higher) experience with minimal effort -- (version 0.8 and higher) experience with minimal effort
--
-- https://github.com/echasnovski/mini.nvim -- https://github.com/echasnovski/mini.nvim
-- https://github.com/echasnovski/mini.nvim/tree/main?tab=readme-ov-file#modules -- https://github.com/echasnovski/mini.nvim/tree/main?tab=readme-ov-file#modules
--
-- YouTube: Text editing with 'mini.nvim' - Neovimconf 2024 - Evgeni Chasnovski
-- https://www.youtube.com/watch?v=cNK5kYJ7mrs
{ {
'echasnovski/mini.nvim', 'echasnovski/mini.nvim',
version = '*', version = '*',