Skip to content

Commit

Permalink
Update kitty and neovim configs
Browse files Browse the repository at this point in the history
  • Loading branch information
miszo committed Oct 30, 2023
1 parent db49982 commit 7316fd4
Show file tree
Hide file tree
Showing 16 changed files with 2,596 additions and 22 deletions.
2 changes: 2 additions & 0 deletions home/dot_config/brew/Brewfile.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,11 @@ brew 'glab'
{{ end -}}
brew 'gnupg'
brew 'graphviz'
brew 'httpie'
brew 'imagemagick'
brew 'jesseduffield/lazydocker/lazydocker'
brew 'jesseduffield/lazygit/lazygit'
brew 'jless'
brew 'jq'
brew 'libpq'
brew '[email protected]', restart_service: true
Expand Down
44 changes: 44 additions & 0 deletions home/dot_config/kitty/executable_symbol-map-erwin.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
###########################################################
# Symbols Nerd Font complete symbol_map
# easily troubleshoot missing/incorrect characters with:
# kitty --debug-font-fallback
###########################################################

# "Nerd Fonts - Pomicons"
symbol_map U+E000-U+E00D Symbols Nerd Font

# "Nerd Fonts - Powerline"
symbol_map U+e0a0-U+e0a2,U+e0b0-U+e0b3 Symbols Nerd Font

# "Nerd Fonts - Powerline Extra"
symbol_map U+e0a3-U+e0a3,U+e0b4-U+e0c8,U+e0cc-U+e0d2,U+e0d4-U+e0d4 Symbols Nerd Font

# "Nerd Fonts - Symbols original"
symbol_map U+e5fa-U+e62b Symbols Nerd Font

# "Nerd Fonts - Devicons"
symbol_map U+e700-U+e7c5 Symbols Nerd Font

# "Nerd Fonts - Font awesome"
symbol_map U+f000-U+f2e0 Symbols Nerd Font

# "Nerd Fonts - Font awesome extension"
symbol_map U+e200-U+e2a9 Symbols Nerd Font

# "Nerd Fonts - Octicons"
symbol_map U+f400-U+f4a8,U+2665-U+2665,U+26A1-U+26A1,U+f27c-U+f27c Symbols Nerd Font

# "Nerd Fonts - Font Linux"
symbol_map U+F300-U+F313 Symbols Nerd Font

# Nerd Fonts - Font Power Symbols"
symbol_map U+23fb-U+23fe,U+2b58-U+2b58 Symbols Nerd Font

# "Nerd Fonts - Material Design Icons"
symbol_map U+f500-U+fd46 Symbols Nerd Font

# "Nerd Fonts - Weather Icons"
symbol_map U+e300-U+e3eb Symbols Nerd Font

# Misc Code Point Fixes
symbol_map U+21B5,U+25B8,U+2605,U+2630,U+2632,U+2714,U+E0A3,U+E615,U+E62B Symbols Nerd Font
40 changes: 40 additions & 0 deletions home/dot_config/kitty/executable_symbol-map.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Nerd Fonts - Pomicons
symbol_map U+e000-U+e00d Symbols Nerd Font

# Nerd Fonts - Powerline
symbol_map U+e0a0-U+e0a2,U+e0b0-U+e0b3 Symbols Nerd Font

# Nerd Fonts - Powerline Extra
symbol_map U+e0a3-U+e0a3,U+e0b4-U+e0c8,U+e0cc-U+e0d2,U+e0d4-U+e0d4 Symbols Nerd Font

# Nerd Fonts - Symbols original
symbol_map U+e5fa-U+e62b Symbols Nerd Font

# Nerd Fonts - Devicons
symbol_map U+e700-U+e7c5 Symbols Nerd Font
symbol_map U+eb66 Symbols Nerd Font

# Nerd Fonts - Font awesome
symbol_map U+f000-U+f2e0 Symbols Nerd Font

# Nerd Fonts - Font awesome extension
symbol_map U+e200-U+e2a9 Symbols Nerd Font

# Nerd Fonts - Octicons
symbol_map U+f400-U+f4a8,U+2665-U+2665,U+26A1-U+26A1,U+f27c-U+f27c Symbols Nerd Font

# Nerd Fonts - Font Logos
symbol_map U+f300-U+f313 Symbols Nerd Font

# Nerd Fonts - Font Power Symbols
symbol_map U+23fb-U+23fe,U+2b58-U+2b58 Symbols Nerd Font

# Nerd Fonts - Material Design Icons
symbol_map U+f500-U+fd46 Symbols Nerd Font

# Nerd Fonts - Weather Icons
symbol_map U+e300-U+e3eb Symbols Nerd Font

# Nerd Fonts - All
symbol_map U+e000-U+e00d,U+e0a0-U+e0a2,U+e0b0-U+e0b3,U+e0a3-U+e0a3,U+e0b4-U+e0c8,U+e0cc-U+e0d2,U+e0d4-U+e0d4,U+e5fa-U+e62b,U+e700-U+e7c5,U+f000-U+f2e0,U+e200-U+e2a9,U+f400-U+f4a8,U+2665-U+2665,U+26A1-U+26A1,U+f27c-U+f27c,U+f300-U+f313,U+23fb-U+23fe,U+2b58-U+2b58,U+f500-U+fd46,U+e300-U+e3eb Symbols Nerd Font

165 changes: 165 additions & 0 deletions home/dot_config/kitty/executable_test-fonts.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
#!/usr/bin/env bash
# Nerd Fonts Version: 2.3.3
# Script Version: 1.0.0

# Given an array of decimal numbers print all unicode codepoint.
function print-decimal-unicode-range() {
local originalSequence=("$@")
local counter=0
# Use alternating colors to see which symbols extend out of the bounding
# box.
local bgColorBorder='\033[48;5;8m'
local bgColorCode='\033[48;5;246m'
local alternateBgColorCode='\033[48;5;240m'
local bgColorChar='\033[48;5;66m'
local alternateBgColorChar='\033[48;5;60m'
local underline='\033[4m'
local currentColorCode="${bgColorCode}"
local currentColorChar="${bgColorChar}"
local reset_color='\033[0m'
local allChars=""
local allCodes=""
local wrapAt=5
local topLine="${bgColorBorder}╔══════╦══════╦══════╦══════╦══════╗${reset_color}"
local bottomLine="${bgColorBorder}╚══════╩══════╩══════╩══════╩══════╝${reset_color}"
local line="${bgColorBorder}╠══════╬══════╬══════╬══════╬══════╣${reset_color}"
local bar="${bgColorBorder}${reset_color}"
local originalSequenceLength=${#originalSequence[@]}
local leftoverSpaces=$((wrapAt - (originalSequenceLength % wrapAt)))

# add fillers to array to maintain table:
if [[ "$leftoverSpaces" < "$wrapAt" ]]; then
# shellcheck disable=SC2034
# needs rework without 'i' var?
for i in $(seq 1 $leftoverSpaces); do
originalSequence+=(0)
done
fi

local sequenceLength=${#originalSequence[@]}

printf "%b\\n" "$topLine"

for decimalCode in "${originalSequence[@]}"; do
local hexCode
hexCode=$(printf '%x' "${decimalCode}")
local code="${hexCode}"
local char="\\u${hexCode}"

# fill in placeholder cells properly formatted:
if [ "${char}" = "\\u0" ]; then
char=" "
code=" "
fi

allCodes+="${currentColorCode} ${underline}${code}${reset_color}${currentColorCode} ${reset_color}$bar"
allChars+="${currentColorChar} ${char} ${reset_color}$bar"
counter=$((counter + 1))
count=$(( (count + 1) % wrapAt))

if [[ $count -eq 0 ]]; then

if [[ "${currentColorCode}" = "${alternateBgColorCode}" ]]; then
currentColorCode="${bgColorCode}"
currentColorChar="${bgColorChar}"
else
currentColorCode="${alternateBgColorCode}"
currentColorChar="${alternateBgColorChar}"
fi

printf "%b%b%b" "$bar" "$allCodes" "$reset_color"
printf "\\n"
printf "%b%b%b" "$bar" "$allChars" "$reset_color"
printf "\\n"

if [ "$counter" != "$sequenceLength" ]; then
printf "%b\\n" "$line"
fi

allCodes=""
allChars=""
fi

done

printf "%b\\n" "$bottomLine"

}

function print-unicode-ranges() {
echo ''

local arr=("$@")
local len=$#
local combinedRanges=()

for ((j=0; j<len; j+=2)); do
local start="${arr[$j]}"
local end="${arr[(($j+1))]}"
local startDecimal=$((16#$start))
local endDecimal=$((16#$end))

mapfile -t combinedRanges < <(seq "$startDecimal" "$endDecimal")

done

print-decimal-unicode-range "${combinedRanges[@]}"

}

function test-fonts() {
echo "Nerd Fonts - Pomicons"
print-unicode-ranges e000 e00d
echo; echo

echo "Nerd Fonts - Powerline"
print-unicode-ranges e0a0 e0a2 e0b0 e0b3
echo; echo

echo "Nerd Fonts - Powerline Extra"
print-unicode-ranges e0a3 e0a3 e0b4 e0c8 e0cc e0d2 e0d4 e0d4
echo; echo

echo "Nerd Fonts - Symbols original"
print-unicode-ranges e5fa e62b
echo; echo

echo "Nerd Fonts - Devicons"
print-unicode-ranges e700 e7c5
echo; echo

echo "Nerd Fonts - Font awesome"
print-unicode-ranges f000 f2e0
echo; echo

echo "Nerd Fonts - Font awesome extension"
print-unicode-ranges e200 e2a9
echo; echo

echo "Nerd Fonts - Octicons"
print-unicode-ranges f400 f4a8 2665 2665 26A1 26A1 f27c f27c
echo; echo

echo "Nerd Fonts - Font Logos"
print-unicode-ranges f300 f313
echo; echo

echo "Nerd Fonts - Font Power Symbols"
print-unicode-ranges 23fb 23fe 2b58 2b58
echo; echo

echo "Nerd Fonts - Material Design Icons"
print-unicode-ranges f500 fd46
echo; echo

echo "Nerd Fonts - Weather Icons"
print-unicode-ranges e300 e3eb
echo; echo

echo "Nerd Fonts - All"
print-unicode-ranges e000 e00d e0a0 e0a2 e0b0 e0b3 e0a3 e0a3 e0b4 e0c8 e0cc e0d2 e0d4 e0d4 e5fa e62b e700 e7c5 f000 f2e0 e200 e2a9 f400 f4a8 2665 2665 26A1 26A1 f27c f27c f300 f313 23fb 23fe 2b58 2b58 f500 fd46 e300 e3eb

echo; echo
}

test-fonts
35 changes: 35 additions & 0 deletions home/dot_config/kitty/generate-symbol-map.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
const fs = require("fs");

const rows = fs.readFileSync("./test-fonts.sh", "utf8").split("\n");

let symbolMap = "";
let isCapturing = false;
for (let i = 0; i < rows.length; i++) {
const row = rows[i];
if (row.includes("function test-fonts() {")) {
isCapturing = true;
continue;
} else if (isCapturing) {
if (row.includes(`echo "`)) {
const [, title] = row.match(/"(.*)"/);
symbolMap += `# ${title}\n`;
} else if (row.includes(`print-unicode-ranges`)) {
let [, codes] = row.match(/print-unicode-ranges (.*)/) || [];
codes = codes.split(" ");
let ranges = [];
for (let j = 0; j < codes.length; j+=2) {
ranges.push([codes[j], codes[j+1]]);
}
ranges = ranges.map(([first, last]) => {
return `U+${first}-U+${last}`;
});
symbolMap += `symbol_map ${ranges.join(",")} Symbols Nerd Font\n\n`;
} else if (row.includes("}")) {
break;
}
}
}

fs.writeFileSync('./symbol-map.conf', symbolMap);

console.log("done");
Loading

0 comments on commit 7316fd4

Please sign in to comment.