@node Delete, Device, Define, Commands @iftex @syntax Delete. @end iftex @example Syntax: DELETE [ INTEGER1 [ INTEGER2 ] ] DELETE @r{HISTORY} [ ! ] DELETE @r{HISTORY} [ INTEGER1 [ INTEGER2 ] ] DELETE WORD @end example @pindex Delete Delete commands @code{INTEGER1} to @code{INTEGER2} (inclusive) from the history buffer. If the @code{INTEGER}s are not present, delete the last command. DELETE 0 will delete all history commands. If the @code{INTEGER}s are negative they are interpreted relative to the current command, so @code{-1} is the last command. The DELETE HISTORY commands are identical to the DELETE commands, except they themselves @emph{do} appear on the history list; they are preserved for backwards compatibility and because DELETE HISTORY \n can be used to prevent a command from appearing on the history list (the macro @code{del1}). If a macro contains a @code{DELETE HISTORY}, or calls a macro that contains one, or ... the macro will not appear on the history list. Traditionally, this meant that if there were two (or more) occurrences of DELETE HISTORY the previous command(s) were also be deleted, but in SM version 2.2.1 this has been changed, and DELETE HISTORY will only delete the last command typed at the keyboard. If for some nefarious purpose you really do want to delete older commands too, you can say DELETE HISTORY ! and the command will work the old way. DELETE WORD deletes the vector @code{WORD} (see SET @code{WORD} or READ @code{WORD} for how to define vectors), @code{MACRO name DELETE} is used to delete a macro, @code{DEFINE name DELETE} deletes a variable.