編輯器之——Sublime Text3、Notepad++

Seven_0507發表於2018-04-26

       大家好,我是概率論與數理統計專業的畢業生,目前在做資料分析工作,在金融類的公司,剛工作的我屬於技術小白,對於語言和程式設計方面的學習也是前學後忘的,今天算了一下步入工作的路程已經快一年了,回想過去工作的時間,自己學的一些專業技能都是不全面不深入的,像猴子扒苞米一樣學一樣丟一樣,我看到很多大神都通過寫部落格記錄自己學習成果和解決的困難,這樣可以讓自己即使忘記了,也可以很快的通過部落格重新拾起來,所以我再聽取大神的建議後,想從今天開始記錄自己的學習成長過程,可能寫的不是很全面,可能會有紕漏,如果大家看到了希望幫我指出來,寫的不好也希望大家提建議,我主要會從自己以往所學有Excel VBA、Mysql、Oracle、R、SPSS、Python方面來記錄。

  今天我就寫一下程式設計用到的編輯器,一個優秀的編輯器,可以節約大量的工作量。包括編輯器的環境配置到熟練使用,主要介紹我經常使用的兩款編輯器Sublime Text3、Notepad++。

一、sublimetext 3 配置Python 開發環境
1、
sublimetext 3(ST3) 的下載安裝在這裡就不累述了,自行下載一步步安裝即可;
2、首先,ST3比較輕巧靈活的原因就是你需要什麼外掛就下載安裝即可,下面說一下外掛的安裝:

     安裝Package Control來管理模組外掛,Ctrl+`調出ST3 控制檯複製如下程式碼回車:

import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; 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)

開啟ST3軟體看到如下圖內容就說明外掛控制安裝成功了:


      下面我們就可以隨心所欲的安裝自己想要安裝的外掛了,先按Ctrl+Shift+P調出Package Control的皮膚,輸入install package安裝外掛,然後回車,再輸入自己需要安裝的外掛名稱,查詢到相應的外掛後回車即可安裝,如圖:

   

還有其他一些相關命令如下:
       List Packages 顯示所有已安裝的外掛
       Remove Packages 移除一個指定的外掛
       Upgrade Package 更新一個指定的外掛
       Upgrade/Overwrite All Packages 更新所有已安裝的外掛

3、Python開發常用搭配相關外掛:

(1)SublimeCodeIntel 外掛,程式碼自動提示作用(可以自己新增配置路徑);
(2)Pylinter 外掛,Python語法檢查作用;
(3)Anaconda 外掛,Python終極外掛,它為 ST3 增添了多項 IDE 類似的功能,例如:
        Autocompletion 自動完成,該選項預設開啟,同時提供多種配置選項;
        Code linting 使用支援 pep8 標準的 PyLint 或者 PyFlakes;
        Goto Definitions 能夠在你的整個工程中查詢並且顯示任意一個變數,函式,或者類的定義;
        Find Usage 能夠快速的查詢某個變數,函式或者類在某個特定檔案中的什麼地方被使用了;
        Show Documentation: 能夠顯示一個函式或者類的說明性字串。
(4)SideBarEnhancements 外掛,擴充套件側邊不需要配置,但值得注意的是ST3開啟(專案)資料夾後才有用;
(5)SublimeREPL 外掛,由於Ctrl+B執行Python檔案不能輸入,所以安裝此外掛可以解決,還有一個好處就是 可以分屏除錯,保留結果;
(6)Python PEP8 Autoformat 程式碼格式更正,快捷鍵ctrl+shift+R,可以使你的程式碼美觀整齊;
(7)Terminal 調出Windows的控制檯,用於各種命令操作;
(8)SublimeLinter 是ST3的一個程式碼靜態檢查工具框架(linter);
(9)GitGutter 讓ST3能在左邊欄的位置顯示一個小圖示,用以表示在最後一次提交以後,程式碼是否有追加,修改或者刪除;
(10)Djaneiro 支援 Django 模版和關鍵字高亮以及許多實用的程式碼片(snippets)功能;
(11)AutoPep8:python開發規範pep8;

後續還有比較有用的外掛,我將及時補充入內。接下來我主要介紹其中幾個外掛的配置:

SublimeREPL 外掛,說一下怎麼通過設定快捷鍵來快速執行當前python程式碼和開啟類似於IDLE形式的視窗,Preferences->Browse Packages->SublimeREPL->config->Python->Default.sublime-commands可以看到SublimeREPL 預設的配置,我們可以通過tool檢視它的功能,如下圖:


我們還可以新增自定義快捷鍵:
Step1. 點選選單Preferences->Browse Packages...,進入目錄%appdata%\Sublime Text 3\Packages;

Step2. 開啟檔案  SublimeREPL\config\Python\Default.sublime-commands,找到你想要的命令,如圖:


Step3. 回到SublimeText3,點選選單Preferences->Key Bindings,此時彈出一個視窗,

左邊是Default(Windows).sublime-keymap —— Default,

右邊是Default(Windows).sublime-keymap —— User,我們可以右側視窗編輯自己需要的快捷鍵,只需加入“key”:["f1"]即可指定,如圖:


完整設定後儲存並重新開啟視窗,這樣按下 F5,就能直接執行當前*.py指令碼了,執行結果如下圖示:

按下 F1,就能開啟類似Python基礎的IDLE形式的視窗了,如下圖右側所示:


Anaconda 外掛,由於Anaconda外掛本身無法知道Python安裝的路徑,所以需要設定Python主程式的實際位置。選擇Settings-Default選項,搜尋“python_interpreter” key,並鍵入python主程式的磁碟位置,如圖。

此外我們還可以在預設設定中調整它程式碼函式、引數的自動完成功能,修改相應的ture或false即可,如下圖:

我們還可以拷貝到個性化設定中配置,就是settings-user中修改,如下圖:

Anaconda如何關閉警告框,如圖所示這樣的框框,程式碼並沒有出錯,但是側邊欄的白點和程式碼框會讓人有些無所適從。這還算好的,當程式碼多時,那簡直是災難。

Anaconda預設開啟了linting功能,linting說白了大概就是提示程式碼在之後有可能會出錯。這種作用不大,副作用卻不小——影響視覺,破壞心情的功能應該除掉。在選單中Preferences >> Package Settings中開啟Anaconda的user settings配置檔案,加入"anaconda_linting": false,儲存即可,如圖所示:


我們還可以進行如下配置,方便我們進行程式碼的編寫,如圖所示:


模組、類的屬性、方法“.”觸發設定,我們可以在Preferences->Browse Packages->Packages->User->修改
Python.sublime-settings檔案,加入:
{
    "auto_complete_triggers": 
    [{"selector": "source.python - string - comment - constant.numeric", "characters": "."}]

},


我們儲存重啟後就可以看到相應的效果。

Anaconda還有其他功能,我們可以定義快捷鍵快速呼叫這些功能,如圖:
開啟選項:preferences -> package setting ->Anaconda ->Key Bulidings -default
{
    "command": "anaconda_goto", "keys": ["ctrl+alt+g"], "context": 
    [
    {"key": "selector", "operator": "equal", "operand": "source.python"}
    ]

},


其他相關外掛的設定我會後續進行補充。

這裡先補充一個Tab轉為4個空格的設定:由於Python語法縮排判斷語句結束的,空格不一致導致的語法錯誤是非常頭疼的,為了從源頭避免錯誤,可設定tab等於4個空格,儲存時tab自動轉空格。選單欄裡點選 Preferences-> Setting,在Setting-User中新增以下程式碼:
{
       "expand_tabs_on_save": true,
       "font_size": 12,
       "ignored_packages":
       [
              "Vintage"
       ],
       "tab_size": 4,
       "translate_tabs_to_spaces": true

}

sublimeText3漢化外掛,我們先按Ctrl+Shift+P調出Package Control的皮膚,輸入install package安裝外掛,再搜尋local,找到如下選項就是語言外掛,點選安裝


按下圖操作找到設定下的語言 自由切換中英文語言即可,如圖:


4、Sublime text3快捷鍵總結

Ctrl+B
Ctrl+Break 終止執行,Tools->Cancel Build
選擇類:
Ctrl+D 選中游標所在的文字,繼續操作則會選中下一個相同的文字。
Alt+F3 選中文字按下快捷鍵,即可一次性選擇全部的相同文字進行同時編輯。
Ctrl+L 選中整行,繼續操作則繼續選擇下一行,效果和 Shift+↓ 效果一樣。
Ctrl+Shift+L 先選中多行,再按下快捷鍵,會在每行行尾插入游標,即可同時編輯這些行。

Ctrl+Enter 在下一行插入新行。
Ctrl+Shift+Enter 在上一行插入新行。
Ctrl+Shift+D 複製游標所在整行,插入到下一行。

Ctrl+M 游標移動至括號內結束或開始的位置。
Ctrl+Shift+M 選擇括號內的內容(繼續選擇父括號),舉個栗子:快速選中刪除函式中的程式碼,重寫函式體程式碼或重寫括號內裡的內容。

shift+↑ 向上選中多行。
shift+↓ 向下選中多行。
Shift+← 向左選中文字。
Shift+→ 向右選中文字。
Ctrl+← 向左單位性地移動游標,快速移動游標。
Ctrl+→ 向右單位性地移動游標,快速移動游標。
Ctrl+Shift+← 向左單位性地選中文字。
Ctrl+Shift+→ 向右單位性地選中文字。

Ctrl+Shift+↑ 將游標所在行和上一行程式碼互換(將游標所在行插入到上一行之前)。
Ctrl+Shift+↓ 將游標所在行和下一行程式碼互換(將游標所在行插入到下一行之後)。
Ctrl+Alt+↑ 向上新增多行游標,可同時編輯多行。
Ctrl+Alt+↓ 向下新增多行游標,可同時編輯多行。


編輯類:

Ctrl + J 可以把當前選中區域合併為一行 
Ctrl+K+K 從游標處開始刪除程式碼至行尾。
Ctrl+Shift+K 刪除整行。
Ctrl+K+U 轉換大寫。
Ctrl+K+L 轉換小寫。
Ctrl+Y 恢復撤銷
Ctrl+T 左右字母互換。
F6 單詞檢測拼寫
Tab 向右縮排。
Shift+Tab 向左縮排。
Ctrl+/ 註釋單行。

Ctrl+Shift+/ 註釋多行。

顯示類:
Alt+Shift+1 視窗分屏,恢復預設1屏(非小鍵盤的數字)
Alt+Shift+2 左右分屏-2列
Alt+Shift+3 左右分屏-3列
Alt+Shift+4 左右分屏-4列
Alt+Shift+5 等分4屏
Alt+Shift+8 垂直分屏-2屏
Alt+Shift+9 垂直分屏-3屏
Ctrl+K+B 開啟/關閉側邊欄

Ctrl+Tab 按檔案瀏覽過的順序,切換當前視窗的標籤頁。
Ctrl+PageDown 向左切換當前視窗的標籤頁。
Ctrl+PageUp 向右切換當前視窗的標籤頁。
F11 全屏模式
Shift+F11 免打擾模式

二、Notepad++配置Python 開發環境

1. Notepad++下載安裝好了之後,開啟編輯視窗點選 ->"執行"選單->"執行"按鈕

2. 在彈出的視窗內輸入以下命令:

cmd /k cd /d "$(CURRENT_DIRECTORY)" &  python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT

然後點選“儲存”,隨意取一個名字,比如“RunPython”,為方便,配置一下快捷鍵(比如 Alt+ F5),點OK即可。之後執行Python檔案只要按配置的快捷鍵或者在執行選單上點“RunPython”即可。


執行得到這個介面就說明設定成功了,如下圖:


3、配置問題

自動縮排設定及tab換為4個空格的設定,如下圖:

點選設定->首選項->其他 中進行設定


勾選了這個後,你換行是就會自動縮排了,下面還要設定將TAB更換成4個空格 設定->首選項->語言->製表符設定->python->設定勾選替換為空格,如圖:


我們還可以設定顯示縮排參考線和顯示製表符,這樣防止在編寫程式碼時出現語法錯誤,如下圖進行相關設定:


4、Notepad++外掛的安裝後續將補充.....


5、Notepad++快捷鍵總結(只總結了常用的,後續會補充)

檔案類:
Alt-F4                        退出程式
Ctrl-Tab                     檔案標籤跳轉,跳至下一個開啟檔案
Ctrl-Shift-Tab            檔案標籤跳轉,跳至上一個開啟檔案
Ctrl-W                       關閉當前檔案


編輯類:
Ctrl-Shift-T                 複製當前行至剪貼簿
Alt + 滑鼠左鍵            列選擇模式
ALT-C                         列編輯器
Ctrl-D                         複製當前行至下方,或者複製選中區域至其後
Ctrl-T                          複製當前行至剪貼簿(注:幫助中說是將當前行與上一行交換位置)
Ctrl-Alt-T                   與上一行進行交換
Ctrl-Shift-Up              將當前行上移一行
Ctrl-Shift-Down         將當前行下移一行
Ctrl-L                          刪除當前行
Ctrl-Q                         新增/刪除註釋
Ctrl-Shift-Q                區塊新增/刪除註釋
Tab                             插入Tab
Shift-Tab                    刪除位置之前的Tab
Ctrl-BackSpace           刪除當前位置至單詞開始的內容
Ctrl-Delete                  刪除當前位置至單詞結尾的內容
Ctrl-Shift-BackSpace  刪除當前位置至行首的內容
Ctrl-Shift-Delete         刪除當前位置至行尾的內容
Ctrl-U                          轉換為小寫
Ctrl-Shift-U                  轉換為大寫
Ctrl-B                           跳轉至配對的括號
Ctrl-Space                   觸發函式自動完成列表
Ctrl-Shift-Space          觸發函式引數提示
Ctrl-Enter                    觸發關鍵字自動完成列表
Ctrl-Alt-R                    整個頁面文字方向從右到左

Ctrl-Alt-L                     整個頁面文字方向從左到右

後續會補充不完善的地方......


相關文章