chd/.emacs.d/jlj-python.el

51 lines
1.2 KiB
EmacsLisp
Raw Normal View History

;;; jlj-python.el --- python customizations -*- lexical-binding: t -*-
;;; Commentary:
2020-01-04 22:53:01 +00:00
;; pylint is required (pip install pylint)
;; pep8 (pip install pep8)
;; don't use python-mode because JESUS. CHRIST. it throws everything off.
2020-01-04 22:53:01 +00:00
;; using jedi requires virtualenv to be installed
;; pipenv is mostly acceptable but i could not make a full IDE experience happen
;;; Code:
;; Initialise installed packages
(use-package pipenv
:ensure t)
2020-01-04 22:53:01 +00:00
(use-package poetry
:ensure t)
(use-package flycheck
:ensure t)
2020-01-04 22:53:01 +00:00
2021-04-30 01:21:26 +00:00
; helps with LSP, generally.
(yas-global-mode 1)
; Let's set up company! perhaps not necessary but this is what i like to use
(use-package company
:ensure t
:config
(setq company-idle-delay 0)
(setq company-minimum-prefix-length 1))
2020-01-04 22:53:01 +00:00
2022-03-18 20:00:43 +00:00
(use-package project :ensure t)
2022-03-18 20:00:43 +00:00
(use-package eglot
2020-12-16 19:52:03 +00:00
:ensure t
2022-03-18 20:00:43 +00:00
:config
(add-hook 'python-mode-hook 'eglot-ensure))
2020-01-04 22:53:01 +00:00
;; (use-package pyvenv
;; :ensure t)
(use-package virtualenvwrapper
:ensure t
:config
(venv-initialize-interactive-shells) ;; if you want interactive shell support
(venv-initialize-eshell) ;; if you want eshell support
(setq venv-location "~/.local/share/virtualenvs/"))
;;; jlj-python.el ends here