我创建了一个打印出一系列Unicode字符的脚本。一些更奇特的角色不起作用。特别是尝试使Latin Extended-D个字符有效。我尝试过使用Cardo字体,但这没有用。我想我一次只能发布2个链接,所以无法提供该链接。任何帮助赞赏。这是脚本:
#!/usr/local/bin/bash
COUNT=0
for i in $( seq $1 $2);
do
x=$( printf "%X" "$i" );
printf "\U$x";
COUNT=$((COUNT+1));
if [ $COUNT -gt $3 ]
then
COUNT=0;
printf "\n";
fi
done
printf "\n"
这是终端的样子image
答案 0 :(得分:1)
正如评论中所提到的,这些字符是"不工作"在终端因为它们不存在! Unicode联合会尚未定义Unicode字符U + A7AE,U + A7AF和U + A7B8-A7F6(十进制:42926,42927和42936-42998),因此它们没有可打印的形式。 (它们对应于您链接的PDF第二页上的交叉阴影框。)
答案 1 :(得分:0)
此代码打印一个类似于UNICODE联盟的表格:
#!/usr/local/bin/bash
set -- 42784 43007
for j in {0..15};
do
for (( i=$1; i<=$2; i+=16 ));
do
k="$((i+j))"
#printf '%4x ' "$k"
printf "%b" $( printf '\\U0%x' "$k" );
done
printf "\n"
done
但是没有办法&#34;看&#34;所有代码点,因为许多代码点还没有字形(A788-A7F6)。 换句话说:代码点(数字)仍然没有分配字符。 您选择哪种字体无关紧要,这些代码点中的字体不应包含任何字符(A788-A7F6)。