一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

將Sublime Text 3設(shè)置為Python全棧開發(fā)環(huán)境

 昵稱28748685 2015-12-15
本文由 伯樂在線 - Lane 翻譯,艾凌風(fēng) 校稿。
英文出處:。歡迎加入翻譯組。

為 Sublime Text 3 設(shè)置 Python 的全棧開發(fā)環(huán)境

Sublime Text 3 (ST3) 是一個輕量級的跨平臺文字編輯器,尤以其輕快的速度,易用性和強(qiáng)大的社區(qū)支持而著稱。它一經(jīng)面世便被認(rèn)為是一個杰出的編輯器,而它真正的強(qiáng)大之處在于你可以使用 Package Control 來增加它的功能以及可以進(jìn)行各種自定義設(shè)置。

在本文章中,我們將會看到如何將 Sublime Text 打造成為 Python 的全棧開發(fā)環(huán)境(從前端到后端),如何通過自定義主題和插件來增強(qiáng)它的基本功能,并且還將會涉及到很多使 ST3 變得更加強(qiáng)大的常用的命令,特性以及快捷鍵。

本教程將假定你使用的是 Mac 電腦并且習(xí)慣于使用終端。如果你使用的是 Windows 或者 Linux 操作系統(tǒng),本文涉及到的一些命令將有可能會有所不同,但是你應(yīng)該仍然可以很容易地通過 Google 來獲取到與本教程相關(guān)的解答。

在我們開始之前,讓我們先討論一下我所謂的”全?!本唧w指的是什么。

在現(xiàn)在的 HTML5 以及移動設(shè)備開發(fā)中,Javascript 簡直無處不在。是的,無處不在!僅僅使用 Python 基于某個框架比如 Django 或者 Flask 進(jìn)行開發(fā)是不夠的。如果你想從始至終真正的自己開發(fā)一個網(wǎng)站的話,你必須熟悉 Javascript(以及 Javascript 的一大堆的框架),REST API(含狀態(tài)傳輸 API),響應(yīng)式設(shè)計,當(dāng)然還有 HTML 和 CSS,以及其他許多東西。現(xiàn)在讓我們來面對一個問題:就像其他任何一個手藝人一樣,為了成為一個最厲害的程序員,你的工具必須犀利,你的開發(fā)環(huán)境必須被打造成全棧開發(fā)——那就是我們馬上將要開始的工作…

特性

讓我們從 ST3 的一些默認(rèn)特性開始著手吧…

  1. Split Layouts 允許你將你的許多文件放到很多分割開來的視窗中。如果你正在進(jìn)行以測試為目的的開發(fā)(將 Python 代碼放在一個視窗中,而測試腳本放在另一個視窗中)或者正在進(jìn)行前端開發(fā)(將 HTML 代碼放在一個視窗里,CSS/Javascript 代碼放在另一個視窗里)的時候?qū)浅S杏谩?nbsp;
  2. Vintage Mode 讓你能夠在 ST3 中使用 vi 模式。
  3. Chrome-like Tabs 讓你在多個文件中切換變得更加方便。
  4. Automatic loading of the last session 幫你自動打開你上次關(guān)閉的時候編輯器中所有打開的文件。我總是一直開著 ST3,而且其中打開著一大堆項目——當(dāng)我重啟電腦以后, 它能夠自動幫我打開所有的這些文件和文件夾。
  5. Code Snippets 允許你通過一兩個簡單的關(guān)鍵字就能寫出一段常用的代碼片(Snippets),從而增加你的生產(chǎn)效率。比如,你只需要打開一個文件,輸入 “l(fā)orem” 然后敲擊 tab 鍵,就會自動生成一段亂數(shù)假文(譯者注: 一種用于測試文章或文字在不同字型、版型下看起來的效果等的文字)。又比如在 Python 代碼中,你可以輸入 “defs” 然后敲擊 tab 鍵,你就能得到一段通用的函數(shù)定義。

同時,你還可以點(diǎn)擊 Tools > New Snippet 來創(chuàng)建屬于你自己的代碼片。請參照這個 文檔 來獲取幫助,也可以在 這里 查看我個人用到的一些 snippets。

自定義 Sublime Text 3

在你下載完 ST3 以后…

在命令行中添加 subl 命令

就像 TextMate 的 mate 命令一樣,Sublime Text 擁有一個叫做 subl 的命令行工具,可以用來通過終端打開一個文件或者一整個文件夾。

你需要建立一個指向 subl 二進(jìn)制文件的符號鏈接來使 subl 命令有效:

Python
1
$ ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl

嘗試使用以下命令來打開 Sublime 來確保鏈接生效了:

Python
1
$ subl

如果以上命令沒有效果,你可能需要將 /bin 添加到你的環(huán)境變量中:

Python
1
$ echo "export PATH=~/bin:$PATH" >> ~/.profile

然后重新嘗試第一步。

如果你仍然遇到問題,嘗試查看 這篇 文章來獲取幫助。 或者你可以看看如何在 WindowsLinux 中建立符號鏈接。

現(xiàn)在你就可以通過下述命令來打開文件或者文件夾了:

Python
1
2
3
4
5
6
7
8
# open the current directory
$ subl .
# open a directory called tests
$ subl ~/Documents/test
# open a file called text.txt
$ subl test.txt

如果路徑中含有空格,你必須使用雙引號將路徑括起來:

Python
1
$ subl "~/Documents/test/my test file.txt"

想要查詢所有可用的命令,請打開幫助文件:

Python
1
$ subl --help

安裝 Package Control

為了使用眾多的 插件 來擴(kuò)展 Sublime 的功能,你需要安裝一個叫做 Package Control 的插件管理器——這個東西你必須要手動安裝。但是一旦你安裝好了以后,你就可以使用 Package Control 來安裝,移除或者升級所有的 ST3 插件了。

  1. 點(diǎn)擊 這里 從 Sublime Text 3 官方獲取用于安裝的代碼。依次點(diǎn)擊 View > Show Console 打開 ST3 的控制臺。在控制臺中粘貼剛才的代碼,然后點(diǎn)擊回車。最后重啟 ST3。
  2. 現(xiàn)在你可以通過快捷鍵 cmd+shift+P 打開 Package Control 來安裝其他的插件了。輸入 install 然后你就能看見屏幕上出現(xiàn)了 Package Control: Install Package,點(diǎn)擊回車然后搜索你想要的插件。
  3. 其他一些相關(guān)命令如下:
    • List Packages 顯示所有已安裝的插件
    • Remove Packages 移除一個指定的插件
    • Upgrade Package 更新一個指定的插件
    • Upgrade/Overwrite All Packages 更新所有已安裝的插件

請查閱官方 文檔 獲取更多的命令。

創(chuàng)建自定義配置文件

你可以通過一個基于 JSON 的配置文件來充分的自定義 Sublime Text,這使得轉(zhuǎn)移或者同步你的自定義文件到另一個系統(tǒng)變得非常容易。首先,我們需要新建我們自己的配置文件。我們最好是為不同的系統(tǒng)環(huán)境和編程語言各自創(chuàng)建一個配置文件。

依次點(diǎn)擊 Sublime Text > Preferences > Settings – User 來創(chuàng)建一個配置文件。在該文件中添加一個空的 JSON 類然后就可以在其中寫入你的配置內(nèi)容了。如下所示:

Python
1
2
3
4
5
6
7
{
      // base settings
      "auto_complete": false,
      "sublimelinter": false,
      "tab_size": 2,
      "word_wrap": true
}

  1. 如果想為特定的編程語言新建配置文件的話,請點(diǎn)擊 Sublime Text > Preferences > Settings – More > Syntax Specific – User。然后按照 LANGUAGE.sublime-settings 的格式保存該配置文件。例如想新建一個 Python 專用的配置文件,請將該文件保存為 Python.sublime-settings。
  2. 你完全可以按照你自己的喜好來進(jìn)行各項配置;不過我強(qiáng)烈推薦以我的這份 配置文件 以及 Python 配置 作為基礎(chǔ),然后修改成你所需要的內(nèi)容。
  3. 一個可選項: 你可以使用 Dropbox 來同步你的所有配置。你只需要將你的配置文件上傳到 Dropbox 然后就可以將你的配置同步到你的任意一臺設(shè)備上了。
  4. 你可以在 Sublime Text Unofficial Documentation 找到一些非常好的參考配置。

主題

ST3 為你提供了完全自定義化一個適合自己主題的能力。當(dāng)然,你如果不是那么的挑剔的話,你可以通過 Package Control 從許許多多的由 Sublime 社區(qū)設(shè)計的 主題 中下載一個。 在下載之前你可以通過 ColorSublime 來預(yù)覽這些主題。

廣受歡迎的的 Soda Dark 和極簡風(fēng)格的 Flatland 是我個人最喜歡的兩個主題。

在安裝完了主題以后, 請務(wù)必更新你的配置文件. Sublime Text > Preferences > Settings – User:

Python
1
2
3
4
{
      "theme": "Flatland Dark.sublime-theme",
      "color_scheme": "Packages/Theme - Flatland/Flatland Dark.tmTheme"
}

插件

除了那些主題以外,我還會使用以下這一些插件來提升我的工作效率。

SideBarEnhancements

SideBarEnhancements 擴(kuò)展了側(cè)邊欄中菜單選項的數(shù)量,從而提升你的工作效率。諸如”New file” 和 “Duplicate” 這樣的選項對于 ST3 來說實在是太重要了, 我甚至覺得 ST3 本來就應(yīng)該提供這些功能。而且僅憑 “Delete” 這一個功能就讓這個插件值得下載。這個功能將你會在你刪除文件的時候把它放入回收站。雖然這個功能乍一看沒什么用,但是當(dāng)你沒有使用這樣的功能而徹底刪除了一個文件的時候,除非你用了版本管理軟件,否則你將很難恢復(fù)這個文件。

現(xiàn)在就下載吧!

Anaconda

Anaconda 是一個終極 Python 插件。它為 ST3 增添了多項 IDE 類似的功能,例如:

  • Autocompletion 自動完成,該選項默認(rèn)開啟,同時提供多種配置選項。
  • Code linting 使用支持 pep8 標(biāo)準(zhǔn)的 PyLint 或者 PyFlakes。因為我個人使用的是另外的 linting 工具,所以我會在 Anaconda 的配置文件 Anaconda.sublime-settings 中將 linting 完全禁用。操作如下: Sublime > Preferences > Package Settings > Anaconda > Settings – User: {'anaconda_linting': false}
  • McCabe code complexity checker 讓你可以在特定的文件中使用 McCabe complexity checker. 如果你對軟件復(fù)雜度檢查工具不太熟悉的話,請務(wù)必先瀏覽上邊的鏈接。
  • Goto Definitions 能夠在你的整個工程中查找并且顯示任意一個變量,函數(shù),或者類的定義。
  • Find Usage 能夠快速的查找某個變量,函數(shù)或者類在某個特定文件中的什么地方被使用了。
  • Show Documentation: 能夠顯示一個函數(shù)或者類的說明性字符串(當(dāng)然,是在定義了字符串的情況下)

你可以在這里,或者通過 ST3 的 Package Settings: Sublime Text > Preferences > Package Settings > Anaconda > README 來查看所有這些特性。

SublimeCodeIntel 是另外一個非常流行的插件,它的許多特性與 Anaconda 類似。我建議同時也試試它。

Djaneiro

Djaneiro 支持 Django 模版和關(guān)鍵字高亮以及許多實用的代碼片(snippets)功能。其中的 snippets 絕對是省時神器。你可以通過很少幾個關(guān)鍵字就能創(chuàng)建許多常見的 Django 代碼塊比如 templates,models,forms,以及 views。請查看官方文檔獲取 snippets 列表。

我個人非常喜歡的以下兩個用于創(chuàng)建 template 的代碼片:輸入 var 就可以新建 {{ }},而輸入 tag 就能新建 {% %}。

requirementstxt

Requirementstxt 可以為你的 requirements.txt 文件提供自動補(bǔ)全,語法高亮以及版本管理功能。

SublimeLinter

SublimeLinter 是 ST3 的一個代碼靜態(tài)檢查工具框架(linter)。這個插件本身來說并不包含任何的一個 linter,但是你可以通過在 Package Control 中輸入 SublimeLinter-[linter_name] 的方式來安裝一個 linter。你可以點(diǎn)擊這里查看官方的 linter。同時你還可以在 Package Control 中查看到許多的第三方 linter。請點(diǎn)擊這里查看安裝說明。

對于 Python 的代碼靜態(tài)檢查器,我建議使用 SublimeLinter-pyflakesSublimeLinter-pep8。

與此同時,我也會使用 SublimeLinter-jshint, SublimeLinter-pyyaml, SublimeLinter-csslint,SublimeLinter-html-tidy,以及 SublimeLinter-json。

以上大多數(shù)的 linter 都需要先安裝一些依賴庫才能使用,所以在安裝前請務(wù)必閱讀他們的安裝說明。

你可以通過修改用戶自定義的 SublimeLinter.sublime-settings 文件來對你的每個 linter 個性化:Sublime Text > Preferences > Package Settings > SublimeLinter > Settings – User. 例如我通過以下代碼來忽略 pep8 中的錯誤和警告:

Python
1
2
3
4
5
6
7
8
"pep8": {
    "@disable": false,
    "args": [],
    "excludes": [],
    "ignore": "E501,C0301,W0142,W0402,R0201,E1101,E1102,C0103,R0901,R0903,R0904,C1001,W0223,W0232,W0201,E1103,R0801,C0111",
    "max-line-length": 100,
    "select": ""
},

GitGutter

GitGutter 讓 ST3 能在左邊欄的位置顯示一個小圖標(biāo),用以表示在最后一次提交以后,代碼是否有追加,修改或者刪除。

如果你想讓該插件支持分布式的版本管理軟件(Git,SVN,Bazaar 和 Mercurial)。請查看 Modific。

FTPSync

FTPSync 能夠?qū)⒛愕捻椖亢瓦h(yuǎn)程文件進(jìn)行同步。你只需要打開文件便可以下載更新(如果你的遠(yuǎn)端文件比本地更加新的話),而且如果你對本地文件做出了修改可以立即同步到遠(yuǎn)程服務(wù)器。這是非常棒的同步本地文件和遠(yuǎn)程文件的方法。你可以通過以下的方法來添加你的遠(yuǎn)程服務(wù)器:Sublime Text > Preferences > Package Settings > FTPSync > Setup FTPSync.

Sample settings:

Python
1
2
3
4
5
6
7
8
9
10
11
{
  'primary': {
    host: 'ftp.mywebsite.com',
    username: 'johnsmith',
    password: 'secretpassword',
    path: '/www/',
    upload_on_save: true,
    tls: true
  }
}

我個人喜歡把密碼設(shè)為 null 因為我不想讓我的密碼出現(xiàn)在配置文件中。這樣 FTPSync 會在我每次保存完文件后要求我輸入密碼。

AdvancedNewFile

AdvancedNewFile 可以讓你在 ST3 中使用簡單的幾個快捷鍵便創(chuàng)建一個新的文件夾或者一個新的文件:

你只需要通過幾個快捷鍵便可以打開 AdvancedNewFile 的輸入框。然后輸入路徑和文件名。當(dāng)你按下回車鍵后,文件便被創(chuàng)建了。除此之外,如果目標(biāo)文件夾并不存在的話,該文件夾將會被自動建立。在默認(rèn)情況下,你創(chuàng)建的文件的路徑將會顯示在狀態(tài)欄中。

請查看 Github 上的這篇文檔來獲取更為詳細(xì)的使用說明。特別建議請詳細(xì)閱讀TAB自動補(bǔ)全(Tab Completion)以及預(yù)定義別名(Predefined Aliases)部分。

我把“cmd+n”設(shè)置為了通過 AdvancedNewFile 創(chuàng)建新文件的快捷方式。該快捷鍵可以通過修改 Key Bindings – User file 來實現(xiàn) Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings – User:

Python
1
2
3
[
  { "keys": ["cmd+n"], "command": "advanced_new_file_new"}
]

你也可以更改默認(rèn)打開的文件夾路徑:Sublime Text > Preferences > Package Settings > AdvancedNewFile > Settings – User

Python
1
{"default_initial": "/Users/michaelherman/Documents/repos"}

這樣我創(chuàng)建新文件的時候,/Users/michaelherman/Documents/repos將會自動被添加到路徑最前方,因為99%的情況下我都會把我的腳本放在這個路徑下。

Emmet

Emmet,以前叫做 Zen Coding,讓你可以通過簡單的縮寫來創(chuàng)建 HTML 或者 CSS 的代碼塊。

例如,你只需要輸入感嘆號!,然后按下 tab 鍵,便可以在一個 HTML 文件中創(chuàng)建一段帶有幾個基本標(biāo)簽的 HTML5 文檔類型的代碼:

Python
1
2
3
4
5
6
7
8
9
10
<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body>
</body>
</html>

請查看官方文檔或者速查手冊獲取更多信息。

Markdown Preview

Markdown Preview 可以用來預(yù)覽和編譯 markdown 文件。

你可以打開 Package Manager 然后輸入 Markdown Preview 來查看可用的命令:

  • Markdown Preview: Python Mrakdown: 在瀏覽器中預(yù)覽
  • Markdown Preview: Python Mrakdown: 導(dǎo)出 HTML 文件
  • Markdown Preview: Python Mrakdown: 拷貝到剪貼板
  • Markdown Preview: Github風(fēng)格Markdown: 在瀏覽器中預(yù)覽
  • Markdown Preview: Github風(fēng)格Markdown: 導(dǎo)出 HTML 文件
  • Markdown Preview: Github風(fēng)格Markdown: 拷貝到剪貼板
  • Markdown Preview: 打開Markdown速查手冊

一旦你完成轉(zhuǎn)換,你之后的所有保存都會立即反映到轉(zhuǎn)換的文件中。

快捷鍵

  1. 跳轉(zhuǎn)到任意內(nèi)容 (“cmd+p”) 用來快速查找和打開文件。你僅僅只需要工程中文件的一部分路徑或者文件名你就可以很容易的打開這個文件。這在一個大型的 Django 工程中顯得非常方便。
  2. 跳轉(zhuǎn)到指定行 (“ctrl+g”) 讓你在當(dāng)前文件中跳轉(zhuǎn)到指定行數(shù)。
  3. 跳轉(zhuǎn)到標(biāo)志 (“cmd+r”) 可以列出當(dāng)前文件中所有的函數(shù)或者類,讓你更方便查找。你可以通過輸入關(guān)鍵字來查找你所需要的函數(shù)或者類。
  4. 跳轉(zhuǎn)到行首 (cmd+left-arrow-key)跳轉(zhuǎn)到行尾 (cmd+right-arrow-key)
  5. 刪除當(dāng)前行(ctrl+shift+k)
  6. 多重編輯 是我迄今為止最喜歡的快捷鍵
    Python
    1
    2
    1.選定一個單詞,點(diǎn)擊 **cmd+d** 來選擇同樣的單詞,再次點(diǎn)擊 **cmd+d** 繼續(xù)選擇下一個單詞…
    2.或者 **cmd+單擊”** 來指定多個你想要同時修改的地方。
  7. 塊編輯 (option+left-mouse-click) 用于選擇一整塊的內(nèi)容。通常在整理 CSV 文件的時候用于刪除空白內(nèi)容。

如果想了解更多關(guān)于快捷鍵的內(nèi)容,請看一下這篇文章。

自定義命令

你可以很容易地使用 Python 來編輯你自己的自定義命令和快捷鍵組合。目前我個人使用的有以下這些:

  1. 拷貝當(dāng)前文件路徑到剪貼板 – 鏈接
  2. 關(guān)閉除當(dāng)前活動標(biāo)簽頁以外的所有其他標(biāo)簽頁 – 鏈接

通過文件選項打開你的 Package 文件夾(Sublime > Preferences > Browse Packages),然后打開 User 文件夾,接下來將上述的 Python 文件添加到 “/Sublime Text 3/Packages/User” 文件夾中。最后請在 Key Bindings – User file (Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings – User) 文件中完成快捷鍵綁定。

Python
1
2
3
4
5
6
7
8
9
10
11
12
[
  // Copy file name
  {
    "keys": ["cmd+shift+c"],
    "command": "copy_path_to_clipboard"
  },
  // Close all other tabs
  {
    "keys": ["cmd+alt+w"],
    "command": "close_tabs"
  }
]

額外資源

  1. Community-maintained documentation
  2. Package Manager documentation
  3. Unofficial documentation reference
  4. Pimp my Editor – Presentation

總結(jié)

我希望你能夠通過閱讀這篇文章將一些上面提到一些插件整合到你的 ST3 中。同時希望你能夠改造自己的配置文件來創(chuàng)建一些屬于自己的自定義設(shè)定,以此來提升你的工作效率。如果你有任何的建議或者意見,請在下方的評論欄中留下你的評論。 最后,請到這個 repo 中查看 dotfiles 文件夾,其中包含了我上文中所提到的一些文件。

謝謝!

Derrick Kearney 編輯。非常感謝!

1 贊 9 收藏 3 評論

關(guān)于作者:Lane

@Lane麟 個人主頁 · 我的文章 · 11 ·    

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    成人欧美精品一区二区三区| 大香蕉网国产在线观看av| 午夜成年人黄片免费观看| 九九热精品视频免费观看| 亚洲欧美日韩国产成人| 青青操在线视频精品视频| 久久精品一区二区少妇| 中文字字幕在线中文乱码二区| 国产一区二区精品丝袜| 免费播放一区二区三区四区| 日韩熟妇人妻一区二区三区| 欧美一级特黄大片做受大屁股| 最近最新中文字幕免费| 白白操白白在线免费观看 | 国产午夜福利一区二区| 国产成人精品在线一区二区三区| 真实国产乱子伦对白视频不卡| 黄色国产一区二区三区| 亚洲精品蜜桃在线观看| 麻豆果冻传媒一二三区| 日韩亚洲精品国产第二页| 日韩在线免费看中文字幕| 99国产成人免费一区二区| 久热人妻中文字幕一区二区| 成人国产一区二区三区精品麻豆| 久久精品国产一区久久久| 黄色在线免费高清观看| 成人国产激情在线视频| 欧美一区二区三区播放| 亚洲精品欧美精品一区三区| 国语对白刺激高潮在线视频| 深夜福利欲求不满的人妻| 正在播放国产又粗又长| 国产精品激情对白一区二区| 午夜精品久久久免费视频| 日韩人妻毛片中文字幕| 久久精品国产在热久久| 日本加勒比在线观看一区| 国产传媒中文字幕东京热| 乱女午夜精品一区二区三区 | 亚洲最新一区二区三区|