mirror of
https://github.com/ryanoasis/nerd-fonts.git
synced 2025-01-25 03:32:02 +02:00
Merge pull request #1274 from ryanoasis/feature/CI-uses-ShellCheck
CI uses ShellCheck
This commit is contained in:
commit
33cc7cc7ca
2
.github/workflows/casks.yml
vendored
2
.github/workflows/casks.yml
vendored
@ -23,7 +23,7 @@ jobs:
|
||||
run: |
|
||||
cd bin/scripts
|
||||
chmod u+x *
|
||||
./fetch-archives.sh latest
|
||||
./fetch-archives.sh latest '*zip'
|
||||
- name: Determine release tag
|
||||
id: releasetag
|
||||
run: |
|
||||
|
38
.github/workflows/shellcheck.yml
vendored
Normal file
38
.github/workflows/shellcheck.yml
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
name: "Shellcheck"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
paths:
|
||||
- '**/*.sh'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
shellcheck:
|
||||
name: Shellcheck
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Check scripts (1/2)
|
||||
run: |
|
||||
shellcheck -V
|
||||
rm -f sc.log
|
||||
find . -path '*/bin/scripts/lib/*' -prune -o -name '*.sh' -print -exec bash -c 'shellcheck -f gcc -e SC2155 {} | tee -a sc.log' \;
|
||||
# SC2155: Declare and assign separately to avoid masking return values
|
||||
|
||||
- name: Check scripts (2/2)
|
||||
run: |
|
||||
find bin/scripts/lib -name '*.sh' -not -name 'i_m*' -print -exec bash -c 'shellcheck -f gcc -e SC2034 {} | tee -a sc.log' \;
|
||||
# SC2034: ... appears unused. Verify use (or export if used externally)
|
||||
|
||||
- name: Check for issues
|
||||
run: |
|
||||
num=$(wc -l < sc.log)
|
||||
if [ "$num" -gt 0 ]; then
|
||||
echo "Found $num messages from ShellCheck - please fix them"
|
||||
exit 1
|
||||
fi
|
||||
echo "Found $num messages from ShellCheck, all good!"
|
@ -39,7 +39,7 @@ mini_readme="$outputdir/readme.md"
|
||||
cat "$root_dir/src/archive-readme.md" >> "$mini_readme"
|
||||
|
||||
# clear out the directory
|
||||
find "${outputdir:?}" -maxdepth 1 \( -name "${search_pattern}.zip" -o -name "${search_pattern}.tar.xz" \) -type f -print -delete
|
||||
find "${outputdir:?}" -maxdepth 1 \( -name "${search_pattern}.zip" -o -name "${search_pattern}.tar.xz" \) -type f -delete
|
||||
|
||||
find . -maxdepth 1 -iregex "\./$pattern" -type d | sort |
|
||||
while read -r filename; do
|
||||
@ -52,14 +52,15 @@ while read -r filename; do
|
||||
expected=$(find "${searchdir}" -iname "*.[ot]tf" -exec echo "+" \; | wc -l)
|
||||
echo "${LINE_PREFIX} Packing ${basename}.tar.xz (${expected} fonts)"
|
||||
# This finds all files, uniq on the filename (ignoring path):
|
||||
# shellcheck disable=SC2156 # It's hard enough with injection
|
||||
while IFS= read -d $'\0' -r descriptor; do
|
||||
path=$(echo ${descriptor} | sed 's/|.*//')
|
||||
file=$(echo ${descriptor} | sed 's/.*|//')
|
||||
if $(echo ${file} | grep -qi '.[ot]tf'); then
|
||||
path=${descriptor//|*/}
|
||||
file=${descriptor//*|/}
|
||||
if grep -qi '.[ot]tf' <<< "${file}" ; then
|
||||
expected=$((expected - 1))
|
||||
fi
|
||||
# Need to cd to the file because we want to archive 'flat' (without subdirs):
|
||||
x=$(cd "$path" && tar rf "$outputdir/$basename.tar" --no-recursion "$file")
|
||||
(cd "$path" && tar rf "$outputdir/$basename.tar" --no-recursion "$file")
|
||||
done < <(find "${searchdir}" -type f -exec bash -c 'printf "%s\000" "{}" | sed "s!\(.*\)/!\1|!"' \; | sort -z -u '-t|' -k2,2 | sort -z)
|
||||
|
||||
if [ $expected -ne 0 ]; then
|
||||
@ -67,7 +68,7 @@ while read -r filename; do
|
||||
echo "${LINE_PREFIX} Did not pack expected number of font files! Likely same font names for different paths."
|
||||
exit 1
|
||||
fi
|
||||
x=$(cd "${outputdir}" && tar rf "${outputdir}/${basename}.tar" "readme.md")
|
||||
(cd "${outputdir}" && tar rf "${outputdir}/${basename}.tar" "readme.md")
|
||||
xz -f -9 -T0 "${outputdir}/${basename}.tar"
|
||||
|
||||
# ZIP stuff:
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 2.0.0
|
||||
# Script Version: 2.0.1
|
||||
#
|
||||
# Fetches the current release files.
|
||||
# It fetches the latest release, not release candidate.
|
||||
@ -15,6 +15,7 @@
|
||||
# fetch-archives v2.2.2
|
||||
# fetch-archives v2.2.2 Heavy
|
||||
# fetch-archives latest HeavyDat
|
||||
# fetch-archives v3.1.0 'Ara.*zip' (just fetch the zip archive)
|
||||
|
||||
set -e
|
||||
|
||||
@ -31,25 +32,31 @@ fi
|
||||
if [ "${versiontag}" != "latest" ]; then
|
||||
echo "${LINE_PREFIX} Fetching release archives with version tag '${versiontag}'"
|
||||
releasedata=$(curl -Lf "https://api.github.com/repos/ryanoasis/nerd-fonts/releases")
|
||||
num=$(jq ".[] | select(.tag_name == \"${versiontag}\") | .assets | length" <<< ${releasedata})
|
||||
num=$(jq ".[] | select(.tag_name == \"${versiontag}\") | .assets | length" <<< "${releasedata}")
|
||||
if [ -z "${num}" ]; then
|
||||
echo "${LINE_PREFIX} Release tag ${versiontag} unknown"
|
||||
exit 1
|
||||
fi
|
||||
files=($(jq -r ".[] | select(.tag_name == \"${versiontag}\") | .assets[].name | @sh" <<< ${releasedata}))
|
||||
files=()
|
||||
while IFS='' read -r file; do
|
||||
files+=("$file")
|
||||
done < <(jq -r ".[] | select(.tag_name == \"${versiontag}\") | .assets[].name | @sh" <<< "${releasedata}")
|
||||
else
|
||||
echo "${LINE_PREFIX} Fetching latest release archives"
|
||||
releasedata=$(curl -Lf "https://api.github.com/repos/ryanoasis/nerd-fonts/releases/latest")
|
||||
versiontag=$(jq -r ".tag_name" <<< ${releasedata})
|
||||
num=$(jq ".assets | length" <<< ${releasedata})
|
||||
files=($(jq -r ".assets[].name | @sh" <<< ${releasedata}))
|
||||
versiontag=$(jq -r ".tag_name" <<< "${releasedata}")
|
||||
num=$(jq ".assets | length" <<< "${releasedata}")
|
||||
files=()
|
||||
while IFS='' read -r file; do
|
||||
files+=("$file")
|
||||
done < <(jq -r ".assets[].name | @sh" <<< "${releasedata}")
|
||||
fi
|
||||
|
||||
echo "${LINE_PREFIX} Found ${num} artifacts"
|
||||
|
||||
if [ $# -ge 2 ]; then
|
||||
pattern=$2
|
||||
echo "${LINE_PREFIX} Limiting archive to pattern '${pattern}'"
|
||||
pattern=${2// /\\ }
|
||||
echo "${LINE_PREFIX} Limiting archive to regex '${pattern}'"
|
||||
else
|
||||
pattern=""
|
||||
echo "${LINE_PREFIX} No limiting pattern given"
|
||||
@ -59,9 +66,9 @@ if [ $# -gt 2 ]; then
|
||||
exit 2
|
||||
fi
|
||||
|
||||
for assetname in ${files[@]}; do
|
||||
for assetname in "${files[@]}"; do
|
||||
assetname=${assetname:1:-1}
|
||||
if [[ ! "${assetname}" =~ ^"${pattern}" ]]; then
|
||||
if [[ ! "${assetname}" =~ ${pattern} ]]; then
|
||||
continue
|
||||
fi
|
||||
echo >&2 "${LINE_PREFIX} Fetching ${versiontag}/${assetname}"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 2.2.0
|
||||
# Script Version: 2.2.1
|
||||
#
|
||||
# Iterates over all [*] archived fonts
|
||||
# to generate ruby cask files for homebrew-fonts (https://github.com/caskroom/homebrew-fonts)
|
||||
@ -45,7 +45,7 @@ if [ $# -ge 1 ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
cd ${archivedir} || {
|
||||
cd "${archivedir}" || {
|
||||
echo >&2 "$LINE_PREFIX Could not find archives directory"
|
||||
exit 1
|
||||
}
|
||||
@ -83,7 +83,7 @@ function find_nerdish_family {
|
||||
echo "${fn}"
|
||||
return
|
||||
fi
|
||||
idx=$((${idx} + 1))
|
||||
idx=$((idx + 1))
|
||||
done
|
||||
}
|
||||
|
||||
@ -123,7 +123,7 @@ function write_body {
|
||||
# Find longest filename for pretty printing
|
||||
for i in "${!fonts[@]}"; do
|
||||
local basename=$(basename "${fonts[$i]}")
|
||||
if [ ${#basename} -gt $longest ]; then
|
||||
if [ ${#basename} -gt "$longest" ]; then
|
||||
longest=${#basename}
|
||||
fi
|
||||
done
|
||||
@ -141,7 +141,7 @@ function write_body {
|
||||
if [[ "${familyname}" != *Nerd* ]]; then
|
||||
familyname="${familyname} Nerd Font families"
|
||||
fi
|
||||
familyname="$(tr [:lower:] [:upper:] <<< ${familyname:0:1})${familyname:1}"
|
||||
familyname="$(tr "[:lower:]" "[:upper:]" <<< "${familyname:0:1}")${familyname:1}"
|
||||
# Process font files
|
||||
local all_individual_fonts=( )
|
||||
local warned=0
|
||||
@ -149,7 +149,7 @@ function write_body {
|
||||
local individualfont=$(basename "${fonts[$i]}")
|
||||
local individualdir=$(dirname "${fonts[$i]}")
|
||||
|
||||
if [ $(dirname "${individualdir}") = "." ]; then
|
||||
if [ "$(dirname "${individualdir}")" = "." ]; then
|
||||
individualdir=""
|
||||
else
|
||||
if [ ${warned} -eq 0 ]; then
|
||||
@ -178,6 +178,7 @@ function write_body {
|
||||
# not make sense. Someone has to choose which alternative is wanted.
|
||||
# Here we just take the first one.
|
||||
# This is only occuring at the moment with GohuFont.
|
||||
# shellcheck disable=SC2091 # Evaluate on array
|
||||
$(contains "$individualfont" "${all_individual_fonts[@]}") && {
|
||||
printf " SKIPPING: %-${longest}s %s\\n" "${individualfont}" "${individualdir}/"
|
||||
continue
|
||||
@ -210,7 +211,6 @@ fi
|
||||
find . -maxdepth 1 -mindepth 1 -type f -iregex "\./$pattern" -regex ".*\.zip" | LC_ALL=C sort |
|
||||
while read -r filename; do
|
||||
|
||||
dirname=$(dirname "$filename")
|
||||
basename=$(basename "$filename" .zip)
|
||||
if [ ! -f "../archives/${basename}.zip" ]; then
|
||||
echo "${LINE_PREFIX} No archive for: ${basename}, skipping..."
|
||||
@ -219,8 +219,8 @@ while read -r filename; do
|
||||
sha256sum=$(sha256sum "../archives/${basename}.zip" | head -c 64)
|
||||
searchdir=$filename
|
||||
|
||||
originalname=$(jq -r ".fonts[] | select(.folderName == "\"${basename}\"") | .unpatchedName" "${scripts_root_dir}/lib/fonts.json" | head -n 1)
|
||||
caskbasename=$(jq -r ".fonts[] | select(.folderName == "\"${basename}\"") | .caskName" "${scripts_root_dir}/lib/fonts.json" | head -n 1)
|
||||
originalname=$(jq -r ".fonts[] | select(.folderName == \"${basename}\") | .unpatchedName" "${scripts_root_dir}/lib/fonts.json" | head -n 1)
|
||||
caskbasename=$(jq -r ".fonts[] | select(.folderName == \"${basename}\") | .caskName" "${scripts_root_dir}/lib/fonts.json" | head -n 1)
|
||||
if [ -z "$originalname" ]; then
|
||||
echo "${LINE_PREFIX} Can not find ${basename} in fonts.json, skipping..."
|
||||
continue
|
||||
@ -252,5 +252,5 @@ while read -r filename; do
|
||||
|
||||
rm -Rf "${basename}"
|
||||
|
||||
echo "## Created casks: $(realpath ${to})"
|
||||
echo "## Created casks: $(realpath "${to}")"
|
||||
done
|
||||
|
@ -1,9 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.2.0
|
||||
# Script Version: 1.2.1
|
||||
# Generates CSS file for the font and cheat sheet code
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
# shellcheck disable=SC1091 # Do not pull in the sourced file
|
||||
source ./lib/i_all.sh include-old-material
|
||||
|
||||
output_css_file="../../css/nerd-fonts-generated.css"
|
||||
@ -46,8 +46,8 @@ true > "$output_json_file" 2> /dev/null
|
||||
printf "\\n"
|
||||
cat "$header_css_file"
|
||||
} >> "$output_css_file"
|
||||
cat "$header_css_min_file" | tr -d '\n' >> "$output_css_min_file"
|
||||
cat "$header_css_min_rem_file" | tr -d '\n' >> "$output_css_min_rem_file"
|
||||
tr -d '\n' < "$header_css_min_file" >> "$output_css_min_file"
|
||||
tr -d '\n' < "$header_css_min_rem_file" >> "$output_css_min_rem_file"
|
||||
|
||||
cat "$cheat_sheet_head_file" > "$output_cheat_sheet_file"
|
||||
|
||||
@ -56,15 +56,14 @@ cat "$cheat_sheet_head_file" > "$output_cheat_sheet_file"
|
||||
printf "{\"METADATA\":{"
|
||||
printf "\"website\":\"https://www.nerdfonts.com\","
|
||||
printf "\"development-website\":\"https://github.com/ryanoasis/nerd-fonts\","
|
||||
printf "\"version\":\"$version\","
|
||||
printf "\"date\":\"$(date -u --rfc-3339=seconds)\""
|
||||
printf "\"version\":\"%s\"," "$version"
|
||||
printf "\"date\":\"%s\"" "$(date -u --rfc-3339=seconds)"
|
||||
printf "}"
|
||||
} >> "$output_json_file"
|
||||
|
||||
echo;
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
# we know the '$i' is from the sourced file
|
||||
# shellcheck disable=SC2154 # we know the '$i' is from the sourced file
|
||||
for var in "${!i@}"; do
|
||||
# trim 'i_' prefix
|
||||
glyph_name=${var#*_}
|
||||
@ -123,9 +122,9 @@ done
|
||||
cat "$cheat_sheet_foot_file" >> "$output_cheat_sheet_file"
|
||||
printf "}\n" >> "$output_json_file"
|
||||
|
||||
printf "Generated CSS, json, and Cheat Sheet HTML\\n"
|
||||
printf "$output_css_file\n"
|
||||
printf "$output_css_min_file [needs to also go into gh-pages:_includes/css/]\n"
|
||||
printf "$output_css_min_rem_file [needs to only go into gh-pages:_includes/css/]\n"
|
||||
printf "$output_cheat_sheet_file [needs to only go into gh-pages:_posts/]\n"
|
||||
printf "$output_json_file\n"
|
||||
printf "%s\n" "Generated CSS, json, and Cheat Sheet HTML"
|
||||
printf "%s\n" "$output_css_file"
|
||||
printf "%s\n" "$output_css_min_file [needs to also go into gh-pages:_includes/css/]"
|
||||
printf "%s\n" "$output_css_min_rem_file [needs to only go into gh-pages:_includes/css/]"
|
||||
printf "%s\n" "$output_cheat_sheet_file [needs to only go into gh-pages:_posts/]"
|
||||
printf "%s\n" "$output_json_file"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.2.1
|
||||
# Script Version: 1.2.2
|
||||
# Create font previews.
|
||||
# All fonts need to be installed (or no preview is generated)
|
||||
# Files should end up in the gh-pages branch
|
||||
@ -27,9 +27,9 @@ main() {
|
||||
continue
|
||||
fi
|
||||
|
||||
if $( fc-list -q "${imagePreviewFont}:charset=41" ); then
|
||||
if fc-list -q "${imagePreviewFont}:charset=41" ; then
|
||||
generate_preview "$imagePreviewFont" "$patchedName Nerd Font"
|
||||
elif $( fc-list -q "${imagePreviewFont}" ); then
|
||||
elif fc-list -q "${imagePreviewFont}" ; then
|
||||
generate_preview_symbols "$imagePreviewFont" "$patchedName Nerd Font"
|
||||
else
|
||||
echo "[Missing] $imagePreviewFont"
|
||||
@ -56,6 +56,7 @@ generate_preview_symbols() {
|
||||
# svgo "${output_dir}${font}.svg"
|
||||
}
|
||||
|
||||
# shellcheck disable=SC2034 # used by commented out code (on demand)
|
||||
image_font_files=( \
|
||||
'3270/Regular/3270NerdFont-Regular.ttf' \
|
||||
'Agave/AgaveNerdFont-Regular.ttf' \
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.0.0
|
||||
# Script Version: 1.0.1
|
||||
# Create one sample of each font
|
||||
|
||||
set -e
|
||||
@ -15,16 +15,19 @@ function get_config_patch_flags {
|
||||
local dir=$1
|
||||
unset config_patch_flags
|
||||
if [ -f "${unpatched}/${dir}/config.cfg" ]; then
|
||||
# shellcheck disable=SC1090 # Do not pull in the sourced file
|
||||
source "${unpatched}/${dir}/config.cfg"
|
||||
return
|
||||
fi
|
||||
dir=$(dirname "$dir")
|
||||
if [ -f "${unpatched}/${dir}/config.cfg" ]; then
|
||||
# shellcheck disable=SC1090 # Do not pull in the sourced file
|
||||
source "${unpatched}/${dir}/config.cfg"
|
||||
return
|
||||
fi
|
||||
dir=$(dirname "$dir")
|
||||
if [ -f "${unpatched}/${dir}/config.cfg" ]; then
|
||||
# shellcheck disable=SC1090 # Do not pull in the sourced file
|
||||
source "${unpatched}/${dir}/config.cfg"
|
||||
return
|
||||
fi
|
||||
@ -96,6 +99,8 @@ for f in "${font_files[@]}"; do
|
||||
echo ">>------------------------[ $f ]------------------------>>"
|
||||
dir=$(dirname "${f}")
|
||||
get_config_patch_flags "${dir}"
|
||||
# shellcheck disable=SC2154 # We get the flags from the sourced file
|
||||
echo ">> config.cfg: ${config_patch_flags}"
|
||||
# shellcheck disable=SC2086 # Not double quote some variables to get multiple parameters out of them
|
||||
fontforge ../../font-patcher --powerline --debug 2 -out "${outputdir}" $config_patch_flags ${NERDFONTS} "${unpatched}/${f}" 2>/dev/null || true
|
||||
done
|
||||
|
@ -19,14 +19,12 @@ type fontforge >/dev/null 2>&1 || {
|
||||
}
|
||||
|
||||
# Get script directory to set source and target dirs relative to it
|
||||
sd="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
|
||||
sd="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 || exit ; pwd -P )"
|
||||
|
||||
res1=$(date +%s)
|
||||
repo_root_dir=$(dirname $(dirname ${sd})) # two levels up (i.e. ../../)
|
||||
repo_root_dir=$(dirname "$(dirname "${sd}")") # two levels up (i.e. ../../)
|
||||
# Set source and target directories
|
||||
like_pattern='.*\.\(otf\|ttf\|sfd\)'
|
||||
last_font_root=""
|
||||
last_current_dir=""
|
||||
unpatched_parent_dir="src/unpatched-fonts"
|
||||
patched_parent_dir="patched-fonts"
|
||||
timestamp_parent_dir=${patched_parent_dir}
|
||||
@ -129,7 +127,7 @@ while getopts ":chijtv-:" option; do
|
||||
exit 1;;
|
||||
esac
|
||||
done
|
||||
shift $((${OPTIND}-1))
|
||||
shift $((OPTIND-1))
|
||||
|
||||
if [ $# -gt 1 ]
|
||||
then
|
||||
@ -154,7 +152,7 @@ fi
|
||||
source_fonts=()
|
||||
while IFS= read -d $'\0' -r file ; do
|
||||
source_fonts=("${source_fonts[@]}" "$file")
|
||||
done < <(find "$source_fonts_dir" -iregex ${like_pattern} -type f -print0)
|
||||
done < <(find "$source_fonts_dir" -iregex "${like_pattern}" -type f -print0)
|
||||
|
||||
# print total number of source fonts found
|
||||
echo "$LINE_PREFIX Total source fonts found: ${#source_fonts[*]}"
|
||||
@ -164,7 +162,7 @@ if [ -z "${SOURCE_DATE_EPOCH}" ]
|
||||
then
|
||||
export SOURCE_DATE_EPOCH=$(date +%s)
|
||||
fi
|
||||
release_timestamp=$(date -R --date=@${SOURCE_DATE_EPOCH} 2>/dev/null) || {
|
||||
release_timestamp=$(date -R "--date=@${SOURCE_DATE_EPOCH}" 2>/dev/null) || {
|
||||
echo >&2 "$LINE_PREFIX Invalid release timestamp SOURCE_DATE_EPOCH: ${SOURCE_DATE_EPOCH}"
|
||||
exit 2
|
||||
}
|
||||
@ -181,13 +179,13 @@ function patch_font {
|
||||
# take everything before the last slash (/) to start building the full path
|
||||
local ts_font_dir="${f%/*}/"
|
||||
local ts_font_dir="${ts_font_dir/$unpatched_parent_dir/$timestamp_parent_dir}"
|
||||
local one_font=$(find ${ts_font_dir} -name '*.[ot]tf' | head -n 1)
|
||||
local one_font=$(find "${ts_font_dir}" -name '*.[ot]tf' | head -n 1)
|
||||
if [ -n "${one_font}" ]
|
||||
then
|
||||
orig_font_date=$(ttfdump -t head "${one_font}" | \
|
||||
grep -E '[^a-z]modified:.*0x' | sed 's/.*x//' | tr 'a-f' 'A-F')
|
||||
SOURCE_DATE_EPOCH=$(dc -e "16i ${orig_font_date} Ai 86400 24107 * - p")
|
||||
echo "$LINE_PREFIX Release timestamp adjusted to $(date -R --date=@${SOURCE_DATE_EPOCH})"
|
||||
echo "$LINE_PREFIX Release timestamp adjusted to $(date -R "--date=@${SOURCE_DATE_EPOCH}")"
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -203,7 +201,7 @@ function patch_font {
|
||||
then
|
||||
echo "Purging patched font dir ${patched_font_dir}"
|
||||
fi
|
||||
rm ${patched_font_dir}/*
|
||||
rm -- "${patched_font_dir}"/*
|
||||
fi
|
||||
|
||||
config_parent_dir=$( cd "$( dirname "$f" )" && cd ".." && pwd)
|
||||
@ -220,10 +218,10 @@ function patch_font {
|
||||
then
|
||||
# shellcheck source=/dev/null
|
||||
source "$config_parent_dir/config.cfg"
|
||||
elif [ -f "$(find_font_root $config_parent_dir)/config.cfg" ]
|
||||
elif [ -f "$(find_font_root "$config_parent_dir")/config.cfg" ]
|
||||
then
|
||||
# shellcheck source=/dev/null
|
||||
source "$(find_font_root $config_parent_dir)/config.cfg"
|
||||
source "$(find_font_root "$config_parent_dir")/config.cfg"
|
||||
fi
|
||||
|
||||
if [ -f "$config_parent_dir/config.json" ]
|
||||
@ -250,31 +248,37 @@ function patch_font {
|
||||
# Add logfile always (but can be overridden by config_patch_flags in config.cfg and env var NERDFONTS)
|
||||
config_patch_flags="--debug 1 ${config_patch_flags}"
|
||||
# Use absolute path to allow fontforge being an AppImage (used in CI)
|
||||
PWD=`pwd`
|
||||
PWD=$(pwd)
|
||||
# Create "Nerd Font"
|
||||
if [ -n "${verbose}" ]
|
||||
then
|
||||
echo "fontforge -quiet -script ${PWD}/font-patcher "$f" -q ${font_config} $powerline $post_process -c --no-progressbars --outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS}"
|
||||
echo "fontforge -quiet -script \"${PWD}/font-patcher\" \"$f\" -q ${font_config} $post_process -c --no-progressbars --outputdir \"${patched_font_dir}\" $config_patch_flags ${NERDFONTS}"
|
||||
fi
|
||||
{ OUT=$(fontforge -quiet -script ${PWD}/font-patcher "$f" -q ${font_config} $powerline $post_process -c --no-progressbars \
|
||||
# shellcheck disable=SC2086 # We want splitting for the unquoted variables to get multiple options out of them
|
||||
{ OUT=$(fontforge -quiet -script "${PWD}/font-patcher" "$f" -q ${font_config} $post_process -c --no-progressbars \
|
||||
--outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS} 2>&1 1>&3 3>&- ); } 3>&1
|
||||
if [ $? -ne 0 ]; then printf "$OUT\nPatcher run aborted!\n\n"; fi
|
||||
# shellcheck disable=SC2181 # Checking the code directly is very unreadable here, as we execute a whole block
|
||||
if [ $? -ne 0 ]; then printf "%s\nPatcher run aborted!\n\n" "$OUT"; fi
|
||||
# Create "Nerd Font Mono"
|
||||
if [ -n "${verbose}" ]
|
||||
then
|
||||
echo "fontforge -quiet -script ${PWD}/font-patcher "$f" -q -s ${font_config} $powerline $post_process -c --no-progressbars --outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS}"
|
||||
echo "fontforge -quiet -script \"${PWD}/font-patcher\" \"$f\" -q -s ${font_config} $post_process -c --no-progressbars --outputdir \"${patched_font_dir}\" $config_patch_flags ${NERDFONTS}"
|
||||
fi
|
||||
{ OUT=$(fontforge -quiet -script ${PWD}/font-patcher "$f" -q -s ${font_config} $powerline $post_process -c --no-progressbars \
|
||||
# shellcheck disable=SC2086 # We want splitting for the unquoted variables to get multiple options out of them
|
||||
{ OUT=$(fontforge -quiet -script "${PWD}/font-patcher" "$f" -q -s ${font_config} $post_process -c --no-progressbars \
|
||||
--outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS} 2>&1 1>&3 3>&- ); } 3>&1
|
||||
if [ $? -ne 0 ]; then printf "$OUT\nPatcher run aborted!\n\n"; fi
|
||||
# shellcheck disable=SC2181 # Checking the code directly is very unreadable here, as we execute a whole block
|
||||
if [ $? -ne 0 ]; then printf "%s\nPatcher run aborted!\n\n" "$OUT"; fi
|
||||
# Create "Nerd Font Propo"
|
||||
if [ -n "${verbose}" ]
|
||||
then
|
||||
echo "fontforge -quiet -script ${PWD}/font-patcher "$f" -q --variable ${font_config} $powerline $post_process -c --no-progressbars --outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS}"
|
||||
echo "fontforge -quiet -script \"${PWD}/font-patcher\" \"$f\" -q --variable ${font_config} $post_process -c --no-progressbars --outputdir \"${patched_font_dir}\" $config_patch_flags ${NERDFONTS}"
|
||||
fi
|
||||
{ OUT=$(fontforge -quiet -script ${PWD}/font-patcher "$f" -q --variable ${font_config} $powerline $post_process -c --no-progressbars \
|
||||
# shellcheck disable=SC2086 # We want splitting for the unquoted variables to get multiple options out of them
|
||||
{ OUT=$(fontforge -quiet -script "${PWD}/font-patcher" "$f" -q --variable ${font_config} $post_process -c --no-progressbars \
|
||||
--outputdir "${patched_font_dir}" $config_patch_flags ${NERDFONTS} 2>&1 1>&3 3>&- ); } 3>&1
|
||||
if [ $? -ne 0 ]; then printf "$OUT\nPatcher run aborted!\n\n"; fi
|
||||
# shellcheck disable=SC2181 # Checking the code directly is very unreadable here, as we execute a whole block
|
||||
if [ $? -ne 0 ]; then printf "%s\nPatcher run aborted!\n\n" "$OUT"; fi
|
||||
|
||||
# wait for this group of background processes to finish to avoid forking too many processes
|
||||
# that can add up quickly with the number of combinations
|
||||
@ -289,12 +293,6 @@ function generate_info {
|
||||
local f=$1; shift
|
||||
local font_file=$1; shift
|
||||
|
||||
current_dir=$(dirname "$f")
|
||||
if [ "$current_dir" = "$last_current_dir" ]
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
# take everything before the last slash (/) to start building the full path
|
||||
local patched_font_dir="${f%/*}/"
|
||||
# find replace unpatched parent dir with patched parent dir:
|
||||
@ -309,7 +307,7 @@ function generate_info {
|
||||
if [ "$last_font_root" != "$font_root" ]
|
||||
then
|
||||
echo "$LINE_PREFIX --- Calling standardize-and-complete-readmes for $font_root"
|
||||
${sd}/standardize-and-complete-readmes.sh "$font_root" "$patched_parent_dir"
|
||||
"${sd}/standardize-and-complete-readmes.sh" "$font_root" "$patched_parent_dir"
|
||||
echo "$LINE_PREFIX ---"
|
||||
last_font_root=$font_root
|
||||
fi
|
||||
@ -318,7 +316,8 @@ function generate_info {
|
||||
# into the destination. This will overwrite all same-names files
|
||||
# so make sure all licenses of one fontface are identical
|
||||
echo "$LINE_PREFIX * Copying license files"
|
||||
copy_license "$(find_font_root $current_dir)" "$patched_font_dir"
|
||||
current_dir=$(dirname "$f")
|
||||
copy_license "$(find_font_root "$current_dir")" "$patched_font_dir"
|
||||
}
|
||||
|
||||
|
||||
@ -355,9 +354,9 @@ then
|
||||
# to follow font naming changed. We can not do this if we patch only
|
||||
# some of the source font files in that directory.
|
||||
last_source_dir=${current_source_dir}
|
||||
num_to_patch=$(find "${current_source_dir}" -iregex ${like_pattern} -type f | wc -l)
|
||||
num_to_patch=$(find "${current_source_dir}" -iregex "${like_pattern}" -type f | wc -l)
|
||||
num_existing=$(find "${current_source_dir}" -iname "*.[ot]tf" -o -iname "*.sfd" -type f | wc -l)
|
||||
if [ ${num_to_patch} -eq ${num_existing} ]
|
||||
if [ "${num_to_patch}" -eq "${num_existing}" ]
|
||||
then
|
||||
purge_destination="TRUE"
|
||||
fi
|
||||
|
@ -10,11 +10,12 @@ sets=('cod' 'dev' 'fae' 'fa' 'iec' 'logos' 'oct' 'ple' 'pom' 'seti' 'weather' 'm
|
||||
base=$(dirname "${BASH_SOURCE[0]:-$0}")
|
||||
|
||||
if [ "$1" = "include-old-material" ]; then
|
||||
sets=(${sets[@]} 'material')
|
||||
sets+=('material')
|
||||
fi
|
||||
|
||||
for set in ${sets[@]}; do
|
||||
for set in "${sets[@]}"; do
|
||||
i="${base}/i_${set}.sh"
|
||||
# shellcheck disable=SC1090 # We check the sources individually
|
||||
test -f "$i" -a -r "$i" && source "$i"
|
||||
done
|
||||
unset i
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.0.0
|
||||
# Script Version: 1.0.1
|
||||
|
||||
set -e
|
||||
|
||||
@ -17,7 +17,12 @@ function get_size {
|
||||
echo
|
||||
echo "Checking for SVG simplifications"
|
||||
|
||||
dry=`[ "$1" != "doit" ] && echo "dry" || true`
|
||||
if [ "$1" != "doit" ]; then
|
||||
dry="dry"
|
||||
else
|
||||
dry=""
|
||||
fi
|
||||
|
||||
if [ -n "${dry}" ]; then
|
||||
echo " This is a dry run: no actual modifications are performed"
|
||||
echo " Specify 'doit' as parameter to actually optimize the svgs"
|
||||
@ -41,10 +46,10 @@ for s in "${symbols[@]}"; do
|
||||
if [ "${old_size}" -lt "${size_limit}" ]; then
|
||||
continue
|
||||
fi
|
||||
ratio=`dc -e "${new_size} 100 * ${old_size} / p"`
|
||||
ratio=$(dc -e "${new_size} 100 * ${old_size} / p")
|
||||
if [ "${ratio}" -lt "${size_ratio_max}" ]; then
|
||||
echo "Simplification for `basename ${s}` (${old_size} -> ${new_size}) ${ratio}%"
|
||||
count=`dc -e "${count} 1 + p"`
|
||||
echo "Simplification for $(basename "${s}") (${old_size} -> ${new_size}) ${ratio}%"
|
||||
count=$(dc -e "${count} 1 + p")
|
||||
if [ -z "${dry}" ]; then
|
||||
mv temp.svg "${s}"
|
||||
fi
|
||||
|
@ -1,13 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.1.1
|
||||
# Script Version: 1.1.2
|
||||
# Iterates over all patched fonts directories
|
||||
# converts all non markdown readmes to markdown (e.g., txt, rst) using pandoc
|
||||
# adds information on additional-variations and complete font variations
|
||||
|
||||
infofilename="README.md"
|
||||
LINE_PREFIX="# [Nerd Fonts] "
|
||||
sd="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
|
||||
sd="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 || exit ; pwd -P )"
|
||||
fonts_info="${sd}/lib/fonts.json"
|
||||
unpatched_parent_dir="${sd}/../../src/unpatched-fonts"
|
||||
patched_parent_dir="${sd}/../../patched-fonts"
|
||||
@ -69,18 +69,18 @@ do
|
||||
searchdir=$base_directory
|
||||
|
||||
# limit looking for the readme files in the parent dir not the child dirs:
|
||||
if [ "$dirname" != "." -a -n "$dirname" ];
|
||||
if [ "$dirname" != "." ] && [ -n "$dirname" ];
|
||||
then
|
||||
searchdir=$dirname
|
||||
else
|
||||
# reset the variables
|
||||
unset config_rfn
|
||||
unset config_rfn_substitue
|
||||
fontdata=$(cat ${fonts_info} | jq ".fonts[] | select(.folderName == \"${base_directory}\")")
|
||||
if [ "$(echo $fontdata | jq .RFN)" = "true" ]
|
||||
fontdata=$(jq ".fonts[] | select(.folderName == \"${base_directory}\")" "${fonts_info}")
|
||||
if [ "$(echo "$fontdata" | jq .RFN)" = "true" ]
|
||||
then
|
||||
config_rfn=$(echo $fontdata | jq -r .unpatchedName)
|
||||
config_rfn_substitue=$(echo $fontdata | jq -r .patchedName)
|
||||
config_rfn=$(echo "$fontdata" | jq -r .unpatchedName)
|
||||
config_rfn_substitue=$(echo "$fontdata" | jq -r .patchedName)
|
||||
if [ "${config_rfn}" = "${config_rfn_substitue}" ]
|
||||
then
|
||||
# Only the case with Mononoki which is RFN but we do not rename (we got the permission to keep the name)
|
||||
@ -154,7 +154,7 @@ do
|
||||
else
|
||||
echo "$LINE_PREFIX Did not find any readme files (RST,TXT,MD) generating just title of Font"
|
||||
|
||||
to_dir="${$patched_parent_dir}/$filename"
|
||||
to_dir="${patched_parent_dir}/$filename"
|
||||
to="${to_dir}/$infofilename"
|
||||
|
||||
clearDestination "$to_dir" "$to"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.3.0
|
||||
# Script Version: 1.3.1
|
||||
|
||||
# Give any parameter to allow some glyphs to be 2 'cells' wide.
|
||||
# This might or might not be how they are currently handled while patching
|
||||
@ -15,17 +15,17 @@ rightSymbols=('' '' '' '' '' '' '' '' '' '' ''
|
||||
isWide=(0 0 0 0 1 1 1 1 1 1 1 1 1 1 0)
|
||||
|
||||
colorReset='\033[0m'
|
||||
colorBgWhite='\033[107m'
|
||||
colorBgLightBlue='\033[104m'
|
||||
#colorBgWhite='\033[107m'
|
||||
#colorBgLightBlue='\033[104m'
|
||||
colorBgYellow='\033[103m'
|
||||
colorBgBlack='\033[40m'
|
||||
colorBg1='\033[100m'
|
||||
colorBg2=$colorBgBlack
|
||||
colorBg3=$colorBgYellow
|
||||
|
||||
colorFgLightBlue='\033[94m'
|
||||
#colorFgLightBlue='\033[94m'
|
||||
colorFgLightGray='\033[90m'
|
||||
colorFgLightYellow='\033[93m'
|
||||
#colorFgLightYellow='\033[93m'
|
||||
colorFgBlack='\033[30m'
|
||||
colorFg1=$colorFgBlack
|
||||
colorFg2=$colorFgLightGray
|
||||
@ -41,7 +41,7 @@ for i in "${!leftSymbolsCodes[@]}"; do
|
||||
code="${leftSymbolsCodes[$i]}"
|
||||
code2="${rightSymbolsCodes[$i]}"
|
||||
|
||||
if [ ${isWide[$i]} -ge 1 -a $# -ge 1 ]; then
|
||||
if [ "${isWide[$i]}" -ge 1 ] && [ $# -ge 1 ]; then
|
||||
symbol="${symbol} "
|
||||
symbol2="${symbol2} "
|
||||
pad=
|
||||
@ -60,9 +60,11 @@ done
|
||||
viSymbolsCodes=('E0A0' 'E0A1' 'E0A2' 'E0A3')
|
||||
viSymbols=('' '' '' '')
|
||||
|
||||
line=
|
||||
for i in "${!viSymbolsCodes[@]}"; do
|
||||
symbol=${viSymbols[$i]}
|
||||
code="${viSymbolsCodes[$i]}"
|
||||
printf "$colorBg1$colorFg1$text1 $code $colorFg1$colorBgDefault$symbol"
|
||||
line="$line$colorBg1$colorFg1$text1 $code $colorFg1$colorBgDefault$symbol"
|
||||
done
|
||||
echo -e "$colorBg1$colorFg1$text2$colorReset$colorBg3\\n$colorReset"
|
||||
line="$line$colorBg1$colorFg1$text2$colorReset$colorBg3\\n$colorReset"
|
||||
echo -e "$line"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.0.0
|
||||
# Script Version: 1.0.1
|
||||
|
||||
clear
|
||||
echo "Click to start"
|
||||
@ -16,5 +16,5 @@ read -r H < <(awk -F: '/Height/{print $2}' <<< "$XWININFO")
|
||||
byzanz-record -c --exec=./test-fonts.sh --x="$X" --y="$Y" --width="$W" --height="$H" "rec3.gif"
|
||||
|
||||
convert -coalesce "rec3.gif" "results/nerd-fonts.png"
|
||||
convert -append $"(ls -v results/*.png)" ./test-combined.png
|
||||
convert -append "$(ls -v results/*.png)" ./test-combined.png
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Nerd Fonts Version: 3.0.1
|
||||
# Script Version: 1.0.2
|
||||
# Script Version: 1.0.3
|
||||
# bump version number for release in scripts (bash and python)
|
||||
# does not do semver format checking
|
||||
# this obviously is not perfect but works good enough for now (YAGNI)
|
||||
@ -19,7 +19,7 @@ release=$1
|
||||
echo "$LINE_PREFIX Bump version to $release"
|
||||
|
||||
function patch_file {
|
||||
echo patching $1
|
||||
echo "patching $1"
|
||||
sed -i -E "s/^(# Nerd Fonts Version: )[0-9]+\.[0-9]+\.[0-9]+.*/\1$release/" "$1"
|
||||
sed -i -E "s/^(version *= *\")[0-9]+\.[0-9]+\.[0-9]+.*(\") *$/\1$release\2/" "$1"
|
||||
}
|
||||
|
@ -177,7 +177,7 @@ done < <(eval "$find_command")
|
||||
# Get list of file names without extensions
|
||||
files_dedup=( "${files[@]}" )
|
||||
for i in "${!files_dedup[@]}"; do
|
||||
files_dedup[$i]="${files_dedup[$i]%.*}"
|
||||
files_dedup[i]="${files_dedup[$i]%.*}"
|
||||
done
|
||||
|
||||
# Remove duplicates
|
||||
@ -188,7 +188,7 @@ for i in "${!files_dedup[@]}"; do
|
||||
ext="${files[$i]##*.}"
|
||||
# Only remove if the extension is the one we don’t want
|
||||
if [ "$ext" != "$extension" ]; then
|
||||
unset files["$i"]
|
||||
unset "${files[$i]}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@ -226,7 +226,7 @@ case $mode in
|
||||
list)
|
||||
for file in "${files[@]}"; do
|
||||
file=$(basename "$file")
|
||||
echo "$font_dir/${file#$nerdfonts_root_dir/}"
|
||||
echo "$font_dir/${file#"$nerdfonts_root_dir"/}"
|
||||
done
|
||||
exit 0
|
||||
;;
|
||||
|
@ -1 +1,4 @@
|
||||
<svg width="43" height="43" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="m32.1 10a5.12 5.12 0 0 0-3.59 1.39 0.49 0.49 0 0 0-0.0117 0.705l0.646 0.646a0.488 0.488 0 0 0 0.641 0.0469 2.92 2.92 0 0 1 1.76-0.588 2.95 2.95 0 0 1 2.94 2.95c0 0.815-0.331 1.55-0.863 2.09-4.08 4.09-9.52-7.37-21.9-1.47a1.68 1.68 0 0 0-0.732 2.36l2.12 3.67a1.67 1.67 0 0 0 2.27 0.625l0.0527-0.0312-0.043 0.0312 0.939-0.527s1.61-0.981 2.96-2.21a0.517 0.517 0 0 1 0.674-0.0215l0.00391 0.00195 0.00195 0.00195a0.486 0.486 0 0 1 0.0234 0.738 22.1 22.1 0 0 1-3.14 2.35l-0.0293 0.0176-0.941 0.527a2.69 2.69 0 0 1-3.63-1l-2-3.47c-3.84 2.72-6.18 7.97-4.92 14.6a0.49 0.49 0 0 0 0.48 0.398h2.28a0.489 0.489 0 0 0 0.484-0.428 3.34 3.34 0 0 1 3.31-2.92c1.7 0 3.1 1.27 3.31 2.92a0.49 0.49 0 0 0 0.484 0.428h2.22a0.488 0.488 0 0 0 0.484-0.428 3.34 3.34 0 0 1 3.31-2.92c1.7 0 3.1 1.27 3.31 2.92a0.489 0.489 0 0 0 0.484 0.428h2.19a0.489 0.489 0 0 0 0.488-0.482c0.052-3.1 0.886-6.67 3.27-8.46 8.24-6.18 6.07-11.5 4.17-13.4a5.12 5.12 0 0 0-3.54-1.51zm-5.44 9.06a0.987 0.987 0 0 1 0.584 1.78l-1.57-0.791v-0.00391c0-0.546 0.441-0.988 0.986-0.988z" fill="#02303a" fill-rule="evenodd"/></svg>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="43" height="43" version="1.1" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m35.605 11.488c1.9 1.9 4.0701 7.2204-4.1699 13.4-2.384 1.79-3.2175 5.3609-3.2695 8.4609-0.0038 0.26694-0.22131 0.47995-0.48828 0.48047h-2.1895c-0.24603-5.94e-4 -0.45368-0.18362-0.48438-0.42773-0.21-1.65-1.6105-2.9199-3.3105-2.9199-1.6809 0.0018-3.0972 1.2524-3.3086 2.9199-0.03027 0.24433-0.23818 0.42758-0.48438 0.42773h-2.2207c-0.24586-1e-3 -0.45327-0.18384-0.48438-0.42773-0.21-1.65-1.6086-2.9199-3.3086-2.9199-1.6809 0.0018-3.0992 1.2524-3.3105 2.9199-0.03069 0.24411-0.23834 0.42714-0.48438 0.42773h-2.2793c-0.23466-6.16e-4 -0.43641-0.166-0.48047-0.39648-1.26-6.63 1.0799-11.882 4.92-14.601l2 3.4707c0.73616 1.2657 2.3504 1.7102 3.6309 1l0.93945-0.52734 0.0293-0.01758c1.1142-0.68873 2.1657-1.4748 3.1406-2.3496 0.22031-0.20106 0.20917-0.55158-0.02344-0.73828l-2e-3 -2e-3 -0.0039-2e-3c-0.19907-0.16051-0.4854-0.15138-0.67383 0.02148-1.35 1.229-2.9609 2.2109-2.9609 2.2109l-0.9375 0.52734 0.04297-0.03125-0.05274 0.03125c-0.79981 0.45122-1.8154 0.17202-2.2715-0.625l-2.1191-3.6699c-0.49255-0.84942-0.15436-1.9397 0.73242-2.3613 12.38-5.9 17.82 5.5607 21.9 1.4707 0.532-0.54 0.86133-1.2748 0.86133-2.0898 9e-6 -1.6253-1.3141-2.9457-2.9395-2.9512-0.63499-5.82e-4 -1.2526 0.20574-1.7598 0.58789-0.19525 0.14715-0.46887 0.12712-0.64062-0.04687l-0.64648-0.64453c-0.19636-0.19594-0.19104-0.51576 0.01172-0.70508 0.97028-0.9127 2.2579-1.4119 3.5898-1.3906l-0.0332-0.021484c1.3315 0.023814 2.6003 0.56522 3.5391 1.5098zm-8.9473 7.5684c-0.545 0-0.98438 0.44228-0.98438 0.98828v0.0039l1.5684 0.79102c0.76293-0.56534 0.36558-1.7758-0.58398-1.7793z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.6 KiB |
@ -3,32 +3,32 @@
|
||||
set -ex
|
||||
|
||||
cd ~/Downloads/iosevka
|
||||
rm *.ttf
|
||||
rm -- *.ttf
|
||||
unzip ttf-iosevka-22.1.0.zip
|
||||
mv *-heavyoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy-Oblique
|
||||
mv *-medium.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium
|
||||
mv *-italic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Italic
|
||||
mv *-extrabold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold
|
||||
mv *-thin.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin
|
||||
mv *-light.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light
|
||||
mv *-bold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold
|
||||
mv *-extralightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light-Italic
|
||||
mv *-lightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light-Italic
|
||||
mv *-boldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold-Oblique
|
||||
mv *-thinitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin-Italic
|
||||
mv *-extraboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold-Oblique
|
||||
mv *-lightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light-Oblique
|
||||
mv *-semibold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold
|
||||
mv *-oblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Oblique
|
||||
mv *-semiboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold-Oblique
|
||||
mv *-heavyitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy-Italic
|
||||
mv *-mediumoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium-Oblique
|
||||
mv *-heavy.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy
|
||||
mv *-regular.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Regular
|
||||
mv *-semibolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold-Italic
|
||||
mv *-extralightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light-Oblique
|
||||
mv *-thinoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin-Oblique
|
||||
mv *-extralight.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light
|
||||
mv *-bolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold-Italic
|
||||
mv *-extrabolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold-Italic
|
||||
mv *-mediumitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium-Italic
|
||||
mv -- *-heavyoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy-Oblique
|
||||
mv -- *-medium.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium
|
||||
mv -- *-italic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Italic
|
||||
mv -- *-extrabold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold
|
||||
mv -- *-thin.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin
|
||||
mv -- *-light.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light
|
||||
mv -- *-bold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold
|
||||
mv -- *-extralightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light-Italic
|
||||
mv -- *-lightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light-Italic
|
||||
mv -- *-boldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold-Oblique
|
||||
mv -- *-thinitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin-Italic
|
||||
mv -- *-extraboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold-Oblique
|
||||
mv -- *-lightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Light-Oblique
|
||||
mv -- *-semibold.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold
|
||||
mv -- *-oblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Oblique
|
||||
mv -- *-semiboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold-Oblique
|
||||
mv -- *-heavyitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy-Italic
|
||||
mv -- *-mediumoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium-Oblique
|
||||
mv -- *-heavy.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Heavy
|
||||
mv -- *-regular.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Regular
|
||||
mv -- *-semibolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Semi-Bold-Italic
|
||||
mv -- *-extralightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light-Oblique
|
||||
mv -- *-thinoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Thin-Oblique
|
||||
mv -- *-extralight.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Light
|
||||
mv -- *-bolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Bold-Italic
|
||||
mv -- *-extrabolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Extra-Bold-Italic
|
||||
mv -- *-mediumitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/Iosevka/Medium-Italic
|
||||
|
@ -3,32 +3,32 @@
|
||||
set -ex
|
||||
|
||||
cd ~/Downloads/iosevka
|
||||
rm *.ttf
|
||||
rm -- *.ttf
|
||||
unzip ttf-iosevka-term-22.1.0.zip
|
||||
mv *-heavyoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy-Oblique
|
||||
mv *-medium.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium
|
||||
mv *-italic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Italic
|
||||
mv *-extrabold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold
|
||||
mv *-thin.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin
|
||||
mv *-light.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light
|
||||
mv *-bold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold
|
||||
mv *-extralightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light-Italic
|
||||
mv *-lightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light-Italic
|
||||
mv *-boldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold-Oblique
|
||||
mv *-thinitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin-Italic
|
||||
mv *-extraboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold-Oblique
|
||||
mv *-lightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light-Oblique
|
||||
mv *-semibold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold
|
||||
mv *-oblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Oblique
|
||||
mv *-semiboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold-Oblique
|
||||
mv *-heavyitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy-Italic
|
||||
mv *-mediumoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium-Oblique
|
||||
mv *-heavy.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy
|
||||
mv *-regular.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Regular
|
||||
mv *-semibolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold-Italic
|
||||
mv *-extralightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light-Oblique
|
||||
mv *-thinoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin-Oblique
|
||||
mv *-extralight.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light
|
||||
mv *-bolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold-Italic
|
||||
mv *-extrabolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold-Italic
|
||||
mv *-mediumitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium-Italic
|
||||
mv -- *-heavyoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy-Oblique
|
||||
mv -- *-medium.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium
|
||||
mv -- *-italic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Italic
|
||||
mv -- *-extrabold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold
|
||||
mv -- *-thin.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin
|
||||
mv -- *-light.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light
|
||||
mv -- *-bold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold
|
||||
mv -- *-extralightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light-Italic
|
||||
mv -- *-lightitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light-Italic
|
||||
mv -- *-boldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold-Oblique
|
||||
mv -- *-thinitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin-Italic
|
||||
mv -- *-extraboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold-Oblique
|
||||
mv -- *-lightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Light-Oblique
|
||||
mv -- *-semibold.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold
|
||||
mv -- *-oblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Oblique
|
||||
mv -- *-semiboldoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold-Oblique
|
||||
mv -- *-heavyitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy-Italic
|
||||
mv -- *-mediumoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium-Oblique
|
||||
mv -- *-heavy.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Heavy
|
||||
mv -- *-regular.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Regular
|
||||
mv -- *-semibolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Semi-Bold-Italic
|
||||
mv -- *-extralightoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light-Oblique
|
||||
mv -- *-thinoblique.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Thin-Oblique
|
||||
mv -- *-extralight.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Light
|
||||
mv -- *-bolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Bold-Italic
|
||||
mv -- *-extrabolditalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Extra-Bold-Italic
|
||||
mv -- *-mediumitalic.ttf ~/git/nerd-fonts/src/unpatched-fonts/IosevkaTerm/Medium-Italic
|
||||
|
Loading…
x
Reference in New Issue
Block a user