 
 ;;;;
 
+(autoload 'zap-up-to-char "misc" "Kill up to, but not including ARGth occurrence of CHAR.
+
+  \(fn arg char)"
+  'interactive)
+
+(bind-key "M-z" 'zap-up-to-char)
+
 (defun td/next-ten-visual-line ()
   "TODO: docs."
   (interactive)

  (setq recentf-max-saved-items 64
        recentf-auto-cleanup 'never))

;;; Still thinking about this
;; (use-package isearch
;;   :bind (([remap isearch-forward] . isearch-forward-regexp)
;;          ([remap isearch-backward] . isearch-backward-regexp))
;;   :config
;;   (progn
;;     (setq lazy-highlight-initial-delay 0)
;;     (isearch-character-fold-mode t)))

(setq lazy-highlight-initial-delay 0
      search-default-mode 'character-fold-to-regexp
      replace-character-fold t)

(use-package nlinum
  :defer t
  :ensure t
  :init (add-hook 'prog-mode-hook 'nlinum-mode)
  :config
  (progn
    (setq nlinum-format " %4d")

    (defun td/setup-linum-face ()
      (interactive)
      (set-face-attribute 'linum nil :height 110))

    (add-hook 'nlinum-mode-hook #'td/setup-linum-face)))

(use-package exec-path-from-shell
  :ensure t

(use-package ace-jump-mode
  :ensure t
  :defer t
  :bind (("C-c SPC" . ace-jump-mode)
         ("C-c C-SPC" . ace-jump-mode)))

(use-package projectile
  :ensure t
