我如何从Pycharm Virtualenv中使Lilypond可召唤



我正在尝试在Pycharm中使用Abjad和Lilypond为学校项目创造音乐。但是,在安装了Abjad和Lilypond之后,我似乎无法让Abjad与Lilypond合作。

我已经尝试按照Lilypond网站上的说明进行了尝试。我读了一些有关配置运行配置的信息,但似乎无法使其正常工作。我不知道如何在pycharm中添加Virtualenv的路径。

我在运行一些示例代码时,我只是在运行窗口中"/bin/sh:lilypond:找不到命令"。

notes = [abjad.Note("ds'16"), abjad.Note("cs'16"), abjad.Note("e'16"), abjad.Note("c'16")]  
container = abjad.Container(notes)  
abjad.show(container)

编辑1:我尝试添加/lilypond.app/contents/resources/bin/lilypond在我的项目解释器中的解释器路径中仍然没有成功。

编辑2:这就是我的解释器路径的样子:https://i.stack.imgur.com/ec1e0.jpg

您遇到的第一个问题是,从开箱即用,Macos Lilypond App不会以其他应用程序易于访问的方式揭示其基础命令行工具。第二部分是,即使您解决了此问题,也不是很明显如何将修复程序进入Pycharm。幸运的是,这两个问题都可以解决。

首先,解释错误。错误:

/bin/sh: lilypond: command not found

表示Shell脚本正在尝试运行lilypond,而没有指定工具的任何特定位置。MACOS将在这种情况下查看您的PATH环境变量以尝试找到它。

第二,要纠正错误的路径:不要为此使用解释器路径。唯一的用途是告诉Pycharm Python口译员居住的地方;您无法使用它来通知Lilypond居住的Abjad。对于后一个任务,PATH将是您最好的选择。

有几种方法可以解决此问题,但是要点是:您需要使用包含该工具的一些目录更新PATH - 但是您还需要以Pycharm启动的脚本拾取更新的脚本来更新它PATH

通常,我在~/.bash_profile中进行PATH黑客攻击,因为Bash是MacOS中的默认外壳,并且每次启动终端时,此"脚本"都会加载(至少对于最近版本的OS X/MacOS(。在此脚本中,添加一个看起来像这样的行(先做脚本的备份!(:

export PATH="$PATH:/Applications/LilyPond.app/Contents/Resources/bin/"

并保存您的更改。执行此操作后,如果您启动了一个新的终端窗口,则应该可以运行lilypond并查看Lilypond使用。

设置该设置后,我相信您只需要退出和重新启动pycharm,它应该选择新的PATH。(如果失败,请尝试再次登录。(在我的PyCharm版本中,我检查PATH是否可以通过转到首选项,找到"构建,执行,部署> Console> Console> Python console",寻找文本,寻找文本字段称为"环境变量"(其中PATH是一个(,单击文本字段右侧的" ..."按钮以查看详细信息,确保选中"包含父环境变量",然后单击单击该复选框旁边的一个"显示"链接,以使Pycharm弹出一个对话框,其中所有环境变量在运行Python控制台操作时都会通过。PATH应在此处列出,您的Lilypond路径应包含在其价值中。


我不认识您,但是我发现必须将MacOS应用程序的胆量直接放在我的PATH中,因此我会提到完整性的其他解决方案:

  • 使用符号链接使该工具出现在您的PATH中已经存在的目录中。使用终端,将cd到您想要的目录(我喜欢我的个人工具的~/bin,我创建了自己的目录并将其添加到PATH的目录很长时间AO(,并为Lilypond创建了一个符号链接:ln -s /Applications/LilyPond.app/Contents/Resources/bin/lilypond .
  • 您还可以使用Homebrew将Lilypond的纯命令行版本安装到/usr/local/bin中,这是我发现的工具,我发现在MacOS中将Unix应用程序争吵无价。据我所知,/usr/local/bin应该已经在您的PATH上(如果不是,那么添加它是一件好事!(。这种方法的问题 - 除了在您的机器上运行的多个Lilypond装置外,其版本的Lilypond倾向于稍微落后,这可能会导致Abjad on the Road的问题。(目前在2.18.2上,这是最新的稳定版本(。

相关内容

  • 没有找到相关文章

最新更新