設定Sublime Text編輯器的Python開發環境

來源:互聯網
上載者:User
  最近,當我主要使用Python開發環境編輯的時候,我開始越來越多地用到Sublinme Text 2.這篇文章主要說明了能讓Python的編程者使用更方便的一些設定和調整。

 為何選擇Sublime Text?

  我以前一直是TextMate的忠實使用者。這是一個輕量級的、開源的軟體,作為OS X的本地應用,具有很好的Mac風格。不過,雖然TextMate是一個很棒的編輯器,有時候還是顯得功能不夠。

  我用過一些功能更強的軟體,例如 加上Python外掛程式的IntelliJ IDEA。 我特別喜歡它的debugger和test runner。不過,一個像IntelliJ這樣的全功能的IDE對於中小項目來說還是顯得過於龐大。

  最近幾周我開始越來越多的使用 Sublime Text。當我將它安裝好之後,感覺非常不錯。它確實非常快,自動週期性更新,以及更棒的是完全支援跨平台。對我來說,它最終勝過TextMate的地方是Sublime強大的外掛程式子系統。對於Python開發,有不少外掛程式可以讓你開發起來更流暢、更有樂趣。

  我現在仍然在不同的項目之間切換編輯器。不過我發現對應Python開發,Sublime在輕量級的編輯器和全功能的IDE之間有著很好的平衡。

 字型的選擇

  Ubuntu Mono 是非常非常不錯的字型。前些天我剛從 Menlo 切換過來,這絕對不讓人後悔。

  在我的15寸的MacBook上,Ubuntu Mono的16號字非常適合。1680 × 1050的解析度對於一個側邊欄加兩個編輯器視窗(自動調整到80個字元寬)剛好合適。

  如果你打算認真的挑選一下字型, slant.co的這篇文章 寫的不錯。它包含了大部分流行的編程方面的字型的及下載連結。

 安裝外掛程式

  正如之前提到的, Sublime 有一個非常豐富的外掛程式系統。而我當前使用的外掛程式如下:

  • Package Control 在 Sublime 裡直接安裝附加外掛程式的包管理器。這是唯一一個你必須手動安裝的外掛程式。這邊列出的其他所有外掛程式都可以通過 Package Control 來安裝。也可以通過它來更新已安裝過的外掛程式。簡單得想做是 Sublime packages 的 apt-get 就行了。


  • Color Scheme - Tomorrow Night Color schemes 決定了編輯器介面文法高亮的字型顏色。這是一個非常酷的暗黑系樣式。


  • Theme - Soda Dark Themes 影響 Sublime 介面元素的顏色和風格。這個非常適合 Tomorrow Night 的色彩配置。


  • SideBarEnhancements 這個外掛程式提供了側邊欄附加的操作功能表選項,例如"New file","New Floder"等。這些本應當預設就該有的,卻沒有。


  • All Autocomplete Sublime 預設的自動完成只關注當前檔案的單詞。這個外掛程式擴充了其自動完成的單字清單到所有開啟的檔案。


  • SublimeCodeIntel 為部分語言增強自動完成功能,包括了 Python 。這個外掛程式同時也可以讓你跳轉到符號定義的地方,通過按住 alt 並點擊符號。非常方便。


  • SublimeREPL 允許你在編輯介面直接運行 Python 解譯器。我傾向於在單獨的終端視窗用 bpython 來運行,但有時 SublimeREPL 是很有協助的。


  • GitGutter 在編輯器的凹槽區,依照 Git ,增加小表徵圖來標識一行是否被插入、修改或刪除。在 GitGutter 的 readme 中有說明如何更改顏色表徵圖來更新你的色彩配置檔案。


  • Pylinter 這個外掛程式提供了目前我所見到的最好的 pylint 編輯器整合。它自動檢查 .py 檔案,無論其何時被儲存,並且會直接在編輯介面顯示 pylint 違規。它還有一個捷徑來禁用局部的 pylint 檢查,通過插入一個 #pylint: 禁用注釋。這個外掛程式對於我確實非常有用。

 設定檔

  Sublime Text 的一個優點就是它的所有配置都是簡單的基於 JSON 的設定檔。這使得你可以很容易的將配置轉到另一個系統中。我也見過一些人使用 Dropbox 自動同步他們所有電腦上的配置。

  Preferences.sublime-settings 配置了 Sublimede 的顯示和行為.你可以在sublime 中通過 Preferences > Settings — User 開啟並編輯此檔案。我使用如下配置:

{    // Colors    "color_scheme": "Packages/Tomorrow Color Schemes/Tomorrow-Night.tmTheme",    "theme": "Soda Dark.sublime-theme",    // Font    "font_face": "Ubuntu Mono",    "font_size": 16.0,    "font_options": ["subpixel_antialias", "no_bold"],    "line_padding_bottom": 0,    "line_padding_top": 0,    // Cursor style - no blinking and slightly wider than default    "caret_style": "solid",    "wide_caret": true,    // Editor view look-and-feel    "draw_white_space": "all",    "fold_buttons": false,    "highlight_line": true,    "auto_complete": false,    "show_minimap": false,    // Editor behavior    "scroll_past_end": false,    "highlight_modified_tabs": true,    "find_selected_text": true,    // Word wrapping - follow PEP 8 recommendations    "rulers": [ 72, 79 ],    "word_wrap": true,    "wrap_width": 80,    // Whitespace - no tabs, trimming, end files with \n    "tab_size": 4,    "translate_tabs_to_spaces": true,    "trim_trailing_white_space_on_save": true,    "ensure_newline_at_eof_on_save": true,    // Sidebar - exclude distracting files and folders    "file_exclude_patterns":    [        ".DS_Store",        "*.pid",        "*.pyc"    ],    "folder_exclude_patterns":    [        ".git",        "__pycache__",        "env",        "env3"    ]}

  Pylinter.sublime-settings配置了pylinter 外掛程式。我使用下面的配置讓 Pyhton 在儲存時自動規範,並對違反規範顯示表徵圖。

{    // Configure pylint's behavior    "pylint_rc": "/Users/daniel/dev/pylintrc",    // Show different icons for errors, warnings, etc.    "use_icons": true,    // Automatically run Pylinter when saving a Python document    "run_on_save": true,    // Don't hide pylint messages when moving the cursor    "message_stay": true}

 按鍵綁定

  Sublime 的按鍵綁定也是全部可配置的基於JSON的 sublime-keymap 設定檔。我修改了一些預設配置以更好的配合我的 TextMate / IntelliJ 肌肉記憶。你可以完全不修改。如果你想,修改很簡單,並可以跨平台使用。我使用如下的綁定:

[    // Rebind "go to file" to cmd+shift+O    { "keys": ["super+shift+o"], "command": "show_overlay", "args": {        "overlay": "goto",        "show_files": true    }},    // Rebind swap line up/down to cmd+shift+up/down    { "keys": ["super+shift+up"], "command": "swap_line_up" },    { "keys": ["super+shift+down"], "command": "swap_line_down" },    // Delete a line with cmd+delete    { "keys": ["super+backspace"], "command": "run_macro_file", "args": {        "file": "Packages/Default/Delete Line.sublime-macro"    }},    // Reindent selection with cmd+alt+L    { "keys": ["super+alt+l"], "command": "reindent"}]

 命令列工具

  同 TextMate 的 mate 類似,Sublime Text 包含了一個命令列工具,允許你通過 shell 開啟編輯器。工具名為 sublis,預設不可用。要使之生效,在任一 shell 中運行下面:

ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

  要將 Sublime 作為 git 互動命令的預設編輯器使用——舉例,撰寫提交資訊——只需添加下面一行到你的 ~/.profile 檔案:

export GIT_EDITOR="subl --wait --new-window"

 更多靈感

  我希望這篇安裝指南能夠幫到你。如果你有任何建議或意見,敬請 Twitter 我一行或給我發郵件。另外,感謝下面的作者及其關於配置 sublime 的作品。它們啟發了我很多:

  • Kenneth Reitz: Sublime Text 2 Love


  • Drew Barontini: Sublime (2)


  • Filippo Pacifici: Python development with Sublime Text 2 tips and tricks


  • opensourcehacker.org: Sublime Text 2 tips for Python and web developers

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.