Horizontal Caret
-
@JamesWebb said in Horizontal Caret:
I mean dash-like cursor.
I assumed that, although it would have been nice to be explicit about what you wanted, in your first posting.
As I said, it isn’t realistically possible.
-
Hello, @jameswebb, @alan-kilborn and All,
@alan-kilborn, wouldn’t we imagine such a writing mode :
-
In
Insertion
mode, one would get a caret under the character position -
In
Overwrite
mode, one would get a full blue cursor at the character position
Because , as this behaviour is just the true opposite of the present
Block
behaviour of the caret, I suppose it shouldn’t be too difficult to implement it ?What are your feelings about it?
Best Regards,
guy038
-
-
Certainly it is technically possible, with changes to the software.
OP is clearly looking for a solution now, with existing software, and that is the reference point from which I addressed his question. -
I have attached a screenshot which I hope will clarify my request. Currently, my “Caret” settings are set to display the cursor as a “Block.” However, as English is not my native language (I use an RTL language), I find it more comfortable for my eyes if the cursor (caret/indicator) were to be displayed under the letters instead.
What I am asking for is to change the cursor/caret to the dash (like no. 2 in the screenshot). Currently, the cursor changes to the dash in overwrite mode, but I would like it to change to the dash in normal (insert) mode.
I would be grateful for any help or suggestions. Thanks.https://mega.nz/file/d4RQ1DTT#fdgxqsXNCkYRg8xdmMHboBC63l5kSRIlHTIg-E1JSLw
-
@JamesWebb said in Horizontal Caret:
What I am asking for…
If you want anyone to see it, you have to turn it into a real feature request; see HERE for some tips on how to do that.
-
@Alan-Kilborn Thanks. I am going for it.
-
@JamesWebb said in Horizontal Caret:
Is there a way to force NP++ to use horizontal caret
Yes, but you need to use a scripting plugin. See SCI_SETCARETSTYLE.
I could provide more instructions, but I’m on my phone so can’t do it now.
Cheers.
-
SCI_SETCARETSTYLE
I don’t see any choices that give OP what is wanted…but I haven’t actually tried all of them…
-
A-ha, I may have read it wrong. Seems you can only do an overstrike carat as a bar. If it’s not an option here, I don’t even think a feature request will fix it since Scintilla does not provide for it.
Cheers.
-
@Michael-Vincent said in Horizontal Caret:
I don’t even think a feature request will fix it since Scintilla does not provide for it
A Notepad++ feature request can be the first step to a Scintilla feature request.
-
Many thanks. Unfortunately, I’m not a coder and I use NP++ for editing (some codes) and as my notepad. I don’t know anything about “SCI_SETCARETSTYLE”. As Alan said, I posted it as a request and I got this:
https://mega.nz/file/Z8wRWJhQ#difiRHrQReY85epf-qqPBhSCLzV7lOiLO0n27cKfCh8
Does it mean there is no way and I have to forget about this feature?
-
Hello, @jameswebb, @alan-kilborn, @michael-vincent and All,
@jameswebb, you said :
Currently, the cursor changes to the dash in overwrite mode, but I would like it to change to the dash in normal (insert) mode.
I do understand. But, how do you want the caret to look, in your desired
overwrite
mode ?
BTW, here is the link to your issue, on
Github
site :https://github.com/notepad-plus-plus/notepad-plus-plus/issues/14518
BR
guy038
-
Is this, by chance, a desire because the vertical caret can appear in the wrong place for RTL mode? I don’t know much about RTL mode so I can’t answer that for myself.
-
I don’t really know much about RTL mode either, and since I’m not familiar with any languages that read RTL, I wouldn’t even know what appropriate behavior should look like.
With that said, I notice that when you type a character in RTL mode, the caret moves to the right, same as in LTR mode. Maybe if this was reversed, that would help address the OP’s problem?
-
@JamesWebb said in Horizontal Caret:
Does it mean there is no way and I have to forget about this feature?
That’s correct. Notepad++ is a wrapper around an editor called Scintilla. The main person behind Scintilla has for the last ten years held off on implementing the underline style caret when in insert mode as it would then be confusingly similar to the overstrike mode caret and also likely impacts other areas of the code.
However, the caret related parts of Scintilla’s API offers dozens of options. That’s why a Notepad++ plugin was suggested. Someone would need to set up the plugin and then experiment with Scintilla’s API to see if Scintilla could be persuaded or coerced into showing an insert mode caret that looks like the overstrike mode caret.
-
Hi @guy038 ,
My eyes are comfortable with the dash cursor. BTW, I have no eye problem, I don’t know why the vertical caret (Block) bothers the eyes.
This is my RTL (Persian) language in NP++, I like this dash caret (it’s in overwrite mode):
https://mega.nz/file/4952nQjT#zvgyeUnV_jdDVyCNGwqBiqus0PTuC1niMilGX7CsHuwWindows Terminal has 6 options including the dash which I’ve set it:
https://mega.nz/file/ps5WFRLZ#eOGpDQN-hfH1nbL8lyGVJmKZqaftQbqLLPALRTqYzDY
https://mega.nz/file/1pIyHQgD#o-poS9aVzKCE2d6A73x6RuXiCEoWg6Udn9jXAy0deXwHi @mkupper ,
Just one question, an open source app doesn’t mean you can customize its source in your own way?
Scintilla is closed source? -
@JamesWebb said in Horizontal Caret:
Just one question, an open source app doesn’t mean you can customize its source in your own way?
Scintilla is closed source?Notepad++ and Scintilla are open-source.
So…if you are skilled, go ahead and make the changes necessary for the caret you want.
Submit your changes to Scintilla, and see if they are accepted.
If that’s accepted, make a change to Notepad++ to use the new caret you have defined, and submit that as a change and see if it it accepted.OR
Change the code in a local sandbox for your own use.
Have your caret and use it.
But know that no one else can use your caret that way, and, if you want to keep updating Notepad++ with official changes, you’ll have to keep your sandbox in sync. -
@JamesWebb said in Horizontal Caret:
Hi @guy038 ,
My eyes are comfortable with the dash cursor. BTW, I have no eye problem, I don’t know why the vertical caret (Block) bothers the eyes.
That is ok. Sometimes things bother us that don’t seem to bother others.
This is my RTL (Persian) language in NP++, I like this dash caret (it’s in overwrite mode):
https://mega.nz/file/4952nQjT#zvgyeUnV_jdDVyCNGwqBiqus0PTuC1niMilGX7CsHuwThat was useful and reminds me that Notepad++ in overwrite mode has the cursor you desire.
Windows Terminal has 6 options including the dash which I’ve set it:
https://mega.nz/file/ps5WFRLZ#eOGpDQN-hfH1nbL8lyGVJmKZqaftQbqLLPALRTqYzDY
https://mega.nz/file/1pIyHQgD#o-poS9aVzKCE2d6A73x6RuXiCEoWg6Udn9jXAy0deXwIf and how much the cursor can be configured is entirely up to the developers of each application. Hardware terminals had a variety of cursor shapes. When software based terminal emulators were created they tended to have configurable cursors to mimic the styles available on the hardware terminals they were emulating. Notepad++ started out as an improvement on Microsoft Notepad which only offers a
|
vertical line cursor that can’t be configured. The developer of Notepad++ had ideas plus interest in various improvements on Microsoft Notepad. Those ideas/interest areas did not include making the cursor extremely configurable.Just one question, an open source app doesn’t mean you can customize its source in your own way?
Scintilla is closed source?Both Notepad++ and Scintilla are open source. However, open source does not mean anyone can make changes, particularly changes that could impact or have a negative affect on others using the product. Nearly all open source projects have a process where people can propose changes. The proposals get reviewed. Many proposals are not implemented, usually because of the amount of work needed to create and debug the new code vs. the value users will get from those changes. Proposals are also not implemented because they don’t align with the overall plan for the project.
Ten years ago someone suggested a change to the Notepad++/Scintilla caret or cursor very much like what you desire. That proposal was not implemented as the developers of Notepad++ and Scintilla did not see the value vs. the amount of work needed.
As they are open source you are free to create your own fork, and even to make it public, that implements your desired cursor.
-
@mkupper Many thanks for your help and advice. Your explanation about open-source project was like a crash course for me. I’m not a coder, so I don’t know much about it.
Regarding the issue with the dash cursor, I realized that it’s not worth the effort since it doesn’t add much value. Also, since I have no coding knowledge, I can’t create my own repacked version of NP++ 😑.
I have a question about selecting words in RTL. Whenever I try to select a word or words, if the line is left-aligned, the selection appears like a rolling film strip, making it difficult for me to see which word I’m selecting. However, if the line is right-aligned, the selection works normally, and I can see which word I’m selecting:
https://mega.nz/file/R9YTASzC#cwWjdDfJG5XRGsqfUWrTuJBfF_iDPKA3NX_Oac9O5RM
Do you know why NP++ has such odd behaviour? Is there any solution?