instead of exiting with error it is better to force ncurses on.
noncurses is now default, but does not support hex colors. so if
hex colors are used (like in a gradient) it will be better to force
ncurses mode. ncurses might have some performance issues and slight
glitches. but it should be ok as long as it is documented in the
config file. relates to #368
The reworked noncurses mode uses a custom framebuffer technique that
only draws changes per frame and only writes to the terminal once per
frame. This results in far less cpu usage then ncurses. It is also
free of the flickering that we se in ncurses mode #196
Colors are no longer set by default so hopefully cava will change
color automatically in noncurses mode when using tools such as
pywall #340#181
Unfortunently html colors, gradient and key controls are not supported
in noncurses.
most likely wide chars or just ncurses requires LANG to be set
some people just haven't set up their locale properly.
The settings will revert on exit.
this resolves#109 and resolves#344
a new line after last row caused the terminal to start scrolling
this was resolved in the past by simply not drawing that row.
new fix is to not newline at the last row, but do a return instead
the code has up until now used shorthand var names such as bw
for bar width and lcf for lower cut-off frequency. There is no
need for this. We are now moving to a naming scheme of
descriptive names on two to three words using underscores.
when setting background color manually there was some strange bug
offsetting the bars and adding characters that are not cleaned up,
memory issue in ncurses?
fixed by adding spaces all over screen on init to paint background
manually.