Skip to content

Conversation

@SilasD
Copy link
Contributor

@SilasD SilasD commented Nov 30, 2025

This adds some previously-undocumented keywords to the help banner of the Lua interactive interpreter.

These keywords are shortcuts. e.g. item is a shortcut for dfhack.gui.getSelectedItem().

Per a Discord discussion:

Initial mention of the capability:
https://discord.com/channels/793331351645323264/793331351645323267/1436776033905934347
Note about the specific file and function that implements the keywords:
https://discord.com/channels/793331351645323264/793331351645323267/1436779852496900168

Special Note:

  • The first commit is the important one that documents the relevant keywords. It's short, at just two lines.
  • The second commit is just a changelog update.
  • The third commit is sugar, it adds highlighting in yellow to commands listed in the help banner. It is a bit more invasive.

I would particularly like to have the first and second commits merged.

The third is less important, and I do understand how critical dfhack.lua is to the game, and why changes need to be carefully considered.

If you choose to cherry-pick the first and second commits, I'm cool with that.

When the `lua` interactive interpreter is started, the help banner now
lists the shortcuts (that is, variable names with special handling)
already implemented in `library/lua/utils.lua` `df_shortcut_var()`.
These keywords allow the interpreter to use the currently-selected
object in the DF UI.  They are currently undocumented, as far as I
can tell.  (The `lua` interpreter documentation does contain two hints
in the Examples.)
(Is there a better way to word this?)
…ords

When the interactive interpreter is started, highlight the various
commands and keywords in yellow.  This includes banner and the
'Type quit to exit interactive lua interpreter.' message.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant