Some editors automatically add the closing double quote, which pretty much eliminates this problem. For example:
step1: string s = | <- caret step2: string s = "| <- caret step3: string s = "|" <- editor automatically adds the ending quote step4: string s = "typesomething" step5: string s = "typesomething"; <- you don't have to move the cursor after the closing quote, just type in the extra " and it will automatically overwrite the existing one. Then you add -> ; Perhaps Geany doesn't automatically do step5, and doesn't let you overwrite the extra closing quote. This might explain why you don't like automatic addition of the closing quote. This wouldn't be hard to implement using Scintilla. The problem is most IDE's and editors which use Scintilla barely scratch the surface of its potential. They just embed the editing component and add a few dialog boxes to configure font sizes.