【问题标题】:sublime text 3 package control installsublime text 3 包控制安装
【发布时间】:2017-04-18 15:28:08
【问题描述】:

我在安装sublime text 3的包控制时因为代理设置的问题,但我需要安装一个插件。当我在控制台中执行 getproxy 时,它会返回 {} 并且当我尝试在控制台中使用 python 设置代理时,使用

urllib.set_proxy('http://user:password@server:port', 'http')

我用它们的值替换了用户、密码、服务器和端口,但它返回了我

Traceback (most recent call last):
File "<string>", line 1, in <module>
AttributeError: 'module' object has no attribute 'set_proxy'

我该怎么做才能让它发挥作用?我需要安装一个插件。

【问题讨论】:

    标签: sublimetext3 sublime-text-plugin package-control


    【解决方案1】:

    设置包控制以在代理服务器后面工作

    您需要在Package Control 设置中设置您的代理服务器。

    将下面的代码复制并粘贴到一个名为Package Control.sublime-settings 的文件中,该文件必须保存在您的User 配置文件夹中。这与保存 USER Preferences.sublime-settings 文件的文件夹相同。The Data Directory 说明它在您的操作系统上的位置。即

    • Windows:%APPDATA%\Sublime Text 3\Packages\User\Package Control.sublime-settings
    • OS X:~/Library/Application Support/Sublime Text 3/Packages/User/Package Control.sublime-settings
    • Linux:~/.config/sublime-text-3/Packages/User/Package Control.sublime-settings

    显然,您必须在下面的相关字段中添加域和端口以及您的用户名和密码。代理应采用以下形式:proxyserver:port。例如

    {
        "http_proxy": "server.com:80",
        "https_proxy": "server.com:8080",
        "proxy_username": "mynameis",
        "proxy_password": "mypassis",
    }
    

    另见:Package Control Settings

    {
        // An HTTP proxy server to use for requests. Not normally used on Windows
        // since the system proxy configuration is utilized via WinINet. However,
        // if WinINet is not working properly, this will be used by the Urllib
        // downloader, which acts as a fallback.
        "http_proxy": "",
    
        // An HTTPS proxy server to use for requests - this will inherit from
        // http_proxy if it is set to "" or null and http_proxy has a value. You
        // can set this to false to prevent inheriting from http_proxy. Not
        // normally used on Windows since the system proxy configuration is
        // utilized via WinINet. However, if WinINet is not working properly, this
        // will be used by the Urllib downloader, which acts as a fallback.
        "https_proxy": "",
    
        // Username and password for both http_proxy and https_proxy. May be used
        // with WinINet to set credentials for system-level proxy config.
        "proxy_username": "",
        "proxy_password": "",
    }
    

    【讨论】:

    • 知道我们是否可以配置代理网址(“自动配置脚本”?
    • @Mugen 我不确定,我认为代理 url 只是在网络浏览器中使用,但我可能错了。如果没有运气在这里找到,请尝试在 Sublime Text 网站上的 Technical Support forum 上发帖。
    【解决方案2】:

    您可以简单地在 Sublime 3 控制台中运行以下命令(使用 CTRL+`View -&gt; Show Console 启动控制台)

    import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler({'http': 'http://USER:PASSWORD@HOST:PORT', 'https': 'https://USER:PASSWORD@HOST:PORT'})) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())
    

    在上面的代码中,您需要根据您的代理详细信息替换 httphttps 键的值(USER:PASSWORD@HOST:PORT

    然后点击Enter,它将使用提供的代理安装Package Control

    【讨论】:

    • sublime.wbond.net 域是什么?看起来很可疑。
    【解决方案3】:

    我也遇到了同样的问题,我无法下载 Sublime Text 3 的包。我在运行时设置了代理服务器,如下所示在 Sublime 控制台(Mac 快捷键 Ctrl + `)中的 sn-p 并且它工作对我来说。

    import os
    proxy_server = 'http://username:password@proxy_server_name:port'
    os.environ['http_proxy'] = proxy_server
    os.environ['HTTP_PROXY'] = proxy_server
    os.environ['https_proxy'] = proxy_server
    os.environ['HTTPS_PROXY'] = proxy_server
    os.environ['all_proxy'] = proxy_server
    os.environ['ALL_PROXY'] = proxy_server
    os.environ['ftp_proxy'] = proxy_server
    os.environ['FTP_PROXY'] = proxy_server
    

    【讨论】:

      【解决方案4】:

      socks5 代理设置:

      菜单栏:Preferences &gt; Package Settings &gt; Package Control &gt; Settings

      注意:curl 下载器后端支持socks5

      {
          
          "downloader_precedence": {
              "linux": ["curl"]
          },
          "http_proxy": "socks5://127.0.0.1:1080",
          "proxy_password": "",
          "proxy_username": "",
      ...
      
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-03-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多