anchor.diff:      (otherwise (syntax-error))))
   
   (defun ex-write-quit (range filename force)
  -  (ex-write range filename)
  +  (ex-write range filename touch)
     (lem-vi-mode.commands:vi-quit force))
   
   (define-ex-command "^e$" (range filename)
  
positive.code:                 #:with-jump-motion))
  (in-package :lem-vi-mode.ex-command)
  
  (defun ex-write (range filename)
    (case (length range)
      (0 (if (string= filename "")
             (lem:save-buffer)
             (lem:write-file filename)))
      (2 (lem:write-region-file (first range) (second range)
                                (if (string= filename "")
  
negative.code:   (lem:exit-lem nil))
  
  (define-ex-command "^wqa$" (range filename)
    (ex-write range filename nil)
    (lem:exit-lem t))
  
  (define-ex-command "^wqa!$" (range filename)
    (ex-write range filename nil)
    (lem:exit-lem nil))
  
  (define-ex-command "^(x|xit)$" (range filename)
    (ex-write-quit range filename nil nil))
  
  (define-ex-command "^(x|xit)!$" (range filename)
    (ex-write-quit range filename t nil))
  
  (define-ex-command "^(sp|split)$" (range filename)
    (declare (ignore range))
  