The following tab indented lines will cause a true vi with modelines activated to infinitely loop putting "Hello World" in the buffer. Hit to abort the loop and see the output. None of the vi clones support modelines this powerful, and modelines are disabled by default. Set the environment variable EXINIT to "set ml" to activate modelines. vi: $ y a : vi: $-1y b : vi: @b : put a |@b Hello World Whitespace is largely insignificant, but these must be the last five lines in the file to work properly. Unless it is in "vi: ... :" or "ex: ... :" format, any preceeding text will be ignored.