Subject: bug#52543: Add option to eliminate all duplications from the kill ring

From: Juri Linkov <[email-masked]>
Date: Sun, 19 Dec 2021 19:03:49 +0200

>> There is  kill-do-not-save-duplicates, but it deletes
>> only subsequent duplicates.
>>
>> There should be an other variable which prevents any duplicates
>> even if there are, say,  10 or 20 items between them.
>>
>> I expected kill-do-not-save-duplicates to do that, that variable
>> seems misnamed. It should be kill-do-not-save-subsequent-duplicates
>> instead.
>
> This has previously been discussed, and we decided to not alter how this
> works, because it'd be too surprising.  (And there are options to filter
> the kill ring that users that want that can use.)  So I'm closing this
> bug report.

Indeed:

  (setq kill-transform-function (lambda (s) (unless (member s kill-ring) s)))