Org

Doom Emacs config'd for Python

Alter your doom block in init.el:

(doom! 
    ...
    :lang 
    (python +lsp +pyright +conda)
    ...)

I recommend pyright, is snappier than pyls..

you’ll also need lsp enabled in your tools, I also have +peek

(doom! 
    ...
    :tools
    (lsp +peek)
    ...)

for more info, hit <space> h d m lsp<CR>

Alter your config.el (I use miniforge to get mamba and conda):

                                        ; Conda
(use-package! conda
  :config
  (setq conda-anaconda-home (expand-file-name  "~/mambaforge"))
  (conda-env-initialize-interactive-shells)
  (conda-env-initialize-eshell)
  (conda-env-autoactivate-mode t)
  (add-hook 'find-file-hook (lambda () (when (bound-and-true-p conda-project-env-path)
                                    (conda-env-activate-for-buffer)))))

Once that’s done, hit <space> h r r and your ready to go.

My Emacs Configuration

[As of 0x213B : 2023-08-17 Thu]

I use emacs for a lot of my daily tasks and spend majority of my time in it. This is a review of some significant components of my init.el


;keyboard all the way
(menu-bar-mode -1)
(tool-bar-mode -1)
(scroll-bar-mode -1)

;I don't like distractions
(setq byte-compile-warnings '(cl-functions))
(setq ring-bell-function 'ignore)
(setq visible-bell t)

I chose the most recently engineered package-management solution when I began with emacs, haven’t switched since and don’t think I’ll need to. Migrating from vim, I preferred a configuration file rather than installations via melpa interface. Also, freezing and thawing is cool : exact reproducibility is guaranteed.