Сам код, с довольно пространными комментариями в
http://wiki.mazylis.lt/cgi-bin/trac.cgi/.../jbforth/service/Rename.f
Его вызов -
http://wiki.mazylis.lt/cgi-bin/trac.cgi/.../villagemaster/7031-20.htm
Комментарии. В виду того, что игрок в поле ввода может ввести что угодно, а HTML-механизм передачи введённых данных в RequestBypassToServer весьма несовершенен пришлось идти на финт ушами. Вызов оформляется в виде:
5000000 rename: $new_name
где цифры - цена переименования, а слово rename: написано таким образом, что берёт весь входной поток до конца строки.
Это, кстати, одно из де-факто соглашений на счёт Форт-имён. Если пользовательское слово берёт из потока одно или больше слов, то его имя стараются оканчивать на двоеточие.
code forth
: rename: ( price -- / new name to end of string )
tail rename_for_price
;
Слово rename: берёт весь поток до конца строки ("tail" - нестандартное слово), цена переименования перед этим уже лежит в стеке, так что остаётся только вызвать rename_for_price.