Sublime text 3 安裝 soar 插件

感謝一波:
此文是看大佬的文章SOAR的IDE插件——您的貼身DBA保鏢操作的過程及問題的解決

一岗憋、說明

1、soar github: 對(duì)SQL進(jìn)行優(yōu)化和改寫的自動(dòng)化工具日矫。 由小米人工智能與云平臺(tái)的數(shù)據(jù)庫(kù)團(tuán)隊(duì)開發(fā)與維護(hù)斋攀。
2到腥、SublimeLinter-soar github:Sublime text 的插件账锹,安裝后可以直接給出提示萌业。
3、安裝插件前確保soar可用奸柬,即官方的例子實(shí)現(xiàn)如下效果

二生年、安裝---如大佬g(shù)ithub的說明去操作

1、使用SublimeLinter-soar 插件必須先安裝 SublimeLinter 3

1.1廓奕、Sublime Text 打開Preferences -> Browse Packages... 會(huì)打開一個(gè)文件夾

1.2抱婉、執(zhí)行git clone https://github.com/SublimeLinter/SublimeLinter.git,下載文件到上述目錄

2桌粉、安裝并配置插件

2.1蒸绩、執(zhí)行git clone https://github.com/liipx/SublimeLinter-soar.git,下載插件到上述目錄

2.2、打開Preferences -> Package Settings -> SublimeLinter -> Settings铃肯,然后在右邊的 Settings - User 加入如下代碼:

// SublimeLinter Settings - User
{
    "linters": {
        "soar": {
            "soar_path":"you_soar_path"
            //"soar_path":"/XXX/xxx/soar" 一定要到soar
        }
    }
}

2.3患亿、重啟 Sublime Text, 新建一個(gè)sql文件押逼,寫入官方的測(cè)試語(yǔ)句步藕,可得如下效果


2.4、保存或者修改文件的時(shí)候就會(huì)檢查挑格,如果檢查到有問題咙冗,需要優(yōu)化,就會(huì)出現(xiàn)框恕齐,鼠標(biāo)放上去就會(huì)提示乞娄。如果沒有需要優(yōu)化的就不會(huì)有框。


到這里插件已經(jīng)可以使用了显歧,但是這樣并不能連接我們自己的數(shù)據(jù)庫(kù)進(jìn)行測(cè)試仪或,故修改一點(diǎn)點(diǎn)大佬的插件代碼 ∠( ? 」∠)_


3、修改插件

3.1士骤、打開剛剛下載的 SublimeLinter-soar 的 linter.py文件范删,找到

cmd = persist.settings.get('linters').get('soar').get("soar_path") + " -report-type lint -query"

修改為

cmd = persist.settings.get('linters').get('soar').get("soar_path") + " -config " + persist.settings.get('linters').get('soar').get("soar_yml_path") + " -report-type lint -query"

3.2、在剛剛的Preferences -> Package Settings -> SublimeLinter -> Settings拷肌,右邊的 Settings - User 加入一行代碼到旦,最終如下

// SublimeLinter Settings - User
{
    "linters": {
        "soar": {
            "soar_path":"/XXX/xxx/soar",
            "soar_yml_path":"/XXX/xxx/soar.yml" 
        }
    }
}

注:soar.yml 是我自己寫的文件,可換成你自己本地的soar config 文件巨缘,config 文件官方說明
3.3添忘、即加上 -config 參數(shù)及對(duì)應(yīng)的文件路徑,最后可得如下效果

由于已經(jīng)使用了我自己的配置文件若锁,發(fā)現(xiàn)無(wú)此表搁骑,此語(yǔ)句執(zhí)行失敗了。


到這里已經(jīng)基本滿足需求了,但是發(fā)現(xiàn)信息有時(shí)候太少了仲器,需要看更多一點(diǎn)煤率,可如下操作。


4乏冀、打印詳細(xì)信息在控制臺(tái)

4.1蝶糯、在剛剛的Preferences -> Package Settings -> SublimeLinter -> Settings左邊 的debug打開辆沦, "debug": true
4.3昼捍、再次打開剛剛下載的 SublimeLinter-soar 的 linter.py文件 修改同一個(gè)位置,即去掉-report-type lint众辨,使用默認(rèn)的markdown格式端三。

persist.settings.get('linters').get('soar').get("soar_path") + " -config " + persist.settings.get('linters').get('soar').get("soar_yml_path") + " -report-type lint -query"

注:但是由于不符合SublimeLinter的格式要求,不能直接顯示在上面鹃彻, 官方說明

4.2、使用 control + `妻献,打開Sublime Text 的控制臺(tái)蛛株,就可以看到詳細(xì)的信息了。

三育拨、遇到的問題

1谨履、soar cannot locate 'soar'錯(cuò)誤 其實(shí)一直沒有找到真實(shí)的原因@( ̄- ̄)@
  • 檢查soar的路徑?jīng)]有錯(cuò)誤
  • 打開linter.py文件和Sublime Text 的控制臺(tái),找到對(duì)應(yīng)的未知加入下面?zhèn)z行代碼
  • 保存一下linter.py
try:
        print(persist.settings.get('linters').get('soar').get("soar_path")) #新代碼 打印出路徑而已
        print(persist.settings.get('linters').get('soar').get("soar_yml_path")) #新代碼 打印出路徑而已
        cmd = persist.settings.get('linters').get('soar').get("soar_path") + " -config " + persist.settings.get('linters').get('soar').get("soar_yml_path") + " -report-type lint -query"
    except Exception as e:
        cmd = "soar -report-type lint -query"
  • 然后在控制臺(tái)看到熬丧,如下圖(后面兩個(gè)地址是我存文件的地址)
  • 這時(shí)候試一下發(fā)現(xiàn)就可以用了笋粟,但是重啟后可能又失效了,然后我以為每次都需要重復(fù)上面的步驟才行析蝴,結(jié)果試了幾次以后就自動(dòng)有效了害捕。
  • 希望有大佬知道具體原因可以說一聲呢~~~(?????????)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市闷畸,隨后出現(xiàn)的幾起案子尝盼,更是在濱河造成了極大的恐慌,老刑警劉巖佑菩,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盾沫,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡殿漠,警方通過查閱死者的電腦和手機(jī)赴精,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來绞幌,“玉大人蕾哟,你說我怎么就攤上這事。” “怎么了渐苏?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵掀潮,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我琼富,道長(zhǎng)仪吧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任鞠眉,我火速辦了婚禮薯鼠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘械蹋。我一直安慰自己出皇,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布哗戈。 她就那樣靜靜地躺著郊艘,像睡著了一般。 火紅的嫁衣襯著肌膚如雪唯咬。 梳的紋絲不亂的頭發(fā)上纱注,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天,我揣著相機(jī)與錄音胆胰,去河邊找鬼狞贱。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蜀涨,可吹牛的內(nèi)容都是我干的瞎嬉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼厚柳,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼氧枣!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起草娜,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤挑胸,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后宰闰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體茬贵,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年移袍,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了解藻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡葡盗,死狀恐怖螟左,靈堂內(nèi)的尸體忽然破棺而出啡浊,到底是詐尸還是另有隱情,我是刑警寧澤胶背,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布巷嚣,位于F島的核電站,受9級(jí)特大地震影響钳吟,放射性物質(zhì)發(fā)生泄漏廷粒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一红且、第九天 我趴在偏房一處隱蔽的房頂上張望坝茎。 院中可真熱鬧,春花似錦暇番、人聲如沸嗤放。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)次酌。三九已至,卻和暖如春舆乔,著一層夾襖步出監(jiān)牢的瞬間和措,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工蜕煌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人诬留。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓斜纪,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親文兑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子盒刚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容