<p></p>
<p>You seem to be misunderstanding how tabs work, they do not align things, they simply move the next character to the next tab stop.  The location of tabs stops is the pixel location at the position of every n spaces in the default font, where n is set in preferences and defaults to 4.</p>
<p>Of course since those positions are the same on each line, tabs can be used by humans to make things align.</p>
<p>But what to do when wrapping?  Re-tab the wrapped part of the text, or tab based on the full line and copy that number of pixels when wrapping.   Either could be considered valid, and Scintilla appears to do the second, probably because it is less costly, and wrapping is already very expensive.</p>
<p>But since wrapped tabs are just a number of pixels this means that the position of the <code>--</code> is determined by the number of non-tab characters before the tab, so it can take positions that are not on tab stops.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/issues/1495#issuecomment-697040573">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAIOWJ7ZWLJJNEJ3YLVPQWLSHEZZDANCNFSM4DLDKXXQ">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AAIOWJYNHPBGSGCQMJPXGV3SHEZZDA5CNFSM4DLDKXX2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOFGF75PI.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/geany/geany/issues/1495#issuecomment-697040573",
"url": "https://github.com/geany/geany/issues/1495#issuecomment-697040573",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>