Sublime text 3 настройка для python – Как настроить подсказки в sublime text на linux для python3 и подключенных библиотек?

AlexKorablev.ru – Sublime Text 3 как Python IDE

Пока на RealPython разжигают войну IDE и объясняют как настроить под разработку на Python под Sublime, VIM и Emacs, я расскажу почему я переехал (пока) на Sublime Text 3, как я его настроил. А также отмечу чего в нем не хватает для счастливой разработки.

PyCharm замечательная IDE для Python. Это несомненно, но если нужно разрабатывать full-stack, то им одним не обойтись. На работе это не проблема. Но вот дома покупать лицензию на все продукты JetBrains ради экспериментов накладно. Две недели назад я решил посмотреть альтернативы. Vim и Emacs отвалились из-за их идеологии и сложности в настройке. Eclipse заставляет тормозить даже очень мощные компьютеры, что говорить про мой слабенький домашний лэптоп. По факту в кандидатах остался только Sublime Text.

Он у меня и так открыт постоянно. В нем я веду TODO-листы, в нем пишу в блог. В нем же открываю большую часть файлов, которые не являются частью проекта. При этом больших требований к IDE у меня нет. Нужны в общем-то только эти вещи:

  • Подсветка синтаксиса
  • Умный автокомплит
  • Переход к определениям
  • Проверка файла на ошибки
  • Автоимпорт

Подсветка синтаксиса в Sublime есть из коробки. Остальное настраивается достаточно легко. Pycharm'овский дебагер легко заменяется.

Мои настройки саблайма похожи на предложенный вариант от RealPython. В качестве базы для IDE я использую Anaconda. Настройки не менял. Только в пользовательских настройках прописал интерпретатор, иначе не работал переход к определению, да выключил линтинг:

{
        "anaconda_linting": false,
        "python_interpreter": "python"
}

Анаконда использует pyflakes в качестве линтера. Он работает прекрасно. Но я предпочитаю использовать Sublime​Linter-pyflakes (требует для своей работы SublimeLinter). Подойдет если нужны одинаковые настройки линтеров под разные языки.

Для проверки форматирования я использую Sublime​Linter-pep8 с такими настройками:

    "pep8": {
    "@disable": false,
    "args": [],
    "excludes": [],
    "ignore": "",
    "max-line-length": 120,
    "select": ""
},

Проверка на достаточно большом и сложном проекте показала, что автокомплит и переход к определениям работает не хуже, чем в PyCharm.

Интеграция с Git обеспечивают Git и GitGutter. Первый помогает в простых случаях взаимодействовать с гитом не выходя из редактора, добавляя команды гита в Control Panel. Второй - подсвечивает измененные строки в файле.

По итогам двух недель единственная сложность, которая возникла - разрешение конфликтов мерджа. Инструмент для мерджа в Pycharm незаменим. И пока похоже, что только он сможет заставить меня отказаться от использования Sublime Text.

Настройка Sublime Text 3 для Python разработки

Выбор редактора (среды для разработки), наверное, главное событие в жизни каждого разработчика. Я тоже поначалу не мог долго определиться какой редактор использовать, но потом, лет 8-9 назад установил Sublime Text и все - вопрос с редактором был закрыт раз и навсегда. Да, за эти года я иногда пробовал научиться работать в vim, но не смог, ну а на новомодные Atom, PyCharm или VS Code я вообще не смотрел. Поэтому я хотел бы рассказать про то, как я использую Sublime Text 3 и почему мне не нужен IDE в 2018 году.

Главная причина, почему мне не нужен IDE - это, конечно, база расширений для Саблайма, которая находится на packagecontrol.io и покрывает любой из языков, на которых я программирую. Так как блог о Python, то я расскажу только о расширениях для Python, но у меня также есть установленные плагины для JavaScript, flow, TypeScript, Elm и Rust.

В Python же все начинается с установки MagicPython от Юрия Селиванова, расширения, которое добавляет поддержку подсветки всех всех новомодных фич Python, и хоть авторы Sublime Text пытаются улучшать поддержку базового Python от релиза к релизу, нам это не нужно после установки и настройки MagicPython.

Дальше. Было бы неплохо иметь автодополнение для Python, да? Поэтому следующим делом, устанавливаем SublimeJEDI от Сережи Русских. Благодаря движку JEDI, который используется в IPython, к примеру, на выходе мы получаем автодополнение нашей мечты. Но для этого в настройках проекта нам нужно сделать две вещи,

  1. Задать путь к python_interpreter, в общем случае это "~/Projects/<project>/.venv/bin/python", чтоб JEDI использовал все зависимости, установленные в проекте
  2. Настроить python_package_paths. Опять же в общем случае это ["~/Projects/<project>"]

Все, теперь мы получили автодополнение к любому import стейтменту и много других фич, опять же благодаря движку JEDI.

Идем дальше. Линтинг. Тут нам нужны SublimeLinter-flake8 и SublimeLinter-contrib-mypy (а куда без type annotations в 2018 то году?). По дефолту, они будут пытаться использовать стандартный Python, установленный в системе, но так как в моем случае набор flake8 плагинов от проекта к проекту отличается, я задаю executable для этих линтеров в файле настройки проекта (<project>.sublime-project) как,

  1. "SublimeLinter.linters.flake8.executable": "~/Projects/<project>/.venv/bin/flake8" для настройки SublimeLinter-flake8
  2. "SublimeLinter.linters.mypy.executable": "~/Projects/<project>/.venv/bin/mypy" для настройки SublimeLinter-contrib-mypy

Отдельно вы возможно захотите настроить сам SublimeLinter, но так или иначе про ошибки линтера мы узнаем куда быстрее и прямо в редакторе.

По большому счету с главными расширениями, которые превращают Sublime Text 3 в удобную среду разработки на Python мы закончили, но мне также хотелось бы упомянуть еще некоторые плагины, которые могут точно пригодиться,

  • sublack - автоформатирование Python файлов при помощи black. Нужная вещь, когда вы работаете в команде и не хотите на код ревью тратить время о спорах насчет форматирования Python кода.
  • editorconfig-sublimetext - также в 2018 году не зачем спорить о табах vs пробелах или отступах. Единократно кладем .editorconfig в корень проекта, а дальше Sublime Text 3 автоматически применяет необходимые настройки форматирования для любых файлов.
  • DocBlockr - упрощает работу с комментариями в коде. Конечно, этот плагин больше применим для JavaScript кода, но и для Python иногда бывает полезен.
  • GitGutter - просмотр того, как изменился блок кода, прямо в Sublime Text. Очень нужная вещь, для разработчиков, которые не любят бессмысленный закомментированный старый код.
  • Terminus - и хоть я постоянно держу открытым Terminal.app иногда бывает удобно открыть терминал прямо в соседней вкладке Sublime Text.

Ну и напоследок чуть о внешнем виде. Все это время я использую схему подсветки кода Tomorrow-Night, так что очень был рад, когда настроил Boxy Theme для внешнего вида Sublime Text, используя это же цветовое решение. В итоге, мой Sublime Text выглядит следующим образом,

А вот шаблон настроек, который я использую для своих проектов,

{
    "folders":
    [
        {
            "file_exclude_patterns": [
                ".install*",
                "*.lock",
                "*-lock.json"
            ],
            "folder_exclude_patterns": [
                ".*cache",
                "node_modules"
            ],
            "path": "/Users/playpauseandstop/Projects/<project>"
        }
    ],
    "settings": {
        "python_interpreter": "/Users/playpauseandstop/Projects/<project>/.venv/bin/python",
        "python_package_paths": [
            "/Users/playpauseandstop/Projects/<project>"
        ],
        "SublimeLinter.linters.flake8.executable": "/Users/playpauseandstop/Projects/<project>/.venv/bin/flake8",
        "SublimeLinter.linters.mypy.executable": "/Users/playpauseandstop/Projects/<project>/.venv/bin/mypy"
    }
}

Вот и получается, что Sublime Text 3 с таким набором расширений - это прекрасный редактор для программирования на Python.

Настройки Sublime Text 3 для полноценной работы с python

Sublime Text 3 (ST3) is lightweight, cross-platform code editor known for its speed, ease of use, and strong community support. It’s an incredible editor right out of the box, but the real power comes from the ability to enhance its functionality using Package Control and creating custom settings.

In this article, we’ll look at how to setup Sublime Text for full stack Python development (from the front to back), enhance the basic functionality with custom themes and packages, and use many of the commands, features, and keyword shortcuts that make ST3 so powerful.

main_sublime_text_3_screen

This tutorial assumes you’re using a Mac and are comfortable with the terminal. If you’re using Windows or Linux, many of the commands will vary, but you should be able to use Google to find the answers quickly given the info in this tutorial.

Before we start, let’s address what I mean exactly by “full stack”.

In today’s world of HTML5 and mobile development, Javascript is literally everywhere. EVERYWHERE. Python coupled with a framework such as Django or Flask is not enough. To really develop a website from end-to-end, you must be familiar with Javascript (and the various Javascript frameworks), REST APIs, responsive design, and of course HTML and CSS, among others.

And let’s face it: Like any craftsman, in order to be the best programmer you can be, your tools must be sharp. Your development environment must be setup for full stack development – which is exactly what we are going to do right now…

Features

Let’s start by looking at a few of the default features of Sublime Text 3…

  1. Split Layouts allow you to arrange your files in various split-screens. This is useful for test driven development (Python code on one screen, test scripts on another) or when working on the front end (HTML on one screen, CSS and/or Javascript on another).

    st3_split_screen

  2. Vintage Mode provides you with vi commands for use within ST3.

  3. Chrome-like Tabs make navigating and editing several files much simpler.
  4. Automatic loading of the last session re-opens all files and folders you had open when you closed the editor the last time. I leave ST3 open all the time, with various projects open – so if I reset the computer, it opens the files and folders right back up.
  5. Code Snippets increase your productivity by giving you the ability to create common pieces of code with a single keyword. There are a number of default snippets. For example, open a new file and type in “lorem” then press tab. You should get a paragraph of lorem ipsum text. Also, if you type “defs” then press tab in a Python file it will setup a generic function.

    You can also create your own snippets: Tools > New Snippet. Refer to the documentation for help, and also check out some of my snippets here.

Customizing Sublime Text 3

After downloading ST3 …

Install the subl command line tool

Like the mate command for TextMate, Sublime Text includes a command line tool called subl that allows you to open one file, or an entire directory of files and folders, from the terminal.

To enable this command, create a symbolic link to the subl binary:

1
$ sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/bin/subl

Ensure that the link works by opening Sublime:

If that didn’t work, you probably need to add /bin to your Path:

Then repeat step one.

If you are still having trouble, check out this article for help. Also, here are links for help on creating the symbolic links in Windows and Linux.

Now you can open a file or directory using the following commands:

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

If there are spaces in the path, you must surround the entire path in double quotes:

To view all the commands, open up the help file:

Install Package Control

To begin taking advantage of the various packages for extending Sublime’s functionality, you need to install the package manager called Package Control – which you must install manually. Once installed, you can use Package Control to install/remove/upgrade all other ST3 packages.

  1. To install, copy the Python code for Sublime Text 3 found here. Click View > Show Console to open the ST3 console. Paste the code into the console. Press enter. Reboot ST3.

  2. You can now install packages by using the keyboard shortcut cmd+shift+P. Start typing install until Package Control: Install Package appears. Press enter and search for available packages.

  3. Some other relevant commands are:

    • List Packages shows all your installed packages
    • Remove Packages removes a specific package
    • Upgrade Package upgrades a specific package
    • Upgrade/Overwrite All Packages upgrades all your installed packages

    Check out the official documentation to view more commands.

    st3_package_control

Create a Custom Settings File

You can fully configure Sublime Text using JSON-based settings files, making it easy to transfer, or synchronize, your customized settings to another system. First, we need to create our customized settings. It’s best to create a base file for all environments as well as language-specific settings files.

To set up a base file click Sublime Text > Preferences > Settings – User. Add an empty JSON object to the file and add your settings like so:

1
2
3
4
5
6
7
{
  // base settings
  "auto_complete": false,
  "sublimelinter": false,
  "tab_size": 2,
  "word_wrap": true
}
  1. For language specific settings click Sublime Text > Preferences > Settings – More > Syntax Specific – User. Then save the file using the following format: LANGUAGE.sublime-settings. So, for Python-specific settings, save the file as Python.sublime-settings.

  2. You can obviously configure your settings to your liking; however, I highly recommend starting with my base and Python-specific settings – then making changes as you see fit.

  3. Optional: You can use Dropbox to sync all your settings. Simply upload your settings files to Dropbox and load them from there to sync the Sublime environments on all your machines.

  4. A good reference for settings can be found at the Sublime Text Unofficial Documentation.

Themes

ST3 also gives you the option to change the overall theme to better suit your personality. Design your own. Or, if you’re not artistically inclined, you can download one of the various custom themes designed by the Sublime community through Package Control. Check out ColorSublime to preview themes before installing them.

The ever popular Soda Dark Theme and the minimal Flatland are two of my personal favorites.

After installing a theme, make sure to update your base settings, Sublime Text > Preferences > Settings – User:

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

Packages

Besides the packaged themes, I take advantage of the following packages to speed up my workflow.

SideBarEnhancements

SideBarEnhancements extends the number of menu options in the sidebar, speeding up your overall workflow. Options such as “New file” and “Duplicate” are essential and should be part of ST3 out of the box. The “Delete” option alone makes it worth downloading. This feature simply sends files to the Trash, which may seem trivial but if you delete a file without it, it’s very difficult to recover unless you’re using a version control system.

st3_sidebar_enhancements

Download this now!

Anaconda

Anaconda is the ultimate Python package; it adds a number of IDE-like features to ST3 including:

You can view all of the features here, or within the README file in ST3’s Package Settings: Sublime Text > Preferences > Package Settings > Anaconda > README.

SublimeCodeIntel is another popular package, which has many of the same features as Anaconda. I suggest testing them both out.

Djaneiro

Djaneiro supports Django templating and keyword highlighting and provides useful code snippets (tab completions) for Sublime Text. The snippet system is an incredible timesaver. You can create common Django blocks with only a few keystrokes for templates, models, forms, and views. Check out the official documentation to see a list of snippets.

My personal favorites are for templating: var creates {{ }} and tag creates {% %}

requirementstxt

Requirementstxt provides autocompletion and syntax highlight-lighting as well as a nice version management system for your requirements.txt files.

SublimeLinter

SublimeLinter is a framework for ST3 linters. The package itself does not include any actual linters; those must be installed separately via Package Control using the SublimeLinter-[linter_name] naming syntax. You can view official linters here. There are also a number of third party linters, which can be viewed in Package Control. Check out the installation instructions here.

For Python linting, I recommend using SublimeLinter-pyflakes and SublimeLinter-pep8.

I also use SublimeLinter-jshint, SublimeLinter-pyyaml, SublimeLinter-csslint, SublimeLinter-html-tidy, and SublimeLinter-json.

Most of these linters have dependencies associated with them, so please read the installation instructions before installing.

You can customize each linter in the user-defined SublimeLinter.sublime-settings file: Sublime Text > Preferences > Package Settings > SublimeLinter > Settings – User. For example, I ignore the following pep8 errors and warnings:

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 shows little icons in ST3’s gutter area that indicate whether a line has been inserted, modified, or deleted since the last commit.

st3_gitgutter

If you want support for a number of distributed version control systems (Git, SVN, Bazaar and Mercurial), check out Modific

FTPSync

FTPSync syncs your project with your remote files. Simply open the file to download it (if the remote file is newer than your local file) and upload it to your remote server with every save. Great way to keep your local and remote(s) in sync. You’ll want to make sure to add at least one remote connection by clicking Sublime Text > Preferences > Package Settings > FTPSync > Setup FTPSync.

Sample settings:

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
  }
}

I personally set the password to null because I don’t want it visible in that file. FTPSync just asks for my password after each save.

AdvancedNewFile

AdvancedNewFile is used to create a new folder or file from within ST3 with key bindings alone:

Simply bring up the AdvancedNewFile input through the appropriate key binding. Then, enter the path, along with the file name into the input field. Upon pressing enter, the file will be created. In addition, if the directories specified do not yet exist, they will also be created. By default, the path to the file being created will be filled shown in the status bar as you enter the path information.

For a more detailed explanation on its usage, check out the documentation on Github. Be sure to read about Tab Completion as well as Predefined Aliases.

I replaced the normal “cmd+n” command to create a new file with AdvancedNewFile by adding the following code to the Key Bindings – User file: Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings – User:

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

You can also setup a default directory to start with: Sublime Text > Preferences > Package Settings > AdvancedNewFile > Settings – User

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

Now when I create a new file, the /Users/michaelherman/Documents/repos string is automatically inserted first, since 99% of the time I store all my scripts in that directory.

Emmet

Emmet, previously known as Zen Coding, uses simple abbreviations to generate HTML or CSS code snippets.

For example, if you type a bang, !, then press tab in an HTML file ,the HTML5 doctype and a few basic tags are generated:

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>

Check out the official documentation as well as this handy cheat sheet for more info.

Markdown Preview

Markdown Preview is used for previewing and building markdown files.

To use, open the Package Manager then type Markdown Preview to show the available commands:

  • Markdown Preview: Python Markdown: Preview in Browser
  • Markdown Preview: Python Markdown: Export HTML in Sublime Text
  • Markdown Preview: Python Markdown: Copy to Clipboard
  • Markdown Preview: Github Flavored Markdown: Preview in Browser
  • Markdown Preview: Github Flavored Markdown: Export HTML in Sublime Text
  • Markdown Preview: Github Flavored Markdown: Copy to Clipboard
  • Markdown Preview: Open Markdown Cheat sheet

Once converted, the output file is updated on each subsequent save.

Keyboard Shortcuts

  1. Goto Anything (“cmd+p”) is used for quickly finding and opening files. Just type in a part of a path and filename within a project and you can easily open that file. This is great for quickly opening files in large Django projects.
  2. Goto Line Number (“ctrl+g”) takes you to a specific line number in an active file.
  3. Goto Symbol (“cmd+r”) lists all functions and classes within a file to make them easier to find. Simply start typing the one you want.
  4. Go to beginning of line (cmd+left-arrow-key) and Go to end of line (cmd+right-arrow-key)
  5. Delete current line (ctrl+shift+k)
  6. Multi-Edit is by far my favorite shortcut
    1. Select a word, press “cmd+d” to select the next same word, then press “cmd+d” again to select the next same word…
    2. Press “cmd+click” to create a cursor for editing every where you click
  7. Block select (“option+left-mouse-click) is used to select a block of text. Perfect for removing blank space when formatting a CSV file.

For more shortcuts, take a look at this article.

Custom Commands

It’s easy to write your own custom commands and key bindings with Python. I currently use …

  1. Copy the path of the current file to the clipboard – link
  2. Close all tabs except the active one – link

Install these by adding the Python files to your “/Sublime Text 3/Packages/User” directory via the file menu (Sublime > Preferences > Browse Packages), then opening the User directory. To complete the setup, bind them from the Key Bindings – User file (Sublime Text > Preferences > Package Settings > AdvancedNewFile > Key Bindings – User).

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"
  }
]

Additional Resources

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

Conclusion

I hope this article was helpful to you and that you were able to integrate some of the above packages and custom settings along with your own based on your personal preferences to improve your workflow. If you have any comments or suggestions of your own, please let me know in the comments below. Finally, check out the dotfiles folder in this repo to view all resources that I created.

Cheers!

Edits made by Derrick Kearney. Thank you!

Sublime Text 3 | Recipes

На первый взгляд Sublime Text это просто удобный и быстрый текстовый редактор с подсветкой синтаксиса. Хотя, пока не прочитаешь про хитрости и быстрые кнопки, не такой и удобный. Но немного пошаманив c плагинами получается неплохая IDE.

Тут все просто, качаем для нужной ОС и ставим.

О хитростях можно почитать в этой статье, хотя она и для Sublime Text 2, но актуально и для версии 3. Могу добавить отображение всех классов и методов через Ctrl+R, переход на конкретную строку - Ctrl+G. Ну и многое можно посмотреть в меню.

Плагины - это то, что поможет сделать из Sublime Text IDE. Для начала установим Sublime Package Control, он поможет легко управлять плагинами.

После установки в меню появился пункт Package Control. Большинство плагинов можно уже найти в списке предложенных для установки. Опишу те, которые я уже успел опробовать и которые понравились. Если нет линка или описания на установку, значит можно найти в списке Package Control.

Djaneiro

Плагин добавляет подсветку для шаблонов Django и кучу снипетов для быстрого кодинга.

Babel

Подсветка синтаксиса для ES6 JavaScript и React JSX.

Python Improved

Улучшенная подсветка синтасиса для Python 2 и 3. Чтобы работало с SublimeLinter, необходимо в настройке syntax_map последнего добавить:

"pythonimproved": "python"

SublimeLinter 3

Просто "must have". Документация. Устанавливаем через Package Control.

Теперь необходимо установить необходимые вам валидаторы. Выполняем уже известный Package Control: Install Package, набираем SublimeLinter- и ищем необходимые. Валидаторы обычно требуют установки необходимых библиотек в систему, при установке валидатора вас отошлют на инструкцию по установке всего необходимого, просто следуйте ей. Sublime Text 3 использует Python 3, так что не забываем ставить все необходимое для Python 3.

Список валидаторов, которые я обычно использую: SublimeLinter-pep8, SublimeLinter-pylint, SublimeLinter-jshint(или SublimeLinter-eslint для ES6 и JSX), SublimeLinter-pyflakes.

pylinter обычно показывает большое количество предупреждений. В документациия SublimeLinter можно найти описание настроек проверки. Пример настроек для проверялок:

"linters": {
    "jshint": {
        "@disable": false,
        "args": [],
        "excludes": []
    },
    "pep8": {
        "@disable": false,
        "args": [],
        "excludes": [],
        "ignore": "",
        "max-line-length": 100,
        "select": ""
    },
    "pyflakes": {
        "@disable": false,
        "args": [],
        "excludes": []
    },
    "pylint": {
        "@disable": false,
        "args": [
            "--max-line-length=100"  // set max line length to 100
        ],
        "disable": "C0111,C1001,R0903,F0401,C0111,R0201,E1101,W0232,W0141",  // ignore some warnings
            "enable": "",
            "excludes": [],
            "paths": [],
            "rcfile": "",
            "show-codes": true
    }
},

Terminal

Через контекстное меню открываем терминал в любой папке.

SublimeJEDI

Добавляет полноценное автодополнение для Python. Настройки описаны в документации.

Для английского языка уже все есть, достаточно только добавить в настройки:

"spell_check": true,
"dictionary": "Packages/Language - English/en_US.dic"

Как добавить другие словари можно прочитать здесь. Кнопкой F6 можно включать/отключать.

Открываем папку с проектом. Через меню Projects сохраняем. Теперь можно его можно найти в Recent Projects. Там же можно добавить папку в проект, например для просмотра исходников стороннего приложения, используемого в проекте.

Добавлю сюда пример своих настроек(что бы не потерять :).

{
    "spell_check": true,
    "dictionary": "Packages/Language - English/en_US.dic",
    "highlight_line": true,
    "translate_tabs_to_spaces": true,
    "trim_trailing_white_space_on_save": true,
    "auto_complete_triggers": [{"selector": "source.python", "characters": "."}]
}

Полезный статьи:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *