     'irony-completion-at-point-async))
 (add-hook 'irony-mode-hook 'my-irony-mode-hook)
 (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options)
-;; end configure irony mode ==============================================
+
+;enable company mode
+(require 'company)
+(add-hook 'after-init-hook 'global-company-mode)
 
 ; semantic refactoring
 (require 'srefactor)

(add-hook 'c-mode-hook 'irony-mode)
(add-hook 'objc-mode-hook 'irony-mode)
(eval-after-load 'company  '(add-to-list 'company-backends 'company-irony))


;; replace the `completion-at-point' and `complete-symbol' bindings in
;; irony-mode's buffers by irony-mode's function



;; folding
(add-hook 'prog-mode-hook #'hs-minor-mode)

(require 'vimish-fold)
;(vimish-fold-global-mode 1)

(require 'evil-vimish-fold)
(evil-vimish-fold-mode 1)

; enable hideshow minor mode in all programming modes
(setq evil-fold-list (remove-if (lambda (e) (eq (caar e) 'hs-minor-mode)) evil-fold-list))
(add-to-list 'evil-fold-list '((hs-minor-mode) ...)) 



(require 'evil-matchit)
(global-evil-matchit-mode 1)

(require 'clang-format)
(global-set-key [C-M-tab] 'clang-format-region)
