> But I'm surprised it made things slow: this code should only be involved > when the user choose some *other* completion style, so could you check > which method of the completion table was invoked? It seems to be called with both `nil` and `lambda`. I've added this to the FIXME comment. It made things slow because when selecting a candidate with fido-vertical-mode it did another useless 0.5s/1s lookup for the thing I had just selected. > Maybe we should only use that code when `action` is one of `t` or `nil`? Maybe. Anyway in my tests it's working fine without it. But `nil` doesn't break them, so I'm fine if you add them. I'm just confused about the possible benefits that may come from that complexity. I wish you could post an illustrative example with some strings that a mere mortal might follow along. João