在windows(emacs)中使用org-screenshot.el

在windows(emacs)中使用org-screenshot.el,emacs,lisp,elisp,org-mode,Emacs,Lisp,Elisp,Org Mode,我正在windows上使用ergoemacs(emacs)。我想使用OrgScreenshot(org screenshot.el)来捕获截图。我使用了cygwin mount来使用cygwin。很遗憾,“导入%f”不起作用。我相信它只有在x-server打开时才能工作。如果我错了,请告诉我:)。无论如何,我正在尝试使用一个windows工具,它接受文件路径作为参数来捕获屏幕截图。但问题是emacs用“/”斜杠传递文件路径,但该工具需要“\”。我在下面的代码(来自org screenshot.e

我正在windows上使用ergoemacs(emacs)。我想使用OrgScreenshot(org screenshot.el)来捕获截图。我使用了cygwin mount来使用cygwin。很遗憾,“导入%f”不起作用。我相信它只有在x-server打开时才能工作。如果我错了,请告诉我:)。无论如何,我正在尝试使用一个windows工具,它接受文件路径作为参数来捕获屏幕截图。但问题是emacs用“/”斜杠传递文件路径,但该工具需要“\”。我在下面的代码(来自org screenshot.el的代码)中尝试在调用过程之前使用(替换字符串“/“\”args中的regexp),但它不起作用。有什么建议吗?如果你需要更多的信息,请告诉我

 (let* ((arglst (split-string org-screenshot-command-line " "))
         (cmd (car arglst))
         (scrpath (convert-standard-filename  (expand-file-name scrfilename)))
         (args (mapcar (lambda (x) (replace-regexp-in-string "%f" scrpath x))
                   (cdr arglst))))         
        (setq status (apply 'call-process cmd nil nil nil args))
        (unless prfx (make-frame-visible))
        (unless (equal status 0)
          (error "screenshot command exited with status %d: %s" status
             (mapconcat 'identity (cons cmd args) " ")) )
        (message "wrote screenshot to %s" scrpath))
      (org-display-inline-images nil t)))

通过创建一个批处理文件来解决此问题,该批处理文件将/替换为\然后调用所需的程序。