How to use options in tm-define?

:proposals option specifies place-holder value of an argument of given procedure. This value will appear in input box when interactive procedure is called.

There are several options and features undocumented:

  1. Are there any difference between :default and :proposals?
  2. how to use :check-mark?
(tm-define (func arg)
    (:check-mark "what mean of this flag" how-doess-this-function-work?)
    (:argument arg1 "Documentation of arg 1")
    (:proposals arg1 "hello world")
    (string-length arg1))

; "hello world" can be found at value of arg1
(interactive arg1)

The check-mark keyword is for use in menus. There are some comments about it in the documentation

Some dialogues have multiple suggested inputs with only one the default, e.g. ‘1pt’, ‘2pt’, … Is it possible that :proposals specifies the suggestions and :default the preselected one?

Some dialogues have multiple suggested inputs with only one the default

Suggested value is coded in dialog definition:

(tm-widget (pattern-blur-options key)
  (hlist
    (when (get-blur key)
      (enum (set-blur key answer)
            (list (or (get-blur key) "")
                  "0.2pt" "0.5pt" "1pt" "2pt" "5px" "")
            (or (get-blur key) "") "15em"))
    // // //
    (toggle (set-blur key (and answer "1pt"))
            (nnot (get-blur key)))
    >>))