Sublime Forum

New block_caret is awesome, except for one detail


So I recently updated to 3200 and THANK YOU for the awesome work, I love the new block caret setting. (For those not in the know: set

caret: solid
block_caret: true

in the settings, then augment your color scheme with a suitable <block_caret> field.) I especially like the care that went into the block caret selection mode, with half-height block caret being used to distinguish a selection of length 1 from the ordinary caret.

However, something seems to be screwed up with the latter half-height selection caret: when at the right end of a selection, I think it would be more logical for the half-height caret to protrude from the selection’s right-hand edge (visually speaking, like a file tab, only horizontally) instead of being tucked inside the selection.

Speaking for myself as a longtime user of a non-blinking block caret, I have of course internalized the fact that the character insertion point coincides with the left edge of the block caret. I think that even when the caret is at half-height marking the end of a selection, the left edge of the caret should remain the “functional edge” of the caret, by which I mean that the left edge of the half-height caret should coincide with the right-hand edge of the selection, when at the end of the selection.

The issue is particularly disorienting for me when selecting text by dragging: as things are currently set up, the place where the caret would appear if I clicked a certain place on the page is not the same as the place the half-height caret appears if I drag the cursor to the exact same place. In short, the current setup implies that the caret’s semantics are not the same in click-mode as in drag-mode :frowning:

Another small issue with the current convention is that length 1 selections appear the same whether the caret is at the start or at the end of the selection. The two cases are not visually differentiated.

UPDATE: I got no love when I posted this 12 days ago, so I edited a bit. My apologies for the spam, for those had already seen this :clown_face:

1 Like


Has anyone found a solution for this? This is driving me crazy. I don’t want the block cursor to render any differently inside of a selection, but as far as I can tell there is no way change it. It’s even worse due to the fact that it renders in the wrong position if the cursor is on the right side of the selection.