I am trying to change or disable protrusion for specific characters. However, it doesn't seem to have any effect at all.
I use Charis SIL font and for now I am trying to disable endash and emdash protrusion. I am compiling with LuaLaTeX 1.0.4 (TeXLive 2017).
\documentclass[final,11pt]{book}
\usepackage{fontspec}
\usepackage{lipsum}
\setmainfont[Ligatures=TeX]{Charis SIL}
\usepackage[factor=1000]{microtype}
\SetProtrusion
{
encoding = {*}
family = {*}
% family = Charis SIL
}
{
\textemdash = {,0},
\textendash = {,0},
% \textemdash = {,2000}, % Setting protrusion to bigger value doesn't change anything either
% \textendash = {,2000}, %
}
\begin{document}
\lipsum[1]
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Uta purus quis.
Lorem ipsum dolor sit aemet, consectetuer adipiscing elit. Utea purous---
Lorem ipsum dolor sit aemet, consectetuer adipiscing elit. Utea purous\textemdash
Lorem ipsum dolor sit aemet, consectetuer adipiscing elit. Utean purousa\textendash
\end{document}
For my test case, I have tried to either disable or increase protrusion for these 2 characters, but nothing works. What am I doing wrong?
Side question: is this possible to enable protrusion only for specific characters? For example, I would want to have protrusion disabled for all fonts in all encodings, with exception of period, comma and semicolon.

encoding = {*}. Some info about how to override settings are also here https://tex.stackexchange.com/a/124032/2388 – Ulrike Fischer Jul 07 '17 at 10:00LoadMicrotypeFileand whether it is actually required. – Rafal Jul 07 '17 at 10:06\LoadMicrotypeFile{CharisSIL}before the\SetProtrusioncommand. – Robert Jul 07 '17 at 16:07\LoadMicrotypeFile{CharisSIL}. I noticed that\SetProtrusionfrom my MWE (with comma added) together with\LoadMicrotypeFiledisables protrusion for characters not defined in\SetProtrusioncommand. Is this intended behaviour? – Rafal Jul 10 '17 at 07:24\SetProtrusionused together withLoadMicrotypeFileoverwrite default settings for specified font set? I expected that only characters defined in\SetProtrusionwould have their default values overwritten by whatever I specify. – Rafal Jul 10 '17 at 07:31loadsettings, which you can then modify or extend. – Robert Jul 11 '17 at 17:18