   (setup-ido)
   (setup-hippie)
   (setup-swoop)
+  (setup-expand-region)
   (setup-misc-modes)
+  (setup-smex)
+  (setup-corral)
+  (setup-anzu)
+  (setup-notes-taking)
+  (setup-smartwin)
   (set-theme)
   (set-keys)
   (mode-hooks)

  (add-hook 'objc-mode-hook 'my-default-mode-hook)
  (add-hook 'web-mode-hook  'my-web-mode-hook)
  (add-hook 'compilation-finish-functions 'my-shorten-filenames-in-compilation)
  )




  ;; Automatically load utop.el
  (autoload 'utop "utop" "Toplevel for OCaml" t)

                                        ; typical error - File "graph.ml", line 46, characters 38-41:

                                        ;  (add-to-list 'compilation-error-regexp-alist 'corebuild)
                                        ;  (add-to-list 'compilation-error-regexp-alist-alist
                                        ;               '(corebuild "File \"\\(.+?\\)\", line \\([0-9]+\\), characters \\([0-9]+\\)"

                                        ;                       1 2 3))
  ;; merlin
  (autoload 'merlin-mode "merlin" "Merlin mode" t)
  (setq merlin-command "/Users/shmul/.opam/4.01.0/bin/ocamlmerlin")
  (add-hook 'tuareg-mode-hook 'merlin-mode)
  (add-hook 'caml-mode-hook 'merlin-mode)
  (setq merlin-use-auto-complete-mode 'easy)
  ;; Use opam switch to lookup ocamlmerlin binary
                                        ;(setq merlin-command 'opam)
  )

(defun set-theme ()
