Fix display of non-ASCII tags in the symbols tree for non-UTF-8 files

We used to convert the tags from the file encoding to UTF-8, but since
we parse directly from our UTF-8 buffer, all tags are UTF-8, which lead
to an improper conversion.
ReStructuredText: fix parsing of titles containing UTF-8 characters

If a title contained multi-byte UTF-8 characters, it wasn't properly
recognized due to the title being longer (in bytes) than the underline.
So, fix the title length computation to properly count the characters,
not the bytes.

Note that this fix only handles ASCII, one-byte charsets and UTF-8, it
won't help with other multi-bytes encodings.  However, the whole parser
expects ASCII-compatible encoding anyway, and in most situations it
will be fed the Geany's UTF-8 buffer.

Closes #3578050.
Fix parsing of C++11 final classes

Closes #3577559.
Set style for SCE_C_STRINGRAW (C++11 raw strings)

Part of #3578557.
Parse C++11 enums with type specifier

Part of #3578557.
Parse C++11 classed enums

Part of #3578557.
Fix a use of non-const variable to hold a string literal
Fix spawning [synchronous] commands on Windows

Build command spawning failed sometimes when there were several
pages of errors. In these cases the process would block for 30s and
then abort. (Some hangs were also experienced).

This fix does cause a console window to be shown for the duration of
the spawned process. This seems acceptable compared with the old
broken behaviour, and can be useful to abort the build command by
closing the console window.

Note: If 'env' is passed, the old broken spawning is used.
Fix gcc missing field initializer warning
Fix parsing colons in D (#3577788)
Update Scintilla to version 3.2.3

Closes #2909124, #3094431 and #3233160.
Refresh our Scintilla patch for the new lexers
Add new PO lexer to the build system
Update for new PO styles
Update NEWS
Merge branch 'scintilla-update'
Clear search markers on Mark All keybinding when already set
JavaScript parser: properly parse regular expression literals

This prevents a regex pattern from fooling the parser if it contains
some recognized constructs, like comment or string literal starts.

Closes #2992393 and #3398636.
JavaScript parser: fix scope of functions nested inside methods
Fix a c-format typo in the Turkish translation leading to a crash