   (semantic-mode 1)
   (bind-keys :map prog-mode-map
              ("<C-tab>" . company-complete)
-             ("C-." . counsel-semantic-or-imenu)))
+             ("C-." . helm-semantic-or-imenu)))
 
 (add-hook 'text-mode-hook 'auto-fill-mode)
 (add-hook 'text-mode-hook 'my-non-special-modes-setup)

(require 'dired)
(require 'dired-collapse)
(require 'dired-subtree)
(require 'ivy-dired-history)

(when *osx* (setq dired-use-ls-dired nil))



(setq python-shell-completion-native-enable nil)

(require 'helm)
(require 'helm-config)
(require 'helm-grep)
(helm-mode 1)
(setq helm-buffer-max-length 32
      helm-display-header-line nil
      helm-mode-fuzzy-match t
      helm-completion-in-region-fuzzy-match t
      helm-find-files-ignore-thing-at-point t)

(bind-keys :map helm-map
           ("<tab>" . helm-execute-persistent-action)
           ("TAB" . helm-execute-persistent-action)
           ("C-z" . helm-select-action))

(add-hook 'helm-grep-mode-hook 'grep-mode)
(setq helm-grep-ag-command "rg --color=always --smart-case --no-heading --line-number %s %s %s"
      helm-grep-save-buffer-name-no-confirm 1
      helm-grep-file-path-style 'relative)

(require 'projectile)
(setq projectile-enable-caching t)
(projectile-global-mode)
(setq projectile-completion-system 'helm)
(helm-projectile-on)

(setq projectile-tags-command "ctags-exuberant -Re -f \"%s\" %s \"%s\"")

