設定 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"

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.