    ((js2r--does-not-need-semi) "")
    (:else ";")))
 
-(js2r--setup-wrapping-pair "(" ")" 'js2r--needs-semi)
-(js2r--setup-wrapping-pair "{" "}" 'js2r--needs-semi)
-(js2r--setup-wrapping-pair "[" "]" 'eolp)
-(js2r--setup-wrapping-pair "\"" "\"" 'eolp)
-(js2r--setup-wrapping-pair "'" "'" 'eolp)
+(js2r--setup-wrapping-pair "(" ")")
+(js2r--setup-wrapping-pair "{" "}")
+(js2r--setup-wrapping-pair "[" "]")
+(js2r--setup-wrapping-pair "\"" "\"")
+(js2r--setup-wrapping-pair "'" "'")
 
 ;;
 

         (forward-char)
       (funcall 'self-insert-command 1))))

(defun js2r--self-insert-wrapping (open close semicolonp)
  (cond
   ((use-region-p)
    (save-excursion


;; Set up wrapping of pairs, with the possiblity of semicolons thrown into the mix

(defun js2r--setup-wrapping-pair (open close)
  (define-key js2-mode-map (kbd open) (λ (js2r--self-insert-wrapping open close)))
  (unless (s-equals? open close)
    (define-key js2-mode-map (kbd close) (λ (js2r--self-insert-closing open close)))))

