Since we enable global-company-mode, explicitly enabling it in the setup
for various major modes does nothing. But it does tie the code to
company mode, making it harder to try alternatives like corfu.
Ensure language servers only start when a buffer is visible. This helps
with desktop restore speed, as various language servers do not start all
at the same time.
The auto-highlight-symbol package has a nicer interactive editing mode,
but it messes with the visual presentation for selected region and other
things. So let's go back to the less fancy but more reliable
highlight-symbol package.
Also let's properly disable both symbol highlighting packages in golang
and dart, where lsp-mode provides a better and more intelligent symbol
highlighting feature.