summary refs log tree commit diff
path: root/emacs/custom/my-lang-python.el
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/custom/my-lang-python.el')
-rw-r--r--emacs/custom/my-lang-python.el15
1 files changed, 13 insertions, 2 deletions
diff --git a/emacs/custom/my-lang-python.el b/emacs/custom/my-lang-python.el
index c5f612a..04f3d00 100644
--- a/emacs/custom/my-lang-python.el
+++ b/emacs/custom/my-lang-python.el
@@ -6,14 +6,25 @@
 ;;; Code:
 
 (require 'python)
-(require 'python-mode)
 
+(setq python-shell-interpreter "python3")
+(setq python-shell-interpreter-args "-i")
+
+;;; bindings
+(define-key python-mode-map (kbd "C-h f") 'python-eldoc-at-point)
+
+;;; hooks
 ;; if black is present, enable it
 (when (executable-find "black")
   (require 'blacken)
   (add-hook 'python-mode-hook 'blacken-mode))
 
-(setq python-shell-interpreter "python3")
+(when (executable-find "pylsp")
+  (add-hook 'python-mode-hook 'eglot-ensure)
+  ;; https://github.com/python-lsp/python-lsp-server/blob/develop/CONFIGURATION.md
+  (setq-default eglot-workspace-configuration
+                '((pylsp (plugins (flake8      (enabled . :json-false))
+                                  (pycodestyle (enabled . :json-false)))))))
 
 (provide 'my-lang-python)