Adjusting kerning for different preceding characters

I’d like to get this kerning, without having to notate which version, V, or nospV, that I want for the spacing.
image

#let V = $bold("Void")$
#let nospV = $#h(0em) #V$
$
  Delta . nospV tack gamma . nospV : Gamma . nospV \
  Gamma tack b : #V
$

Is there a way to adjust the kerning of #V such that #h(0em) is only applied when it is preceded by a .?

I’m solved this by formatting the dot instead.

#show math.equation: it => {
  // formatting dot notation for extension
  show ".": [#h(0em) . #h(0em)]
  it
}

#let V = $bold("Void")$
$
  Delta . #V tack gamma . #V : Gamma . #V \
  Gamma tack b : #V
$

image

In case you expect other .s to appear in your formulas, a function might be a good idea here:

#let pt(a, b) = $#a #h(0em) . #h(0em) #b$
#let V = $bold("Void")$

$
  pt(Delta, #V) tack pt(gamma, #V) : pt(Gamma, #V) \
  Gamma tack b : #V
$

(rename pt to something that fits your domain, obviously)

I have looked if there is a math character class that gives the correct spacing without resorting to #h, but couldn’t find any…