about summary refs log tree commit diff stats
path: root/tools/expand_string
blob: a5a9ad3066813d57ee714da2c0ed41e289168bab (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/sh
# Expand syntax sugar for SubX string literals.
# Helpful for converting them into handles to strings.

INPUT=$(cat)
echo "    # \"$INPUT\""

# print length in bytes
printf "    0x%x/imm32/size\n" $(echo -n $INPUT |wc -c)

# print ascii codes for each character in hex
echo -n "   "
for c in $(echo "$INPUT" | sed -e 's/./& /g')
do
  echo -n " 0x$(printf '%x' "'$c")/$c"
done
echo