printing: Avoid an useless allocation
Rewrite GTK printing using Scintilla

We used to draw the pages to print ourselves, but it is a tedious and
error-prone task (and we did made mistakes) that Scintilla would do
better by itself.  So, rewrite the GTK (e.g. non-external) print code
to use Scintilla's built-in capabilities of drawing the buffer's
content on the pages.

Not only this makes the code a lot simpler and shorter, but it gives a
more accurate render (proper handling of tab stops, wrapping on word
boundaries, no missing character when a wrapped line spans on multiple
pages, ...), and it is noticeably faster (around 3 times).

Additionally we now paginate properly, which fixes printing starting
after page 1 or printing non-contiguous pages (we used to always print
starting from page 1 and counting, no matter what pages were selected).

However, note that obviously the render is not the same, even though
it's quite similar.
printing: Fix line number margin border position
Update po/he.po

Translation error correction
Don't try to unref NULL regex
Fix "mark all" search feature when using regular expressions

Use the proper, full-featured, regular expression engine we use
everywhere else rather than Scintilla's stripped-down one.

Closes #3564132.
Update VHDL parser to display blocks in the symbols list
Remove a suspect ungetc() call in VHDL parser

This ungetc() call don't look legitimate and actually leads to lots
of warnings about ungetc() being called when another character was
already backed up.
Save encoding in session as text

Since reading locale and reading encodings from within files by regex
can find encodings not on the Geany list, saving as text ensures that
any encoding found can be saved in the session, otherwise a file can
be opened but will not re-open because the encoding cannot be saved
in the session.  Since numeric encoding names exist prefix the text
name by 'E' so they can be distinguished from saved numeric indexes.
Update Scintilla to version 3.2.2
Improve collapsing fold behaviour when start point is offscreen

When collapsing a fold range whose starting line is offscreen,
scroll the starting line to display at the top of the view.
Otherwise it can be confusing when the document scrolls down to hide
the folded lines.
Don't regenerate deps.mak files on 'make clean' (Windows makefile)
Merge branch 'printing-with-scintilla'

Closes #3475444, #2804000 and #2629121.
Use namespaces icon for Ruby modules

It's not perfect but better than nothing since other tags have icons.
Don't set the focus to the editor widget when clicking a symbol while holding Control

When clicking a symbol in the Symbols sidebar and holding the Control modifier key, don't
set the focus to the editor widget so further navigation in the Symbols sidebar with keys
is possible.
Strip more tags which start with a keyword
Regenerate Python tag list

Generated against a clean Python 2.7 installation.
Don't use deprecated gtk_box_pack_start_defaults()
Don't use long-deprecated gtk_widget_{ref,unref}()
Don't access GtkDialog fields directly