This is more convenient for some devs than the old CMakeLists.custom.txt
solution because it allows the plugins themselves (files or folders) to be
ignored, rather than needing to remember to leave them unstaged.
* route 'Loading script...' messages through the debug logging framework
* they are now controllable via debugfilter. to turn off, add this to your dfhack.init file: debugfilter set Warning core script
* clarify debug logging docs
* prevent DEBUG messages from being compiled out of the binary
* recolor INFO messages so they blend into existing console output
* add configuration interface for log message header elements so they are individually configurable. all default to off
* code cleanup on autofarm.cpp
* more code cleanup on aufofarm.cpp
* yet more cleanup of autofarm.cpp
mostly whitespace, some `*` and `&` adjustments
* downgrade autofarm to c++11
apparently the gcc we use doesn't support c++14 generic lambdas
* death to whitespace
apparently visual studio's default whitespace murderer doesn't touch `#define`s. who knew?
* Update autofarm.cpp
const is good
even when the item label is truncated for length
this change also fixes items that were being incorrecty grouped due to
having differences only in the truncated part of their labels
so no one else is tempted to use it as a library. starting buildingplan
from two separate plugins just runs two completely separate engines with
separate state, one of which is completely inaccessible from the UI.
fixes special case where a channel tile is specified over a regular dig
tile. this allows dig-now to produce a flat floor in that case, which is
likely what is intended.
found this bug with blueprint-generated blueprints. if both a channel
and the resulting ramp are explicitly marked in the blueprint (like the
blueprint plugin does), the channel is processed first, pre-creating the
ramp in the tile designated for a ramp. Then, when the ramp designation
is processed, the ramp is already there, which is an invalid tile to
make a ramp on, so the designation is skipped (and therefore not
cleared). this change clears the designation for both the ramp tile and
the channel tile when either is processed. this opens another edge case
where the designation under a channel is a regular 'd' mine, which will
now get ignored and leave a ramp insead of a flat floor. but I'll
address that in the next commit.