Some specialized buffers contain read-only text, which cannot be modified and therefore cannot be killed. The kill commands work specially in a read-only buffer: they move over text and copy it to the kill ring, without actually deleting it from the buffer. Normally, they also beep and display an error message when this happens. But if you set the variable
kill-read-only-ok to a non-
nil value, they just print a message in the echo area to explain why the text has not been erased.
If you change the variable
kill-do-not-save-duplicates to a non-
nil value, identical subsequent kills yield a single kill-ring entry, without duplication.