- `caravan`: advanced unit assignment screens for cages, restraints, and pits/ponds
- `sort`: search and sort for squad assignment screen
- `zone`: advanced unit assignment screens for cages, restraints, and pits/ponds
## Fixes
## Fixes
- Core: properly reload scripts in mods when a world is unloaded and immediately loaded again
- Core: reload scripts in mods when a world is unloaded and immediately loaded again
- Core: fix text getting added to DFHack text entry widgets when Alt- or Ctrl- keys are hit
- Core: fix text getting added to DFHack text entry widgets when Alt- or Ctrl- keys are hit
- `orders`: prevent import/export overlay from appearing on the create workorder screen
- `orders`: prevent import/export overlay from appearing on the create workorder screen
@ -73,14 +72,12 @@ Template for new versions:
- ``Items::getValue()``: remove ``caravan_buying`` parameter since the identity of the selling party doesn't actually affect the item value
- ``Items::getValue()``: remove ``caravan_buying`` parameter since the identity of the selling party doesn't actually affect the item value
- `RemoteFortressReader`: add a ``force_reload`` option to the GetBlockList RPC API to return blocks regardless of whether they have changed since the last request
- `RemoteFortressReader`: add a ``force_reload`` option to the GetBlockList RPC API to return blocks regardless of whether they have changed since the last request
## Internals
## Lua
## Lua
- ``new()``: improved error handling so that certain errors that were previously uncatchable (creating objects with members with unknown vtables) are now catchable with ``pcall()``
- ``new()``: improved error handling so that certain errors that were previously uncatchable (creating objects with members with unknown vtables) are now catchable with ``pcall()``
- ``dfhack.items.getValue()``: remove ``caravan_buying`` param as per C++ API change
- ``dfhack.items.getValue()``: remove ``caravan_buying`` param as per C++ API change
- ``widgets.BannerPanel``: panel with distinctive border for marking DFHack UI elements on otherwise vanilla screens
- ``widgets.BannerPanel``: panel with distinctive border for marking DFHack UI elements on otherwise vanilla screens
- ``widgets.Panel``: new functions to override instead of setting corresponding properties (useful when subclassing instead of just setting attributes): ``onDragBegin``, ``onDragEnd``, ``onResizeBegin``, ``onResizeEnd``
- ``widgets.Panel``: new functions to override instead of setting corresponding properties (useful when subclassing instead of just setting attributes): ``onDragBegin``, ``onDragEnd``, ``onResizeBegin``, ``onResizeEnd``
- ``dfhack.screen.readTile()``: now populates extended tile property fields (like top_of_text) in the returned Pen object
- ``dfhack.screen.readTile()``: now populates extended tile property fields (like ``top_of_text``) in the returned ``Pen`` object
:summary:Search and sort lists shown in the DF interface.
:tags:unavailable fort productivity interface
:tags: fort productivity interface
:no-command:
:no-command:
..dfhack-command:: sort-items
The ``sort`` tool provides overlays that sorting and searching options for
:summary:Sort the visible item list.
lists displayed in the DF interface.
..dfhack-command:: sort-units
Searching and sorting functionality is provided by `overlay` widgets, and widgets for individual lists can be moved via `gui/overlay` or turned on or off via `gui/control-panel`.
:summary:Sort the visible unit list.
Usage
Squad assignment overlay
-----
------------------------
::
The squad assignment screen can be sorted by name, by migrant wave, or by various military-related skills.
sort-items <property> [<property> ...]
If sorted by "any melee", then the citizen is sorted according to the highest
sort-units <property> [<property> ...]
skill they have in axes, short swords, maces, warhammers, spears, or general
fighting.
Both commands sort the visible list using the given sequence of comparisons.
If sorted by "any ranged", then the citizen is sorted according to the highest
Each property can be prefixed with a ``<`` or ``>`` character to indicate
skill they have in crossbows or general ranged combat.
whether elements that don't have the given property defined go first or last
(respectively) in the sorted list.
Examples
If sorted by "leadership", then the citizen is sorted according to the highest
--------
skill they have in leader, teacher, or military tactics.
``sort-items material type quality``
You can search for a dwarf by name by typing in the Search field. You can also
Sort a list of items by material, then by type, then by quality
type in the name of any job skill (military-related or not) and dwarves with
``sort-units profession name``
any experience in that skill will be shown. For example, to only see citizens
Sort a list of units by profession, then by name
with military tactics skill, type in "tactics".
Properties
You can see all the job skill names that you can search for by running::