Compare commits

..

2 commits

Author SHA1 Message Date
523a36b8f1 emacs: cleanup python dev
Some checks are pending
Update Site / trigger_update (push) Waiting to run
2025-11-24 18:14:46 +03:00
52a88dacf3 desktop: add apps 2025-11-24 18:12:34 +03:00
9 changed files with 32 additions and 53 deletions

View file

@ -1,4 +1,5 @@
arch = [
"bashmount",
"pv",
"man-db",
"aria2",

View file

@ -1,4 +1,5 @@
arch = [
"uv",
"dbeaver",
"rust",
"git",

View file

@ -1,4 +1,5 @@
arch = [
"digikam",
"rocketchat-desktop",
"obs-studio",
"okular",

View file

@ -7,6 +7,7 @@ x-scheme-handler/tg=userapp-Telegram Desktop-7PVWF1.desktop
image/png=feh.desktop
image/jpg=feh.desktop
image/jpeg=feh.desktop
video/webm=mpv.desktop
application/pdf=org.pwmt.zathura.desktop
[Added Associations]

10
.config/mpv/input.conf Normal file
View file

@ -0,0 +1,10 @@
Alt+- add video-zoom -0.25
Alt+= add video-zoom 0.25
Alt+h add video-pan-x 0.05
Alt+l add video-pan-x -0.05
Alt+k add video-pan-y 0.05
Alt+j add video-pan-y -0.05
Shift+m cycle-values audio-channels "auto-safe" "mono"
r cycle_values video-rotate 90 180 270 0

View file

@ -1,24 +1,14 @@
;;; -*- lexical-binding: t -*-
(use-package ein
:commands (ein:run)
:disabled
:straight t)
(setq my/pipenv-python-alist '())
(defun my/get-pipenv-python ()
(let ((default-directory (projectile-project-root)))
(if (file-exists-p "Pipfile")
(let ((asc (assoc default-directory my/pipenv-python-alist)))
(if asc
(cdr asc)
(let ((python-executable
(string-trim (shell-command-to-string "PIPENV_IGNORE_VIRTUALENVS=1 pipenv run which python 2>/dev/null"))))
(if (string-match-p ".*not found.*" python-executable)
(message "Pipfile found, but not pipenv executable!")
(message (format "Found pipenv python: %s" python-executable))
(add-to-list 'my/pipenv-python-alist (cons default-directory python-executable))
python-executable))))
"python")))
(cond ((file-exists-p ".venv/bin/python")
(expand-file-name ".venv/bin/python"))
(t (executable-find "python")))))
(use-package lsp-pyright
:straight t
@ -31,14 +21,6 @@
(add-hook 'python-mode-hook #'smartparens-mode)
(add-hook 'python-mode-hook #'treesit-fold-mode)
(use-package pipenv
:straight t
:hook (python-mode . pipenv-mode)
:init
(setq
pipenv-projectile-after-switch-function
#'pipenv-projectile-after-switch-extended))
(use-package yapfify
:straight (:repo "JorisE/yapfify" :host github)
:disabled
@ -128,6 +110,7 @@
(use-package code-cells
:straight t
:disabled
:commands (code-cells-mode code-cells-convert-ipynb))
(setq my/tensorboard-buffer "TensorBoard-out")

View file

@ -947,6 +947,7 @@ keymap_mode = "vim-insert"
| aria2 | Download tool | |
| man-db | | |
| pv | | |
| bashmount | TUI to manage mounts | |
** ripgrep config
Occasionally I can't exclude certain files from ripgrep via the VCS settings, so here is a simple config to ignore certain files globally.

View file

@ -4239,6 +4239,7 @@ This section generates manifests for various desktop software that I'm using.
| office | okular |
| office | obs-studio |
| office | rocketchat-desktop |
| office | digikam |
** LaTeX
| Category | Arch dependency | Disabled |
@ -4300,6 +4301,7 @@ This section generates manifests for various desktop software that I'm using.
| dev | git | |
| dev | rust | |
| dev | dbeaver | |
| dev | uv | |
** Manifests
#+NAME: packages
#+begin_src emacs-lisp :tangle no :var category=""

View file

@ -4493,33 +4493,25 @@ An honorary Lisp.
:MODULE_NAME: misc-programming
:header-args:emacs-lisp: :tangle /home/pavel/.emacs.d/modules/sqrt-misc-programming.el :comments links
:END:
*** ein
*** OFF (OFF) ein
CLOSED: [2025-11-24 Mon 18:13]
[[https://github.com/millejoh/emacs-ipython-notebook][ein]] is a package that allows for running Jupyter notebooks in Emacs.
#+begin_src emacs-lisp
(use-package ein
:commands (ein:run)
:disabled
:straight t)
#+end_src
*** pyright
For some reason it doesn't use pipenv python executable, so here is a small workaround.
#+begin_src emacs-lisp
(setq my/pipenv-python-alist '())
A fix to use it with =uv=.
#+begin_src emacs-lisp
(defun my/get-pipenv-python ()
(let ((default-directory (projectile-project-root)))
(if (file-exists-p "Pipfile")
(let ((asc (assoc default-directory my/pipenv-python-alist)))
(if asc
(cdr asc)
(let ((python-executable
(string-trim (shell-command-to-string "PIPENV_IGNORE_VIRTUALENVS=1 pipenv run which python 2>/dev/null"))))
(if (string-match-p ".*not found.*" python-executable)
(message "Pipfile found, but not pipenv executable!")
(message (format "Found pipenv python: %s" python-executable))
(add-to-list 'my/pipenv-python-alist (cons default-directory python-executable))
python-executable))))
"python")))
(cond ((file-exists-p ".venv/bin/python")
(expand-file-name ".venv/bin/python"))
(t (executable-find "python")))))
(use-package lsp-pyright
:straight t
@ -4532,20 +4524,6 @@ For some reason it doesn't use pipenv python executable, so here is a small work
(add-hook 'python-mode-hook #'smartparens-mode)
(add-hook 'python-mode-hook #'treesit-fold-mode)
#+end_src
*** pipenv
[[https://github.com/pypa/pipenv][Pipenv]] is a package manager for Python.
Automatically creates & manages virtualenvs and stores data in =Pipfile= and =Pipfile.lock= (like npm's =package.json= and =package-lock.json=).
#+begin_src emacs-lisp
(use-package pipenv
:straight t
:hook (python-mode . pipenv-mode)
:init
(setq
pipenv-projectile-after-switch-function
#'pipenv-projectile-after-switch-extended))
#+end_src
*** OFF (OFF) yapf
[[https://github.com/google/yapf][yapf]] is a formatter for Python files.
@ -4710,7 +4688,7 @@ To fix that, I've modified the following function in the =python-pytest= package
(setq process (get-buffer-process buffer))
(set-process-sentinel process #'python-pytest--process-sentinel))))
#+end_src
*** code-cells
*** OFF (OFF) code-cells
Support for text with magic comments.
| Arch dependency | Disabled |
@ -4720,6 +4698,7 @@ Support for text with magic comments.
#+begin_src emacs-lisp
(use-package code-cells
:straight t
:disabled
:commands (code-cells-mode code-cells-convert-ipynb))
#+end_src
*** tensorboard