标记用作指向文本缓冲区的稳定指针。光标就是一个例子,但标记也经常用于内部(用户不可见)的原因。假设有一个标记指向以下单词的中间(|
表示标记,而不是文本中的字符):
foo|bar
如果我们在“foo”之后和“bar”之前插入文本“baz”,则标记的行为会根据重力而有所不同。
对于左重力标记:
foo|bazbar
使用正确的重力(如光标):
foobaz|bar
左重力的一个很好的用例是指向某行文本开头的标记。使用右重力,文本插入可以将其移动到其他地方,使用左重力,它将始终指向行开头(当然前提是之前的换行符没有被删除)。