% infocmp -1 st|grep -E '(colors|setaf)' colors#8, setaf=\E[3%p1%dm, %
A entrada do banco de dados terminfo para Simple Terminal diz ao mundo que ele suporta 8 cores e não fornece nenhum mecanismo para especificar mais de 8 cores. Esse mundo inclui o VIM e todos os outros programas que usam o terminfo.
% infocmp -1 st-256color|grep -E '(colors|setaf)' st-256color|stterm-256color|simpleterm with 256 colors, colors#256, setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m, %
Se você quiser convencer o mundo (que usa o terminfo do mundo) que o Simple Terminal suporta 256 cores, e dizer como usar essas 256 cores, você precisa especificar um tipo de terminal diferente.