Smartypants non brakable space french guillemets

Hi,
I’m trying to configure smartypants for french typosettings. I cannot manage to add non-breakable space to guillemets. I tried to replace them by simple quote to see if smartypants worked and it did, but when I try to add   or   to my script isn’t replace the space by the non breakable ones.

herre my code :

smartypants'=>[ 
    	'attr'  => 1,
    	'doublequote.open'  => '« ',
    	'doublequote.close'  => ' »',
        'space.doublequote' => ' ',
    	'space.emdash'  => ' ',
    	'space.endash'  => ' ',
    	'space.colon'  => ' ',
    	'space.semicolon'  => ' ',
    	'space.marks' => ' ',
    	'space.frenchquote' => ' ',
    	'space.thousand' => '',
    	'space.unit'=> ' ',
        'guillemet.leftpointing'     => '« ',
        'guillemet.rightpointing'    => ' »',
        'geresh'=> '׳',
        'geresh' => '׳',
        'gershayim'=> '״',
        'skip'=> 'pre|code|kbd|script|style|math',
  ]

What’s the leading semicolon doing there in both instances?

Oups an error in copy paste code

don’t know if it’s the right way to add nbsp to guillemets