[ANN] Dialog Tool 2.0-alpha-8

Dialog Tool 2.0-alpha-6

Install on OS X:

brew install hlship/brew/dialog-tool

The latest dialog-tool greatly improves the Skein; it is faster and more consistent, and more predictable in how it handles undo/redo when selecting different knots in the skein.

In addition, the dgt bundle command may now include a walkthrough (generated from the Skein).

I also made a small change to the Homebrew formula, that should let dgt startup faster (really, instantly) the first time you run it; previously, there was a delay downloading some dependencies on first execution.

1 Like

I’m working on making it so that the skein can be run using dfrotz as an alternative to dgdebug but I’ve hit this bug: OS X: dfrotz entirely omits bold output (#290) · Issues · David Griffith / frotz · GitLab

Yeah, it’s annoying. I ran into that while testing Miss Gosling and the best solution I could find was this.

Interesting; makes me wonder if it is a dialog problem or a dfrotz problem.

Using dfrotz -f bbcode somestory.z5 will enable a mode which can display styles and colors using BB markup. For example:

[b]The Gostak[/b]                                                                      
An Interofgan Halpock                                                           
Copyright 2001 by Carl Muckenhoupt                                              
(For a jallon, louk JALLON\.)                                                    
Release 2 / Serial number 020305 / Inform v6\.21 Library 6/10                    
                                                                                
[b]Delcot[/b]                                                                          
This is the delcot of tondam, where gitches frike and duscats glake\. Across from
a tophthed curple, a gomway deaves to kiloff and kirf, gombing a samilen to its 
hoff\.

There is also an “ansi” mode which will output escape codes which some (but not all) terminals can display, e.g. ESC + “[1m” for bold. That’s nice if you are just looking at a terminal, but not when you send the output to a file and want to process it.

1 Like

Would it be possible to build and run this program on Windows or Linux?

I don’t know enough, but my intuition is that dialog (that is, the zcode emitted by dialog) is “asking” the VM if it supports the fonts and dfrotz is saying “no” and dialog is skipping the output. Does that make sense?

Another thing, if you output a transcript, the transcript is exactly what I need (bold and italic text is output plain).

I haven’t been able to find a Docker image with dfrotz installed (just the ncurses-based frotz), or an apk package with dfrotz. Isn’t that odd?

It looks to be a known, fixed, but unreleased, bug in dfrotz.

sue@solfar ~ % brew postinstall hlship/brew/dialog-tool

==> **Postinstalling dialog-tool**

==> **/opt/homebrew/Cellar/dialog-tool/2.0-alpha-6/bin/dgt -h > /dev/null 2>&1**

Last 15 lines from /Users/sue/Library/Logs/Homebrew/dialog-tool/post_install.01.null:

2025-01-04 02:45:17 -0500

/opt/homebrew/Cellar/dialog-tool/2.0-alpha-6/bin/dgt -h > /dev/null 2>&1

Warning: The post-install step did not complete successfully

You can try again using:

brew postinstall hlship/brew/dialog-tool

sue@solfar ~ % cat ~/Library/Logs/Homebrew/dialog-tool/post_install.01.null

2025-01-04 02:45:17 -0500

/opt/homebrew/Cellar/dialog-tool/2.0-alpha-6/bin/dgt -h > /dev/null 2>&1

HOMEBREW_VERSION: 4.4.14

ORIGIN: https://github.com/Homebrew/brew

HEAD: f84082963da8af8c9ccd6dffbe932eba457e2b78

Last commit: 5 days ago

Branch: stable

Core tap JSON: 04 Jan 07:39 UTC

Core cask tap JSON: 04 Jan 07:39 UTC

HOMEBREW_PREFIX: /opt/homebrew

HOMEBREW_CASK_OPTS: []

HOMEBREW_EDITOR: /bin/nano

HOMEBREW_MAKE_JOBS: 8

HOMEBREW_NO_BOOTSNAP: set

Homebrew Ruby: 3.3.6 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.3.6/bin/ruby

CPU: octa-core 64-bit arm_firestorm_icestorm

Clang: 16.0.0 build 1600

Git: 2.47.1 => /opt/homebrew/bin/git

Curl: 8.7.1 => /usr/bin/curl

macOS: 15.2-arm64

CLT: 16.2.0.0.1.1733547573

Xcode: 16.2

Rosetta 2: false

HOMEBREW_GIT: git

PATH: /opt/homebrew/bin:/opt/homebrew/sbin:/Users/sue/df_osx:/Users/sue/workspace/uzebox/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/TeX/texbin

sue@solfar ~ %

Could you run /opt/homebrew/Cellar/dialog-tool/2.0-alpha-6/bin/dgt and send me the result?

That’s supposed to run dgt once, and download all its dependencies.

1 Like

Dialog Tool 2.0-alpha-7

Install on OS X:

brew install hlship/brew/dialog-tool

This release adds a sources command so that you can get a list of the source files (with or without debug).

The skein command has been split into skein and new-skein.

It’s now possible to create a skein using dfrotz instead of dgdebug. Note that dfrotz has bugs that prevents this from working properly as yet. A new release of dfrotz should be available soon.

The format of dialog.edn has simplified somewhat; the :story key is now :main, and the values are directory names, not glob matches.

The layout of a new project has changed slightly; more resources are copied from the dialog-tool installation into the project so they can be customized (there’s a bundle directory containing those). In addition, the Dialog stddebug.dg is copied to lib/dialog/debug.

There’s been a good number of other minor fixes as well.

I’ve been using dgt quite a bit, as I update my Sand-dancer example, and the threaded conversation library.

Clojure tools not yet in expected location: /Users/sue/.deps.clj/1.12.0.1488/ClojureTools/clojure-tools-1.12.0.1488.jar
Downloading https://github.com/clojure/brew-install/releases/download/1.12.0.1488/clojure-tools.zip to /Users/sue/.deps.clj/1.12.0.1488/ClojureTools/clojure-tools.zip
Unzipping /Users/sue/.deps.clj/1.12.0.1488/ClojureTools/clojure-tools.zip ...
Successfully installed clojure tools!
Downloading: medley/medley/1.4.0/medley-1.4.0.pom from clojars
Downloading: medley/medley/1.4.0/medley-1.4.0.jar from clojars
dgt: no command provided, use dgt help to list commands

…and then brew upgrade works just fine to go to the alpha 7 version.

if the upgrade to alpha-7 worked, then that’s cool. I took out a part of the Homebrew formula that was causing the problem.

1 Like

I’ve just released dialog-tool 2.0-alpha-8.

Install it using:

brew install hlship/brew/dialog-tool

This release:

  • Improves the Skein UI
    • Tracks if there are unsaved changes
    • Asks before quitting if unsaved changes
    • New button to close window and shut down server
    • Labels knots with more than one child
  • Can now use dfrotz as the engine for the skein (though dgdebug is usually better)
  • Installs zsh command completions for the dgt tool

Feedback welcome! Who is using dialog-tool besides me? Anyone on Linux? On Windows?

3 Likes

I haven’t been yet, but I want to as soon as I can get back into IF writing!

I haven’t looked at it in detail because the README says it’s OS X only. Is that not the case?

2 Likes

Homebrew is primarily for OS X, but it does work with Linux and, supposedly, with Windows with some effort: How to install Homebrew on Windows | bobbyhadz

Is Homebrew just for installation? Could I make it work by installing Babashka and the dialog-tool sources myself?

It’s academic at the moment as my Windows laptop is out of commission, but I’d be interested in trying it out once it’s working again.