;;; oni-windows-nt.el --- Windows-specific configuration -*- lexical-binding: t; -*- ;; Copyright (C) 2018 Tom Willemse ;; Author: Tom Willemse ;; Keywords: local ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; Any settings that only apply when working on a Windows machine. ;;; Code: (eval-when-compile (require 'find-dired) (require 'ivy) (require 'grep)) (defun oni-windows-nt--disable-ivy (orig-fun &rest args) "Disable ivy while running ORIG-FUN with ARGS." (let ((ivy-enabled ivy-mode)) (unwind-protect (progn (when ivy-enabled (ivy-mode -1)) (apply orig-fun args)) (when ivy-enabled (ivy-mode 1))))) (add-to-list 'load-path (locate-user-emacs-file "vendor/p4-vc")) (add-to-list 'exec-path "c:/Program Files/Git/bin") (add-to-list 'exec-path "C:/Program Files/Git/usr/bin") (add-to-list 'exec-path "c:/cygwin64/bin") (setq find-program (shell-quote-argument "c:/cygwin64/bin/find.exe")) (setq grep-program (shell-quote-argument "c:/cygwin64/bin/grep.exe")) (setq grep-use-null-device nil) (let ((exe (shell-quote-argument "c:/cygwin64/bin/ls.exe"))) (setq find-ls-option (cons (concat "-exec " exe " -ld {} \";\"") "-ld"))) (with-eval-after-load 'grep (add-function :around (symbol-function 'grep-read-files) #'oni-windows-nt--disable-ivy)) (provide 'oni-windows-nt) ;;; oni-windows-nt.el ends here