溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行SOAR IDE插件的安裝與使用

發(fā)布時間:2022-01-14 21:40:45 來源:億速云 閱讀:194 作者:柒染 欄目:數(shù)據(jù)庫

這篇文章將為大家詳細講解有關如何進行SOAR IDE插件的安裝與使用,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

下面將介紹SOAR插件的基本實現(xiàn)以及現(xiàn)在已經實現(xiàn)的插件的安裝與使用。

SOAR(SQL Optimizer And Rewriter)是小米近期開源的SQL智能優(yōu)化改寫工具,開源第一周就取得了2000+星的成績。我們開發(fā)SOAR的目的并不僅僅希望對DBA能夠提供幫助,也希望能夠協(xié)助廣大的SQL開發(fā)者更容易的寫出高質量的SQL。SOAR借鑒了其他SQLint[1]的思路,也提供了三種編輯器插件,可以用來集成到Vim,Sublime Text,VS Code等代碼編輯器中。

關于lint功能

將report-type指定為lint時,SOAR會將評審內容以SQLint的樣形輸出。為了便于展示,lint模式下只保留了文件名、行號、建議類型和建議摘要等少數(shù)信息。下面是一個簡單的例子。

$ cat file.sql select * from test $ soar -report-type lint -query file.sql file.sql:1:CLA.001

最外層SELECT未指定WHERE條件 file.sql:1:COL.001 不建議使用SELECT * 類型查詢

Vim插件Vim插件我們選擇了在知名的Syntastic[2]插件基礎上進行增補,這就要求用戶首先安裝Syntastic插件,它的安裝方法在官方文檔[3]中有詳細描述,這里不再過多贅述。讓我們來直接看看要怎樣配置SOAR生效。

  • 確保soar二進制文件在可執(zhí)行文件查找路徑$PATH下

  • 確保soar二進制文件具有可執(zhí)行權限,chmod a+x soar

  • 將源碼中的doc/example/soar.vim文件拷貝至${SyntasticInstalledPath}/syntax_checkers/sql目錄下,例如筆者使用bundle來管理Vim插件,于是將soar.vim文件拷貝至~/.vim/bundle/pristine/syntastic/syntax_checkers/sql目錄

  • 修改${SyntasticInstalledPath}/plugin/syntastic/registry.vim注冊文件,增加sql類型文件的檢查工具,如'sql':['soar','sqlint']

  • 更新Vim配置~/.vimrc,允許Syntastic默認彈窗

  • set statusline+=%#warningmsg# set statusline+=%{SyntasticStatuslineFlag()} set statusline+=%*  let g:syntastic_always_populate_loc_list = 1
    let g:syntastic_auto_loc_list = 1
    let g:syntastic_check_on_open = 1
    let g:syntastic_check_on_wq = 0

    一切順利的話使用Vim打開一個文件每次保存時您就能看到SOAR給出的建議了。

如何進行SOAR IDE插件的安裝與使用

Sublime Text3插件

與Vim插件的思路相同,在Sublime Text3中,我們選擇在SublimeLinter[4]的基礎上進行拓展。由于代碼剛剛開源,SublimeLinter-soar[5]在PackageControlChannel相關Pull Request[6]尚未被合并完成,所以目前暫時不能通過Sublime Text3自帶的PackageControl進行安裝。

雖然不能使用簡便的方式進行安裝,但是如果您想立刻體驗SOAR的Sublime Text3插件,可以按照下列方式手動進行安裝:

  • 確保soar二進制文件具有可執(zhí)行權限,chmod a+x soar

  • 根據(jù)官方文檔[7]安裝SublimeLinter

  • 打開Sublime Text3的插件相關目錄:Preferences -> Browse Packages…

  • 在該目錄下載代碼

  • git clone https://github.com/liipx/SublimeLinter-soar.git
  • 配置個人相關參數(shù):點擊 Preferences -> PackageSettings -> SublimeLinter -> Settings,將下列內容修改后加入到個人配置中

  • // SublimeLinter Settings - User{           "linters": {  "soar": {           "soar_path":"your_soar_path"         },     }, }

重新啟動Sublim Text3后,打開一個SQL文件就看到SOAR給出的建議了。

如何進行SOAR IDE插件的安裝與使用

VS Code插件

VS Code的插件功能十分強大,對于語言類的功能拓展,微軟采用了一種稱為Language Server Protocol(LSP)的實現(xiàn)方式。這種協(xié)議標準化了語言工具和代碼編輯器之間的通信方式,感興趣的同學可以通過官方文檔[8]進行更深入的了解。

如何進行SOAR IDE插件的安裝與使用

SOAR的VS Code插件目前在Github[9]上管理,尚未發(fā)布到微軟的應用市場,無法直接在微軟官方網頁上點擊安裝。想嘗鮮且擁有TypeScript及VS Code插件開發(fā)相關經驗的同學可以通過以下方式來手動安裝體驗該插件。其他同學可以靜靜等待微軟應用市場審批通過即可享受一鍵安裝的便利了。


  • 確保soar二進制文件具有可執(zhí)行權限,chmod a+x soar

  • 確保soar二進制文件在可執(zhí)行文件查找路徑$PATH下

  • 找到VS Code插件安裝路徑,Mac/Linux用戶一般為${HOME}/.vscode/extensions,Windows用戶一般為%USERPROFILE%\.vscode\extensions

  • 進入該路徑下載代碼

  • git clone https://github.com/liipx/vscode-extension-soar
  • 參考項目README[10]編譯Client與Server目錄下的TypeScript程序

  • 重啟VS Code,打開一個SQL文件查看是否生效

如何進行SOAR IDE插件的安裝與使用

關于如何進行SOAR IDE插件的安裝與使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI