Skip to content

Instantly share code, notes, and snippets.

View craigmac's full-sized avatar
🥋
Elbows up.

C.D. MacEachern craigmac

🥋
Elbows up.
View GitHub Profile
@bbqtd
bbqtd / macos-tmux-256color.md
Last active April 23, 2025 07:52
Installing tmux-256color for macOS

Installing tmux-256color for macOS

  • macOS 10.15.5
  • tmux 3.1b

macOS has ncurses version 5.7 which does not ship the terminfo description for tmux. There're two ways that can help you to solve this problem.

The Fast Blazing Solution

Instead of tmux-256color, use screen-256color which comes with system. Place this command into ~/.tmux.conf or ~/.config/tmux/tmux.conf(for version 3.1 and later):

# Reconstructed via infocmp from file: /usr/share/terminfo/t/tmux-256color
tmux-256color|tmux with 256 colors,
OTbs, OTpt, am, hs, km, mir, msgr, xenl, AX, G0,
colors#256, cols#80, it#8, lines#24, pairs#32767, U8#1,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
@romainl
romainl / Vim_pushing_built-in_features_beyond_their_limits.markdown
Last active April 20, 2025 06:58
Vim: pushing built-in features beyond their limits

Vim: pushing built-in features beyond their limits

The situation

Searching can be an efficient way to navigate the current buffer.

The first search commands we learn are usually / and ?. These are seriously cool, especially with the incsearch option enabled which lets us keep typing to refine our search pattern. / and ? really shine when all we want is to jump to something we already have our eyeballs on but they are not fit for every situation:

  • when we want to search something that's not directly there, those two commands can make us lose context very quickly,
  • when we need to compare the matches.
@MlsDmitry
MlsDmitry / guide.md
Last active March 27, 2025 14:40
MacOs Guide: determine hex code sequence for key combinations
  1. Ctrl + F keys and a lot of other key combinations are hooked by MacOs. You're mostly don't use them, so just turn everything off in System Preferences -> Keyboard -> Shortcuts. If you have another software that handles your key combinations, like Keyboard Maestro, you should turn these actions/macros off, otherwise you won't get right hex sequence.

  2. Enter command below in default MacOs Terminal. (Warning!: shortcuts can also be hooked by terminal emulators, like iTerm. To avoid it use default MacOs terminal. If you are on alacritty, you can enter alacritty --print-events and use poped up terminal).

xxd -psg

then type your key combination and hit enter. (Warning!: if you don't see any output for your combination, then read step 1 again)

@romainl
romainl / git-jump
Last active March 10, 2025 22:59
git-jump hack that can be used FROM Vim
#!/bin/sh
usage() {
cat <<\EOF
usage: git jump <mode> [<args>]
Jump to interesting elements in an editor.
The <mode> parameter is one of:
diff: elements are diff hunks. Arguments are given to diff.
@Leenuus
Leenuus / README.md
Last active March 6, 2025 11:07
Display command output in neovim split window

I just implemented a simple but really powerful user command suggested by romainl in lua, running asynchronously using vim.uv API.

In short, this is a command named Redir, which redirect ex command or shell commands stdin/sterr to neovim buffers. So you can view them in split window on the fly.

With Redir, you can do:

  • A good way to inspect your neovim.
" show all your messages in split, I love this one and make it default
@romainl
romainl / redir.md
Last active January 2, 2025 00:36
Redirect the output of a Vim or external command into a scratch buffer

Redirect the output of a Vim or external command into a scratch buffer

Usage (any shell)

Show full output of command :hi in scratch window:

:Redir hi

Show full output of command :!ls -al in scratch window:

@romainl
romainl / _rnb.md
Last active November 24, 2024 19:50
RNB, a Vim colorscheme template
@romainl
romainl / eslint-standard.md
Last active November 9, 2024 20:55
Painless ESLint/Standard integration

Painless ESLint/Standard integration

Our goal, here, is threefold:

  • use Vim's built-in features to their fullest,
  • be a good project citizen even if we don't use $EDITOR_DU_JOUR,
  • have a minimal but beneficial impact on the infrastructure of the project we work on.

Expose a simple interface for linting at the project level

@jfcherng
jfcherng / st4-changelog.md
Last active August 18, 2024 07:25
Sublime Text 4 changelog just because it's not on the official website yet.