Subject: [feature request] ts_headline should have an option to highlight only full matches of <-> expressions

From: Jake North <[email-masked]>
Date: Sat, 8 Jan 2022 20:09:24 +0100 (CET)

Hi,

I am using Postgres' full text search since some time now and overall it's working really well for me. However one issue I have is that ts_headline highlights partial matches of FOLLOWED BY (<->) expressions, e.g.

SELECT ts_headline('some words and some more words', to_tsquery('some<->words'));

gives

<b>some</b> <b>words</b> and <b>some</b> more <b>words</b>

while I expect

<b>some words</b> and some more words

I think the highlights of partial matches is in most cases not useful and confusing to end users, they may think the search did not recognize they requested the words to be consecutive. Google also does not highlight partial matches it seems.

I suspect to implement this would require substantial changes to ts_headline since it seems to treat the lexemes independently, but it would be a big improvement and should be the default behaviour.

Best regards,
Jake N