anchor.diff:  	    (chain sel (remove-all-ranges)))))
   
       (defun select-contents (ev elem)
  -      (console.log "Selecting!" ev elem)
         (unless (@ ev shift-key)
   	(clear-selection))
         (let ((r (new (-range))))
  
positive.code:       (when result ;; yes, seriously. New cells don't have these
  	(who-ps-html
  	 (:pre
  	  (+ (if (@ result :stdout) (who-ps-html (:p :class "stdout" (@ result :stdout))) "")
  	     (join (loop for form-res in (@ result :result)
  		      append (who-ps-html
  			      (:ul :class "result"
  				   (join (loop for (tp val) in form-res
  					    if (= tp :error) collect (who-ps-html (:li :class "error" (error-template val)))
  					    else collect (who-ps-html (:li :onclick "selectContents(event, this)"
  									   (:span :class "value" (escape val))
  									   (:span :class "type" " :: " tp))))))))))))))
  
      (defun cell-controls-template (cell)
        (who-ps-html
  
negative.code: 		 #'notebook!))
  
      (defun change-cell-type (cell-id new-type)
        (post/json "/notebook/change-cell-type" (create :book (notebook-name *notebook*) :cell-id cell-id :new-type new-type)
  		 #'notebook!))
  
  