update, plus some typos and punctuation fixed
(cherry picked from commit 69279235807547b440d105ea3ea99aa1ded3d94f)
only when when there is something to undo

They hypothesis behind this change is that the undo is
undoing an edit that came before, not the temporary edit
that appears in insert-close-paren. So, when there are
no edits happening (ie when fixup? is #f) then don't
undo. This is only a hypothesis because we were not able
to find a small code sequence, outside of DrRacket to
cause the bad behavior, so possibly there is really more
going on here.

Thanks to Nadeem Abdul Hamid for finding this fix.

Closes PR 13454
(cherry picked from commit f90eb33d67a7e054b717f7a827ca17013499eb19)
fix a bug in executable creation

The code used eq? to check to see if a given language was in
an list of allowed-to-create-executables languages. But the
language object was passing thru TR and so eq? didn't hold and
thus the check was buggy.
(cherry picked from commit 2d2b3bee2fed3468a317ee2222f58384822f4b8b)
unbreak check syntax

get-current-tab may not be the right tab to replay the trace,
now that online expansion runs other tabs when the current tab
is up to date.
(cherry picked from commit 3e5a9ca3cd24c368f8dcdecd8f77c0f4cf9c9824)
disable a broken responsiveness optimization
(cherry picked from commit c8bee5acf76e4257a688e0bf2712e51404bd5048)