Inserting UTF-8 Text
-
I am trying to create a plugin for inserting mathematical symbols for my mathematics documentation.
I have used the following to accomplish this:
SendMessageW(nppData._scintillaMainHandle, SCI_REPLACESEL, NULL,(LPARAM)text)However, after executing this command, the entire document view is temporarily changed to ANSI, causing my newly inserted character, as well as other UTF-8 characters to display incorrectly. If I change tabs, then return back to this one, the file view is reverted back to the default UTF-8 and the characters display correctly. I have tried various approaches to fixing this such as SCI_SETCODEPAGE with SC_CP_UTF8 as well as using WM_PAINT to no avail.
Is there a way to fix this issue?
-
I have not had such a problem yet.
Could you give us an example of the text to be inserted and a document content so that it can be understood?
Preferably as minimal as possible. -
@Chester-Fritz said in Inserting UTF-8 Text:
SendMessageW(nppData._scintillaMainHandle, SCI_REPLACESEL, NULL,(LPARAM)text)
This seems to be an extreme route to go to, to do this.
Curious why you would try it this way – is there some advantage?
I agree with @Ekopalypse that some more info about your workflow would definitely help.Perhaps THIS THREAD is of some interest.
-
I managed to solve the issue this morning after reviewing the source to the mime tools plugin.
The following lines of code resulted in the data being displayed correctly.
SendMessageW(nppData._scintillaMainHandle, SCI_TARGETFROMSELECTION, 0, 0);
SendMessageW(nppData._scintillaMainHandle, SCI_REPLACETARGET, len, (LPARAM)text);Thank you for the assistance.