+(define-derived-mode life-mode special-mode "Life"
+ "Major mode for the buffer of `life'."
+ (setq-local case-fold-search nil)
+ (setq-local truncate-lines t)
+ (setq-local show-trailing-whitespace nil)
+ (setq-local life-current-generation 0)
+ (setq-local life-generation-string "0")
+ (setq-local mode-line-buffer-identification '("Life: generation "
+ life-generation-string))
+ (setq-local fill-column (1- (window-width)))
+ (setq-local life-window-start 1)
+ (buffer-disable-undo))