Skip to content

Instantly share code, notes, and snippets.

View erikw's full-sized avatar
💭
0b011111000110

Erik Westrup erikw

💭
0b011111000110
View GitHub Profile
@erikw
erikw / .vim-startify-startify_custom_header
Last active November 29, 2021 18:34
vim-statify neovim/vim version in fortune
.
@erikw
erikw / ncmpcpp-vim-keybindings
Created December 7, 2021 19:56
NPCPP Vim keybindings
#~/.config/ncmpcpp/bindings
# How to configure NCMPCPP to get Vim-like keybindings
def_key "j"
scroll_down
def_key "k"
scroll_up
def_key "h"
previous_column
# Maintainer: Erik Westrup
# Reference on git checkout: https://man.archlinux.org/man/PKGBUILD.5#USING_VCS_SOURCES
pkgname=zscreen
pkgver=20160510
pkgrel=1
pkgdesc="Scrot and imgur/s3 upload zenity gui"
arch=('any')
url="https://github.com/ChrisZeta/Scrot-and-imgur-zenity-GUI"
_git_commit='e9d15e606a0d358f002d0ec45324069c5cff3c68'
@erikw
erikw / sed-inline-s-linux-mac-compatible.sh
Last active January 18, 2022 19:48
sed inline -s compatible with both Linux and BSD/macOS
# To be compatiable with both GNU sed and the old BSD sed that macOS uses, need to set and inplace backup extension and then remove the file.
# $(sed -i -e '...' file) works with GNU sed and modern BSD. However on macOS a backup file "file-e" will be created
# Reference: https://unix.stackexchange.com/a/131940/19909
sed -i.bak -e 'expr...' file && rm file.bak
MOVED TO ⮕ https://github.com/erikw/restic-automatic-backup-scheduler
@erikw
erikw / freebsd_install.sh
Last active May 12, 2022 21:54
A log of how I configured FreeBSD spring 2018 on my Intel NUC Dawson Canyon NUC7i3DNH2
#!/usr/bin/env bash
# A log of how I configured FreeBSD spring 2018 on my Intel NUC Dawson Canyon NUC7i3DNH2E (NUC7i3DNH).
# Modeline {
# vi: foldmarker={,} foldmethod=marker foldlevel=0 tabstop=4
# }
# Links {
# FreeBSD vs Linux:
# http://www.over-yonder.net/~fullermd/rants/bsd4linux/01
@erikw
erikw / snp
Last active December 24, 2023 06:11
snp: Wrap shell command in BTRFS snapper pre-post snapshots and log outputs.
#!/usr/bin/env bash
# Runs a command wrapped in btrfs snapper pre-post snapshots.
# Usage: $ snp <commands>
# e.g.: $ snp pacman -Syyu
# Requirements: snapper (https://wiki.archlinux.org/title/snapper)
# The latest version of this script is hosted at https://gist.github.com/erikw/5229436
log_path="/var/local/log/snp"
date=$(date "+%Y-%m-%d-%H%M%S")
log_file="${log_path}/snp_${date}.log"
@erikw
erikw / znp
Last active March 2, 2024 17:43
znp: Wrap shell command in ZFS pre-post snapshots and log outputs.
#!/usr/bin/env bash
# Runs a command wrapped in ZFS pre-post snapshots. The whole data pool is recursively snapshotted.
# Analogous to my snp script for BTRFS: https://gist.github.com/erikw/5229436
# Usage: $ znp <commands>
# e.g.: $ znp pgk upgrade
# e.g.: $ znp portmaster -aG
# e.g.: $ znp freebsd-upgrade install
zfs_pool=zroot
@erikw
erikw / ..git-commit-status - Generate git commit message from git-status.md
Last active March 13, 2024 07:44
Generate git commit message from git-status. Will generate a commit message like "Added: file1.py file2.py file3.py Modified: file4.py file5.py Deleted: README.md Renamed: test.txt-> test2.txt". Put this in your .gitconfig.

git commit-status alias

An alias that will generate a git commit message staged changes as shown in git-status. Put this alias (section below) in your .gitconfig.

The message generated will be in the format of:

$ git status --porcelain
A file1.py
A file2.py
A file3.py