If that silence is absolute silence I can’t think of any automatic way to do what you want. The gaps are functionally equivalent to silence.
If the silence is low level audio, then try setting the “Detect Silence” level in Truncate Silence to -80 dB. If that has no effect, select over the low level audio and Normalize it to -79 dB then repeat Truncate Silence at -80 dB.
That will work in most cases where the “silence” is not “absolutely” silent.
It’s quite likely that won’t work correctly.
Normalizing sets the “peak level” (the level of the highest or lowest peak) to the target level.
If the track is absolutely silent, Normalizing will have no effect.
If the track is “extremely low level” (but not “absolute” silence), then it will be amplified so that the largest peak in the selection becomes -79 dB, but the rest of the selection will be below -79 dB, so quite likely to be below -80 dB.
IF the noise level is sufficiently uniform, then there will be enough peaks between -79 dB and -80 dB for Truncate Silence to work as expected, but it is more likely that too much audio will be below -80 dB, so too much will be removed by Truncate Silence.
What is the job? Why do you have a load of silent audio clips and why do you need to remove the gaps between? That does not look like a normal audio editing job, so what are you doing? We may be able to think of a suitable workaround if we understand what the job is.