Есть ли способ вернуться к предыдущей строке внутри proc в оболочке TCL?

Можно ли избежать повторной записи всего этого оператора после нажатия клавиши enter при записи ошибочного оператора в proc в оболочке tcl?

Примечание: здесь я не использую TCL IDE, напрямую пишу в оболочке.

systest> tclsh
%proc demo {args} {
  set res #erroneous statement written in the shell
  set result 1 
  }

2 ответа

Базовый tclsh не имеет никаких особенностей.

Может быть, эта приличная интерактивная оболочка TCL поможет вам...

Оболочка readline выглядит как решение для вас.

Это зависит от того, какую оболочку и терминал вы используете. Если это стандартный tclsh, запущенный в терминале (будь то Unix или Windows), ответ - нет. Код редактирования просто не такой сложный. (У вас есть больше возможностей, если вы используете tkcon или оболочку readline.)

К счастью, если вы находитесь в процессе написания процедуры, это не страшно. Все, что вам нужно сделать, это определить эту процедуру снова после этого, и новая просто заменит старую. Это помогает, если вы используете копирование и вставку, чтобы получить правильные фрагменты, откуда вы печатали раньше. Я так много делаю; это позволяет мне убедиться, что фрагменты кода, которые я использую, помогая людям здесь, (ну, почти) всегда тестируются.

Другие вопросы по тегам