   (interactive "p")
   (if (shm-in-comment)
       (self-insert-command n)
-   (let* ((current-pair (shm-current-node-pair))
-          (current (cdr current-pair))
-          (parent-pair (shm-node-parent current-pair))
-          (parent (cdr parent-pair)))
-     (cond
-      ;; When inside a list, indent to the list's position with an
-      ;; auto-inserted comma.
-      ((eq 'List (shm-node-cons parent))
-       (insert ",")
-       (shm-set-node-overlay parent-pair))
-      (t
-       (insert ",")
-       (shm-set-node-overlay parent-pair))))))
+    (let* ((current-pair (shm-current-node-pair))
+           (current (cdr current-pair))
+           (parent-pair (shm-node-parent current-pair))
+           (parent (cdr parent-pair)))
+      (cond
+       ;; When inside a list, indent to the list's position with an
+       ;; auto-inserted comma.
+       ((eq 'List (shm-node-cons parent))
+        (insert ",")
+        (shm-set-node-overlay parent-pair))
+       (t
+        (insert ",")
+        (shm-set-node-overlay parent-pair))))))
 
 (defun shm/single-quote ()
   "Delimit single quotes."

                  maybe-parent-parent-pair
                  (string= (shm-node-type-name actual-parent)
                           (shm-node-type-name maybe-parent-parent))
                  (or (eq (shm-node-cons actual-parent) 'App)
                      (eq (shm-node-cons actual-parent) 'InfixApp))
                  (eq (shm-node-cons actual-parent)
                      (shm-node-cons maybe-parent-parent)))
             (shm-node-parent actual-parent-pair))

   (unless (or (shm-in-comment)
               (shm-in-string))
     (when (looking-back "[a-zA-Z0-9]+_*")
       (shm-insert-string " "))
     (when (looking-at "[a-zA-Z0-9]+_*")
       (shm-insert-string " ")
       (forward-char -1)))
   (shm-insert-indented #'clipboard-yank)))

(defun shm/yank-pop ()
