本文主要介紹Sublime Text如何開啟debug模式,分析使用過程中一些常見錯誤情形的解決方法。情形一:Package Control:There are no packages available for installation。情形二:Package Control:Unableto download Emmet.Please view the console for more details. Error while loading PyV8 binary:exit code 3 …情形三:無法打開Package Control或沒有安裝PackageControl。稍后簡單介紹一下前端開發常用的Package插件,最后會補充一些常用快捷鍵的作用等。
為了更准確的定位問題,建議插件在安裝前開啟控制台(快捷鍵Ctrl+~),同時在開啟debug模式,這樣可以在安裝過程中了解哪一步出了問題,然后有針對性的去解決問題。
一、開啟Debug模式
Debug模式開啟方法:將PackageControl.sublime-settings文件中的debug參數設為true,舉個例子,我的文件處於安裝目錄的這個位置:
D:\Program Files\Sublime Text 2\Data\Packages\PackageControl\ PackageControl.sublime-settings
更多參數的含義,參見官網https://packagecontrol.io/docs/settings
二、安裝錯誤情形
下面匯總了安裝過程中可能出現的一些常見問題:
情形一:Package Control:There are no packages available for installation
據StackOverflow上說是IPv6造成,如果我們的Intent服務提供者(ISP)不支持IPv6就會引發上述錯誤,原文如下:
This error is happened with IPv6 problem. If yourInternet Service Provider (ISP) does not support for IPv6 you got this error.
如果IPV6有問題,curl就會打印類似這樣的錯誤:
curl: (7) Failed to connect to xxxxx...
找到了問題原因,下面着手解決它。
第一步:取得sublime.wbond.net的IPv4地址。在命令提示符中輸入以下命令:
ping sublime.wbond.net
第二步:打開C:\Windows\system32\drivers\etc\hosts
文件,增加如下對應關系:{IPv4 address}sublime.wbond.net
保存文件,然后再打開Package Control(快捷鍵Ctrl+Shift+P)開始安裝即可。
情形二:Package Control:Unableto download Emmet.Please view the console for more details./Error while loading PyV8 binary:exit code 3…
類似這種插件無法下載的問題,一般是由於網速慢,或者目標域名被牆而無法正常訪問導致的。
這種情況下,首先檢查本地網絡是否可以訪問,檢測下載速度是不是特別慢,
如果網速太慢,換個時間再安裝。還有一個辦法是:到github或第三方網站手動下載安裝包,然后解壓到安裝目錄下的/Packages目錄下。
比如我的Emmet則需要解壓到D:\ProgramFiles\Sublime Text 2\Data\Packages\Emmet目錄下。
另外許多插件都依賴於Python的,在插件安裝開始時會去下載Python相關資源,
比如,Emmet安裝就會先下載你系統位數一致的Python版本,我們在debug窗口可以看到這些信息:
其中有兩條,表示下載失敗,原因一般是網速慢請求超時或被牆了。
Emmet: Loading PyV8 binary from https://raw.github.com/emmetio/pyv8-binaries/master/pyv8-win64.zip
Emmet.pyv8loader: Unable to download package from https://raw.github.com/emmetio/pyv8-binaries/master/pyv8-win64.zip Wrong URL error
同時,pyv8下載失敗會彈出一個提示框:
這時候,我們按照給出的zip包下載地址手動下載PyV8的安裝包(PyV8的項目地址為https://github.com/emmetio/pyv8-binaries#readme,可以根據系統種類選擇對應安裝包),下載成功后打開菜單Preferences – Browser Packages,然后解壓到子目錄PyV8內。比如我的對應目錄是D:\Program Files\Sublime Text2\Data\Packages\PyV8\win64(若你的是32位系統,最終目錄則為win32)。
大多數情況,PyV8安裝好了以后,再安裝需要的其他插件便可順利進行了。
情形三:無法調出Package Control或未安裝PackageControl
首次安裝或重新安裝的方式是一樣的,首先打開控制台(Ctrl+~),不過Sublime Text的版本不同,執行的命令是不一樣的。
對於Sublime Text2輸入以下命令執行:
- import urllib2,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
對於Sublime Text 3需要輸入如下的命令:
- import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
執行完后,Package Control安裝成功。此時便可以調出PackageControl命令輸入面板(Ctrl+Shift+P),輸入install
除了使用上述命令安裝法,還可手動安裝,需要的可訪問官網查看https://packagecontrol.io/installation#st3
三、 安裝官方原版
上面的問題解決了,但是想想這么強大的工具,這么多的問題,持懷疑態度。折騰了這么久再卸載了有點太可惜了。不過為了弄清楚問題根本,狠狠心,果斷卸載了我一直使用的Sublime Text 2 某破解優化版,其中已集成了JsFormat,Alignment,Emmet等這些常用的插件。卸載后去官網下載了官方版本http://www.sublimetext.com/2
並安裝完成。
這次安裝,先不要着急打開Sublime Text。為了以后安裝方便,決定不再使用系統默認的Packages安裝路徑C:\Users\Administrator\AppData\Roaming\Data,在Sublime Text2的安裝目錄下新建文件夾/Data,該文件夾創建完成后再打開Sublime Text程序,我們發現,Packages被安裝在了當前創建的文件夾下(我的路徑是D:\Program Files\Sublime Text 2\Data)。稍后把其他必備插件裝全了,我們備份一下Sublime Text 2文件夾,這樣以后走到哪都可以無須一步步重新安裝,快速部署我們的Sublime Text環境。
這次安裝了七八個插件,也沒有出現一次上述錯誤,說明官方版本還是比較靠譜比較穩定的。雖然每個月都會彈出付費注冊提示,不過不影響使用就這樣用吧。有潔癖的我建議你安裝Sublime Text 3,本人測試發現最新版這個破解版相對來說比國內流行的某v2版要穩定的多,不過支持ST3的插件目前相對少一些。
英文官方原版首次使用時,會有兩個依賴包升級提示:
或
點“確定關閉”即可,無須理會。
四、Sublime必備插件
補充幾個必備的開發插件,不了解作用的自行查找吧。
必備的:Alignment,JsFormat,CSSComb,CTags,DocBlockr,Emmet,FileDiffs,SASS,LESS,SASS Build,Lessc,Git,SublimeLinter
另外還有幾個不錯的,可以選擇使用:Terminal,Trimmer,ColorPicker,ConverToUTF8等。
五、補充知識
最后普及幾個需要了解的知識:
1.所裝的插件列表(有些不在里面)
D:\Program Files\Sublime Text2\Data\Packages\User\Package Control.sublime-settings
2. Package Control常用的命令InstallPackage (安裝擴展)、List Packages (列出全部擴展)、Remove Package (移除擴展)、Upgrade Package (升級擴展)
3.插件熱鍵沖突,可以自定義修改:Preferences > Package Settings > Alignment(或其他插件名) > Key Bindding - User然后寫入快捷鍵。(有些插件需要到安裝目錄下的配置文件修改)
4.有Package Control其他相關問題上,上github項目查找。
https://github.com/wbond/package_control/issues?q=is%3Aclosed
比如較常見的問題Package control fails to download new packages:
https://github.com/wbond/package_control/issues/736
5.列一下常用的快捷鍵:
Ctrl+D 選詞 (反復按快捷鍵,即可繼續向下同時選中下一個相同的文本進行同時編輯)
Ctrl+G 跳轉到相應的行
Ctrl+J 合並行(已選擇需要合並的多行時)
Ctrl+L 選擇整行(按住-繼續選擇下行)
Ctrl+M 光標移動至括號內開始或結束的位置
Ctrl+T 詞互換
Ctrl+U 軟撤銷
Ctrl+P 查找當前項目中的文件和快速搜索;輸入 @ 查找文件主標題/函數;或者輸入 : 跳轉到文件某行;
Ctrl+R 快速列出/跳轉到某個函數
Ctrl+K Backspace 從光標處刪除至行首
Ctrl+KB 開啟/關閉側邊欄
Ctrl+KK 從光標處刪除至行尾
Ctrl+KT 折疊屬性
Ctrl+KU 改為大寫
Ctrl+KL 改為小寫
Ctrl+K0 展開所有
Ctrl+Enter 插入行后(快速換行)
Ctrl+Tab 當前窗口中的標簽頁切換
Ctrl+Shift+A 選擇光標位置父標簽對兒
Ctrl+Shift+D 復制光標所在整行,插入在該行之前
ctrl+shift+F 在文件夾內查找,與普通編輯器不同的地方是sublime允許添加多個文件夾進行查找
Ctrl+Shift+K 刪除整行
Ctrl+Shift+L 鼠標選中多行(按下快捷鍵),即可同時編輯這些行
Ctrl+Shift+M 選擇括號內的內容(按住-繼續選擇父括號)
Ctrl+Shift+P 打開命令面板
Ctrl+Shift+/ 注釋已選擇內容
Ctrl+Shift+↑可以移動此行代碼,與上行互換
Ctrl+Shift+↓可以移動此行代碼,與下行互換
Ctrl+Shift+[ 折疊代碼
Ctrl+Shift+] 展開代碼
Ctrl+Shift+Enter 光標前插入行
Ctrl+PageDown 、Ctrl+PageUp 文件按開啟的前后順序切換
Ctrl+Z 撤銷
Ctrl+Y 恢復撤銷
Ctrl+F2 設置書簽
Ctrl+/ 注釋整行(如已選擇內容,同“Ctrl+Shift+/”效果)
Ctrl+鼠標左鍵 可以同時選擇要編輯的多處文本
Shift+鼠標右鍵(或使用鼠標中鍵)可以用鼠標進行豎向多行選擇
Shift+F2 上一個書簽
Shift+Tab 去除縮進
Alt+Shift+1~9(非小鍵盤)屏幕顯示相等數字的小窗口
Alt+. 閉合當前標簽
Alt+F3 選中文本按下快捷鍵,即可一次性選擇全部的相同文本進行同時編輯
Tab 縮進 自動完成
F2 下一個書簽
F9 行排序(按a-z)
F11 全屏模式
更多快捷鍵請參考這篇文章http://blog.csdn.net/fovwin/article/details/9102731
關於Sublime Text的問題就說這么多,基本上匯總了自己使用一年多遇到的各種問題吧。分享出來,希望能對大家有用。
本文來源於CSDN空間freshlover的博客《Sublime Text 無法使用Package Control或插件安裝失敗的解決方法》,轉載請注明出處,謝謝!