python - 'lessc' 不是内部或外部命令,也不是可运行的程序 或批处理文件

标签 python css sublimetext3

我一直在使用 Sublime Text 3 在工作中编译 .less css,但我无法让它在我的本地机器上工作。我认为它与 lessc 的路径变量有关,但我无法弄清楚如何找到我需要添加到我的路径变量以使其工作的路径变量。有人可以帮忙吗?

我正在使用带有 Sublime Text 3 的 Windows 7。

这里是错误:

Writing file /C/xampp/htdocs/project/sites/project.localhost/themes/project/less/home.less with encoding UTF-8 (atomic)
[less2css] Converting C:\xampp\htdocs\project\sites\project.localhost\themes\project\less\home.less to C:\xampp\htdocs\project\sites\project.localhost\themes\project\css\home.css
error: less2css error: [WinError 2] The system cannot find the file specified
Traceback (most recent call last):
  File "C:\Program Files\Sublime Text 3\sublime_plugin.py", line 549, in run_
    return self.run(edit)
  File "less2css in C:\Users\myMachine\AppData\Roaming\Sublime Text 3\Installed Packages\Less2Css.sublime-package", line 48, in run
  File "less2css in C:\Users\myMachine\AppData\Roaming\Sublime Text 3\Installed Packages\Less2Css.sublime-package", line 15, in __init__
  File "less2css in C:\Users\myMachine\AppData\Roaming\Sublime Text 3\Installed Packages\Less2Css.sublime-package", line 29, in show
  File "C:\Program Files\Sublime Text 3\sublime.py", line 86, in error_message
    sublime_api.error_message(msg)
TypeError: String required
Running l e s s c   " . / m a i n . l e s s "   " . . / c s s / m a i n . c s s "     - - s o u r c e - m a p   - - n o - c o l o r  

最佳答案

这是一个很好的问题,因为 lessc 路径在很多方面都与 Windows 上的正常安装路径不同。我能够确认确实需要将 lessc 添加到名为 PATH 的 Windows 环境变量中,以便 sublime-less2css 正常工作,这直接来自 sublime-less2css 模块的维护者:https://github.com/timdouglas/sublime-less2css

  1. 打开控制面板
  2. 在控制面板搜索栏中键入“env”以显示“编辑系统环境变量”选项(选择此选项,然后告诉“用户帐户控制”对话框“继续”)
  3. 点击“环境变量”按钮
  4. 转到“系统变量”部分 --> 在显示 PATH 的行上单击一次 --> 单击“编辑”
  5. 将以下内容添加到出现的窗口中的字符串末尾:

     ;C:\Users\{add_your_Windows_username_here}\AppData\Roaming\npm
    

因为我的 Windows 用户名是 cknoettg,所以我看起来像这样:

     ;C:\Users\cknoettg\AppData\Roaming\npm

最后点击OK --> OK --> OK

现在,重试该程序。

重要条件:要使此解决方案起作用,您必须使用 npm(Node.js 程序包管理器)在 Windows 机器上安装 less。 (你可以在这里得到:http://nodejs.org/)

如果您使用不同的方法安装 lessc,添加到环境变量的确切路径将与我建议的不同。假设您将“lessc”直接安装在名为“C:\less\bin”的文件夹中。在这种情况下,您将添加:

    ;C:\less\bin

到您的环境变量 PATH。

此外:我在错误消息中注意到您发布了以下行:

    less2css in C:\Users\myMachine\AppData\Roaming\Sublime Text 3\Installed Packages\Less2Css.sublime-package

您的 Python 文件可能被硬编码为路径 C:\Users\myMachine\AppData\Roaming\Sublime Text 3\Installed Packages\Less2Css.sublime-package。如果是这种情况,您的 lessc 程序可能在路径中:C:\Users{insert_your_Windows_username_here}\AppData\Roaming\Sublime Text 3\Installed Packages\。

如果这是真的,那么您不仅需要修改 Windows 环境变量 PATH:

    ;C:\Users\{insert_your_Windows_username_here}\AppData\Roaming\Sublime Text 3\Installed Packages\

您还必须手动编辑您的 Python 文件,方法是将文本“myMachine”替换为您当前所在计算机上的当前 Windows 用户名。您甚至可以尝试在不更改 Windows 环境变量的情况下直接对 Python 代码进行编辑,但这可能会也可能不会。

要查看无需编辑环境变量即可运行程序的方法,您可以在此处查看(尽管出于各种原因我不推荐它,其中最重要的是每次运行时都会涉及额外的输入脚本):How to install and run lessc on top of node.js and Windows?

祝你好运!

关于python - 'lessc' 不是内部或外部命令,也不是可运行的程序 或批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23122849/

相关文章:

python - 从 Python 2.7 中的 args/kwargs 和函数签名填充默认缺失/参数

javascript - 在导航元素上显示 Div 单击并隐藏其他 Div

editor - 崇高文本 3 : Find my cursor after scrolling?

sublimetext2 - 在Sublime Text中换行后将缩进与括号对齐

Python:计算树的节点数

python - 在图像上叠加 matplotlib quiver

python - 在 r 中使用 igraph 导出图形

html - CSS 显示属性

CSS:如何覆盖(取消设置)之前设置的最大宽度属性值

sublimetext - 如何在 Sublime Text 3 中编辑片段?