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

Кроме того, наличие таких библиотек, как NumPy, OpenCV, scikit-learn, делает его идеальным для использования в проектах различных областей компьютерных наук, таких как машинное обучение и наука о данных. Поэтому для языка, который продолжает быстро расти, разработчики должны использовать редакторы, которые в полной мере способны понять все тонкости, стоящие за ним.

Одним из таких текстовых редакторов является Emacs, который, будучи открытым исходным кодом и кроссплатформенным, а также легко настраиваемый и удобный интерфейс, предлагает своим пользователям некоторые изумительные функции, такие как несколько режимов редактирования, инструменты для работы с текстом и интеграция с внешними инструментами. Поскольку он чрезвычайно настраиваемый, его можно легко настроить для использования в качестве Python IDE. Поэтому сегодня мы рассмотрим, как можно настроить Emacs для разработки на Python и превратить его в Python IDE.

Предпосылки

Прежде чем перейти к настройке Emacs, в первую очередь важно проверить, соответствует ли ваша система требованиям для предстоящего процесса. Прежде всего, вам необходим установить pip. Для этого введите в терминал следующую команду:

$ sudo apt install python3-pip

Примечание: приведенные выше команды предназначены только для Python 3.

Далее нам нужно установить некоторые зависимости, которые помогают в настройке Emacs и предоставляют такие функции, как автозаполнение и проверка синтаксиса. Это можно сделать с помощью следующей команды:

$ pip3 install jedi autopep8 flake8 ipython importmagic yapf

Мы сделали с предварительными условиями часть. Теперь мы можем перейти к превращению Emacs в Python IDE.

Настройка файла инициализации (рекомендуется)

Когда запускается Emacs, первый обрабатываемый файл - это файл инициализации (файл инициализации), который содержит команды, написанные на Лиспе, которые позволяют пользователям настраивать Emacs. Итак, нам нужно добавить несколько команд в этот файл для Emacs, который будет использоваться для разработки на Python. Сначала откройте Emacs и нажмите Ctrl + X, затем Ctrl + F и затем введите ~/.emacs, чтобы открыть файл инициализации.

Затем добавьте следующие строки кода в файл инициализации:

(require 'package)
(add-to-list 'package-archives
             '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
(package-refresh-contents)

Этот код делает то, что он добавляет архив Melpa в список репозиториев пакетов, а затем дает разрешение Emacs на использование этих пакетов.

Настройка файла инициализации (необязательно)

Следующие несколько строк кода необязательны для добавления пользователем в файл инициализации, поскольку они в основном используются для установки некоторых пакетов, которые не нужны для разработки на Python. Эти пакеты делают Emacs более удобным для пользователя и дают ему более темную и яркую тему.

(defvar myPackages
  '(better-defaults                
    material-theme                  
    )
  )
(mapc #'(lambda (package)
          (unless (package-installed-p package)
            (package-install package)))
      myPackages)
(setq inhibit-startup-message t)    
(load-theme 'material t)            
(global-linum-mode t)

Часть базовой настройки в приведенном выше коде отключает начальное сообщение о запуске Emacs, загружает более темную тему, которую мы установили выше, и добавляет номера строк в Emacs. После добавления всех строк кода просто нажмите Ctrl + X, а затем Ctrl + S, чтобы сохранить файл. После закрытия и перезапуска Emacs изменения начнут появляться. Смотрите изображение ниже:

Установка Elpy

Хотя в Emacs есть встроенный режим Python, он минимален и не предоставляет таких функций, как автозаполнение, проверка синтаксиса, автоматическое отступление и т. Д. Следовательно, мы будем использовать пакет elpy или среду Emacs Lisp Python, которая обеспечивает множество эффективных возможностей Python IDE для пользователей. Для установки elpy в приведенной выше строке кода, где мы установили лучшие пакеты по умолчанию и тематические пакеты материалов, замените этот раздел следующими строками:

(defvar myPackages
  '(better-defaults
    elpy                
    material-theme                  
    )
  )

Обратите внимание, что выше, когда вы добавляете дополнительный контент в ваш файл инициализации. Если вы не используете необязательный контент, то ниже рекомендуемого раздела будут просто добавлены следующие строки кода:

(defvar myPackages
'(elpy
)
)

Затем в обоих сценариях добавьте следующие строки в конец файла инициализации, чтобы включить пакет elpy, а также оболочку ipython:

(elpy-enable)
(setq python-shell-interpreter "ipython"
      python-shell-interpreter-args "-i --simple-prompt")

Теперь пользователи смогут создавать и редактировать файлы Python в Emacs, используя функции, имеющиеся в Python IDE.

Для пользователей, желающих протестировать и запустить свои программы, откройте файл python и нажмите Ctrl + C, а затем Ctrl + C. Например, на изображении ниже мы запускаем простой калькулятор, который спрашивает пользователя, какой вариант он или она хочет выбрать из предложенных вариантов. Затем вводятся два числа и показываются результаты.

Помимо elpy, вы можете добавить в Emacs несколько других пакетов, предоставляя ему еще больше возможностей. Конкретным примером будет интеграция с ноутбуком Jupyter.

Зачем использовать Emacs для Python?

Emacs - один из самых мощных текстовых редакторов, обладающий широкими возможностями настройки и гибкости. Это позволяет пользователям настраивать редактор в соответствии с их потребностями и предпочтениями, что позволяет им работать более эффективно. Поскольку сегодня Python используется практически повсеместно, крайне важно иметь редактор, который может предлагать несколько инструментов и функций, которые выделяют лучшее из языка. Emacs, несомненно, является обязательным редактором для разработки на Python.