今天給你們介紹的這個插件,是我在IOS平臺上開發以來,一些想法的集合體。由於本人時常感受在開發過程當中不管從GOOGLE資料查找和SQL數據庫查詢,正則表達式測試,SVN等,這些常常要作的操做中,耽誤了我很多的時間,甚至會打斷我對業務的思考,進而影響對程序的理解。
在忍無可忍的狀況下,我決定本身動手造一些工具,但願借它避開頻繁切換窗體過程對開發者思惟的影響。
好了,開始今天的正文吧!
首先要聲明的是,由於本人懷疑蘋果公司並不支持開發者來爲XCODE開發插件,但若是不HACK一些底層的API,有些插件功能又是沒法實現,而這些API每每又可能會在下個版本中被修改甚至移除。因此本人沒法保證全部的XCODE版本均可運行該插件。本人目前使用的XCode版本爲 4.6.2 (4H1003)。
本插件的安裝有兩種方式:
I:下載這個連接中的文件(http://files.cnblogs.com/daizhj/HRPlugin.dmg.zip),雙擊解壓,運行裏面的DMG文件。並運行彈窗中的」install.command「文件,這樣就會完成安裝了。
II:下載本項目源碼(https://github.com/daizhenjun/HRXcodePlugin),以後用XCODE打開Build便可。
採用其中一種方式安裝完成後,徹底退出XCode(在DOCK上的XCODE圖標擊右鍵,選「退出」便可)
下面就來看一下該插件的運行效果,以下:
下面作一個使用介紹:
首先是搜索功能,當選中代碼中的一段文件,以下圖(NSRegularExpression)時:
這時點擊插件中的「GoogleSearch」,會啓動瀏覽器,以下圖(這裏插件爲您添加了Stackoverflo關鍵字):
同理也可使用BaiduSearch,但鑑於Baidu多數狀況下搜不出什麼像樣的乾貨,這理就不作說明了。
下面介紹一下SVN功能。首先要用命令行或其它方式初始化本地版本庫和相關的用戶信息(包括密碼)等。以後就可使用下面窗口設置本地源碼的SVN路徑了:
html
這樣,只要把你的項目源碼放在該路徑下,使用XCode打開相關源碼文件,執行修改或添加文件等操做時,只要點擊HRPlugin菜單中SVN的相關菜單項操做便可。以下圖:
若是以前SVN設置有問題或在提交過程當中出現問題,插件都會回顯相關的錯誤信息給你,好比:
同理,也能夠完成GIT的設置,其實在寫這個插件過程當中,我一直用該插件來向GITHUB提交代碼。基本沒發現什麼問題(歡迎feedback bug).
下面看一下對SQLITE數據庫的支持,點擊插件菜單的」Sqlite Helper「, 會啓動該助手。
這裏要說明的是,該助手第一次啓動時會讓您選擇一個本地的SQLITE數據庫文件,若是沒有選擇,插件會爲您構造一個SQLITE文件,並向其中添加兩張表,一個是student,一個是teacher,以下圖:
java
你們能夠看到左側會列出當前數據庫中的表及其相關結構信息。
接着輸入相應的SQL腳本,以下圖,並點擊"run sql"按鈕:
咱們看到在下面的表格中顯示了該表的記錄,包括剛insert的那個記錄。同時這個輸入框還支持執行選中的SQL腳本,以下:
你們看到這裏顯示的是"select * from teacher"的結果(注:要輸入多行腳本,按住「command或option「以後按回車鍵便可)。
除此之外,該助手還支持導出建表腳本和代碼生成(支持object-c, c#, java三種語言),只要在相應的表結點上擊鼠標右鍵便可:
接下來再介紹一下HTTP代理服務器功能,引入它的目的是爲了方便開發手機客戶端應用。只要點擊插件菜單的"Http Proxy",就能夠看到它的界面了,以下圖:
它會偵聽當前機器的8000端口上的HTTP請求。爲了測試方便,咱們能夠在Firefox, chrome, safari中設置相應的代理服務,指向本地的8000端口,這時在相應瀏覽器中訪問好比BAIDU等網站,就會在該界面上顯示本地HTTP請求的HEADER等信息,還有網站那一端得到的數據。這樣會方便咱們在開發過程當中檢查提交和返回的信息是否有效等。
固然若是在IOS代碼中,咱們能夠這樣用它,好比使用第三方開源軟件ASIHTTPRequest時,設置相應的代理字段:python
// 手動設置代理服務器 NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"]; ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; [request setProxyHost:@"127.0.0.1"]; [request setProxyPort:8000];
若是在python中,能夠這樣用:ios
#!/usr/bin/env python import urllib import sys import getopt shortargs = 'f:t' opts, args = getopt.getopt( sys.argv[1:], shortargs ) port = "8000" if ( len( sys.argv ) == 2 ): port = args[0] try: proxy = {"http":"http://127.0.0.1:"+ port} f = urllib.urlopen("http://www.baidu.com", proxies = proxy)#加入代理設置 print 'http header:/n', f.info() print 'http status:', f.getcode() print 'url:', f.geturl() for line in f: print line, f.close() except: print "proxy fails!"
接下來是關於信息:
最後就是卸載功能,以下:
git
好了,今天的內容就到這裏的,若是你們有什麼想法能夠提出來,以便我進一步完善。
源碼下載地址:https://github.com/daizhenjun/HRXcodePlugin
安裝包下載:http://files.cnblogs.com/daizhj/HRPlugin.dmg.zipgithub
原文連接:http://www.cnblogs.com/daizhj/p/3154551.html
做者: daizhj, 代震軍
微博: http://weibo.com/daizhj
Tags:python,ios,plugin,xcode
正則表達式