2016-02-09 2 views
0

У меня есть Emacs, работающий через Cygwin istall. В Emacs я установил (через package-install) powershell пакет; Однако, когда я бегу M-x powershell я получаю следующее сообщение об ошибке:Настройка пути к консоли PowerShell в Cygwin Emacs

Searching for program: no such file or directory, c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe

Проблема здесь состоит в том, что вместо того, чтобы c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe путь к PowerShell.exe должен быть /cygdrive/c/windows/system32/WindowsPowerShell/v1.0/powershell.exe

Мой вопрос: как я могу настроить пакет powershell указать на правильный путь?

ответ

2

Вы можете установить переменную powershell-location-of-exe, либо непосредственно с setq в файле .emacs:

(setq powershell-location-of-exe "/cygdrive/c/windows/system32/WindowsPowerShell/v1.0/powershell.exe") 

или через M-x customize-option.

+0

Работал как шарм. – RePierre

2

Вот как я это делаю. Он обрабатывает различные префиксы Cygwin привода (я мина устанавливается в/в/и т.д./Fstab):

(when (eq system-type 'cygwin) 
    (setq powershell-location-of-exe 
     (s-trim (shell-command-to-string "which powershell.exe")))) 

s-trim от библиотеки s.el, которая доступна на ELPA, вам нужно будет добавить (require 's) в верхней ваших .emacs, если у вас его еще нет. Это необходимо, потому что which, кажется, возвращает строку с завершающей новой строкой, хотя, вероятно, есть встроенная функция Emacs, чтобы избавиться от нее, я не знаю ее :-(

Смежные вопросы