elisp: Adjusting Point

 
 20.6 Adjusting Point After Commands
 ===================================
 
 It is not easy to display a value of point in the middle of a sequence
 of text that has the ‘display’, ‘composition’ or is invisible.
 Therefore, after a command finishes and returns to the command loop, if
 point is within such a sequence, the command loop normally moves point
 to the edge of the sequence.
 
    A command can inhibit this feature by setting the variable
 ‘disable-point-adjustment’:
 
  -- Variable: disable-point-adjustment
      If this variable is non-‘nil’ when a command returns to the command
      loop, then the command loop does not check for those text
      properties, and does not move point out of sequences that have
      them.
 
      The command loop sets this variable to ‘nil’ before each command,
      so if a command sets it, the effect applies only to that command.
 
  -- Variable: global-disable-point-adjustment
      If you set this variable to a non-‘nil’ value, the feature of
      moving point out of these sequences is completely turned off.