klen.github.io

in Blog

VIM плагин для комфортной работы с python

Год облачного хостинга от Amazon — бесплатно Ctrl→
←Ctrl Urbanairship, push-уведомления для мобильных приложений

Содержание:


В своей работе я использую редактор VIM. Я довольно долго шел к этому выбору, перепробовав множество решений. Мне сразу не понравились большие IDE, вроде Eclipse (и основанных на нем систем) или IDEA. Во-первых это JAVA и медлительность, хотя в последнее время ситуация улучшается. Во-вторых сложность самостоятельного расширения функциональности. Меня почти устраивали Textmate (osx) и его аналог E-texteditor (windows) с которыми я проработал продолжительное время, но так случилось, что судьба свела меня с VIM :)

Не буду разводить холивар и расписывать все его достоинства, опишу лишь основные преимущества сыгравшие для меня важнейшую роль.

  • Легкая расширяемость. Расширения кроме несложного встроенного vimlang, можно писать практически на чем угодно: python, ruby, tcl, shell.
  • Независимость от настроенной рабочей системы. Дайте мне терминал и я в пару команд получу на нем работающий VIM с моими настройками и плагинами. Именно поэтому VIM-еры работают на удаленных терминалах также комфортно как и на локальной машине.
  • Мощность. При казалось бы простоте и аскетизме VIM очень гибко настраивается. Я еще не встречал функциональности в IDE которой бы не мог при желании получить в VIM.
  • VIM-modes. Да именно инопланетный режим работы VIM стал для меня наибольшим плюсом. У меня нет мышки, ни дома, ни на работе. Пальцы всегда на буквенном блоке клавиатуры. Это сложно объяснить, но когда к этому привыкаешь становится трудно работать по другому.

Ну, а самый большой минус VIM конечно же — кривая вхождения. С этим редактором надо съесть пуд соли, но если вы подружитесь он оправдает все ожидания.

Python-mode screencast

Для работы с python я написал отдельный плагин. Его главное достоинство в том, что он не требует установки в систему используемых python библиотек (Pylint, Pyflakes и Rope). Вот его основные возможности:

  • Вывод python-документации в отдельном окне;
  • Запуск текущего кода и вывод результата в отдельное окно;
  • Проверка кода библиотекой Pylint или Pyflakes (автоматически или вручную);
  • Умное автодополнение, переход к определениям объектов, рефакторинг и множество других фич библиотеки Rope.
  • Автоматическая поддержка Virtualenv.
  • И еще несколько полезных мелочей для python.

Чтобы продемонстрировать работу плагина я снял небольшой скринкаст (извиняюсь за качество, это мой первый опыт). Итак Python-mode:

Скачать плагин можно с Github: https://github.com/klen/python-mode

Также там можно посмотреть мою конфигурацию этого замечательного редактора: https://github.com/klen/.vim

Если вы заинтересовались VIM и хотите узнать о нем побольше, советую посмотреть к примеру эти скринкасты:

http://www.derekwyatt.org/vim/vim-tutorial-videos/vim-novice-tutorial-videos/

Год облачного хостинга от Amazon — бесплатно Ctrl→
←Ctrl Urbanairship, push-уведомления для мобильных приложений
alt