    projectile-run-shell-command-in-root
    projectile-switch-project
    projectile-switch-to-buffer
-   projectile-vc)
+   projectile-vc
+   helm-projectile-on)
   :bind-keymap ("C-c p" . projectile-command-map)
   :config
-  (setq-default projectile-completion-system 'default
+  (setq-default projectile-completion-system 'helm
                 ;; Do not track known projects automatically, instead call projectile-add-known-project
                 projectile-track-known-projects-automatically nil)
   (projectile-mode)
+  (helm-projectile-on)
   ;; Remove dead projects when Emacs is idle
   (run-with-idle-timer 10 nil #'projectile-cleanup-known-projects)
   (setq
    ;; Custom compilation buffer name function
    compilation-buffer-name-function (lambda (mode) (concat "*" (downcase mode) ": " (projectile-project-name) "*"))
    projectile-find-dir-includes-top-level t
-   projectile-switch-project-action #'projectile-commander
+   ;; projectile-switch-project-action #'projectile-commander
    projectile-create-missing-test-files t
    projectile-mode-line '(:eval (format " Proj[%s]" (projectile-project-name))))
   (def-projectile-commander-method ?s

 '((shell . t)))

(setq org-confirm-babel-evaluate nil)

(unless (fboundp 'json-serialize)
  (error "**** you don't have a json-serialize built-in function ****"))

(use-package lsp-ui
  :after lsp-mode

    "Run `compile' in the project"
    (projectile-compile-project nil)))

(setq projectile-switch-project-action
      (lambda () (projectile-ibuffer nil)))

