如何将 Atom 的脚本设置为 运行 Python 3.x 脚本?与 Windows 7 Pro x64 的组合可能是问题所在吗?

How to setup Atom's script to run Python 3.x scripts? May the combination with Windows 7 Pro x64 be the issue?

我正在尝试从 Notepad++ 切换到 Atom,但我无法设法让我的脚本在 Atom 中执行。

我关注了 this answer(所以我已经安装了 script),这并不是很广泛,网络上的其他内容也没有为初学者提供任何可以理解的内容。

我曾经在 Notepad++ NPPexec 中

NPP_SAVE
cd "$(FULL_CURRENT_PATH)"
C:\Python34\python.exe -u "$(FULL_CURRENT_PATH)"

在 Sublime Text 2 中,我通过创建一个新的 "Build System":

实现了 运行
{
    "cmd": ["C:\python34\python.exe", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python"
}

你能指导我如何设置 Atom 以便能够使用 Python 3.4 脚本和键盘快捷键执行 Python 脚本吗?


我已经尝试将我的初始化脚本设置为:

process.env.path = ["C:\Python34\python.exe",process.env.PATH].join(";")

分别

process.env.path = ["C:\Python34",process.env.PATH].join(";")

没有成功。


当我转到 Packages -> Script -> Configure Script 并输入

C:\Python34\python.exe

有效。但这不是长久之计。


当我按 Ctrl+Shift+B 到 运行 脚本时,之前没有配置它(因为它应该工作),我得到(建议ig0774 的评论已实施):

(C:\Python34还是C:\Python34\都无所谓)

它抱怨 python 不在我的路径中 - 但它在我的路径中。


我多次阅读 Windows 7/8 64 位和 Python 3.x 可能会导致某些软件包出现问题。 愿此这也是这种情况的原因吗?我有 Windows 7 Pro x64。


更新

因为我已经切换到 VSCode 并且可能会留在那里,所以我 willing/don 没有时间尝试所有的答案,所以我让社区来判断答案并始终接受最高票数。如果它不再正确,请 ping 我。

在 Atom 中设置 PATH 无效,使用 cmd 设置它,via

set PATH=%PATH%;C:\Python34

都没有,在Windows7系统属性中设置也失败了。


然而 重新安装 Python 3.4 并检查 将 python.exe 添加到路径

似乎是必要的。我还需要 完全卸载 Atom(包括所有软件包或至少 script)并从头开始重新安装它。

完成所有这些步骤后:

  • 安装 Python 添加到路径
  • 安装 Atom
  • 安装脚本包

开箱即用 (Ctrl+Shift+B),无需其他步骤。


我仍然不知道之前的原因是什么,我不知道这些步骤中的哪些是真正需要的。所以请随意包含您的程序而无需重新安装所有内容.


更新

重新安装一切当然没有必要,只需updating/repairing使用安装程序安装就足够了。

和你一样的问题。 'Packages -> Script -> Configure Script' 不是永久的。所以我尝试了另一个脚本运行程序:https://atom.io/packages/atom-runner,只是发现问题出在 python 脚本本身。

当我使用 atom-runner 时,我收到如下错误消息: atom-runner error

所以它提醒我在 python 脚本的开头:' #!/usr/bin/env python3 '

很明显这里的ENV_PATH是错误的。我应该在我的 python 脚本中修改它。

使用脚本运行程序https://atom.io/packages/script-runner/

"N.B。目前正在审查这些键盘快捷键,欢迎输入。 命令 Mac OS X Linux/Windows 运行: 脚本 ctrl-x alt-x 运行: 终止 ctrl-c alt-c 并且 "Run Terminate" (Alt + c) 在您的系统中使用当前的 python。

对于 Linux 和 Mac,在脚本中添加环境将选择正确的 python 版本。 (命令 + I 到 运行)

for 运行 python3

#!/usr/bin/env python3

这可以通过编辑 /home/.atom/packages/script/lib/grammars.coffee 文件轻松解决(请注意,atom 文件夹是隐藏的,因此您可能需要按 ctrl+ H 查看隐藏的文件和文件夹)

grammars.coffee 中找到:

  Python:
    "Selection Based":
      command: "python"
      args: (context)  -> ['-u', '-c', context.getCode()]
    "File Based":
      command: "python"
      args: (context) -> ['-u', context.filepath]

并替换为:

  Python:
    "Selection Based":
      command: "python3"
      args: (context)  -> ['-u', '-c', context.getCode()]
    "File Based":
      command: "python3"
      args: (context) -> ['-u', context.filepath]

保存更改,重新启动 Atom 并享受 运行 您的脚本 python 3

编辑:在 Windows 我相信 grammars.coffee 文件位于 C:/Users/Your_Username/AppData/Local/atom/packages 同样,AppData 文件夹是隐藏的,因此您可能需要更改设置才能查看隐藏的文件和文件夹。

按照 Matt Nona 的建议,当 Atom 启动时-> 欢迎指南(或 control+shift+T)-> 5th one down 'Hack on the Init Script'。将打开一个空白页面,您可以在其中添加修改。

扩展@matt-nona 的回答。您可以直接从 Atom 转到他提到的配置文件。只需转到设置,然后 "Open Config Folder":

然后 /packages/script/lib/grammars.coffee 找到 "Python" 并进行适当的更改 python3:

更新:对于寻找这个答案的任何其他灵魂 - 在我的 Mac 我的原子脚本配置文件中没有 grammars.coffee 文件。

相反,有一个语法文件夹,我在里面有一个 python.coffee 文件。屏幕截图中概述的相同更改(即在 python 的两次提及的末尾添加“3”)解决了我的问题,并且 atom 现在自动运行 Python3。

不确定以上答案是否 Windows 具体或者自 2017 年以来是否有开发变化。

编辑您的 python.coffee 脚本

$ sudo nano .atom/packages/script/lib/grammars/python.coffee