If you start from the start of the buffer, TAB will take you to "Gnu", then to "FSF" and then "no more links". If you start from the end and S-TAB, it'll take you to "FSF" (which is correct) and then "no previous link", which is incorrect. Furthermore, if you put point on the "a" in "Bar", it'll take you to Gnu instead of "FSF". Looking at the code in text-property-search-backward, there seems to be several off-by-one errors there, interacting with each other in horrible ways and makes my head swim, but unless somebody gets there before me, I'll have a look at it some other day. In GNU Emacs 28.0.50 (build 6, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0) of 2020-01-21 built on marnie Repository revision: c1b6cf6757fbd00cf6e8cae23e1670b9ff794811 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12004000 System Description: Debian GNU/Linux 10 (buster) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no