Скрипт AutoHotKey заменяет обратную косую черту на прямую.

342
msoutopico

Я запускаю эмулятор Linux (или подсистему) под Windows 10, и иногда мне нужно пройти пути Windows в консоли Linux. Пути Windows используют обратную косую черту \ для разделения каталогов, тогда как пути Linux используют вместо нее прямую косую черту /.

Чтобы избежать замены \ на / вручную, я попытался использовать скрипт AHK для замены любого пути, который я копирую, но он не хочет работать.

Это мой сценарий (я отметил в коде ##works until here##самую дальнюю точку, где, кажется, он работает):

^+7:: ; Ctrl+Shift+7 (/)  ;Empty the Clipboard. Clipboard = ;Copy the select text to the Clipboard. SendInput, ^c ;Wait for the Clipboard to fill. ClipWait  ;Perform the RegEx find and replace operation, ;where the needle is what we want to replace. haystack := Clipboard needle := "\" replacement := "/" result := RegExReplace(haystack, needle, replacement)  ;Empty the Clipboard Clipboard = ;Copy the result to the Clipboard. Clipboard := result ;##works until here## ;Wait for the Clipboard to fill. ClipWait   ;-- Optional: -- ;Send (paste) the contents of the new Clipboard. SendInput, %Clipboard%  ;Done! return 

Заранее спасибо за любые советы.

0

1 ответ на вопрос

0
msoutopico

Кажется, что для распознавания RegExReplace необходимо экранировать обратную косую черту, например:

needle := "\\"