Open rezaamashi opened 1 month ago
I don't use org-mode, you can add some check condtion in function lsp-bridge-monitor-after-change to avoid lsp-bridge start in org-babel-tangle
Hello, I haven't checked back on this issue for quite a while now. I had a different approach to resolving this issue. I haven't checked on lsp-bridge-monitor-after-change
, but I decided to have a shell script that will run a minimal emacs instance specifically for tangling the code.
I have short script called org-tangle-file
#!/usr/bin/env bash
set -e
emacs --batch -l org --eval "(org-babel-tangle-file \"$1\")"
Then I write a callable in emacs that will run that script within emacs
(defun tangle-config-org ()
"Callable that runs `org-tangle-file' script"
(interactive)
(shell-command (concat "org-tangle-file "
(expand-file-name "config.org" doom-user-dir))))
Finally, I have a local variable set up at EOF of my config.org
that will add tangle-config-org
into after-save-hook
.
* Local Variable
# Local Variables:
# eval: (add-to-list 'after-save-hook 'tangle-config-org)
# End:
That way every time I save my config.org
there will be a lean and minimal instance of emacs running just to tangle the file. I believe this is a more better approach, as it is more modular and the amount of package that I have installed on my setup won't affect the tangling process. For I find, through my experience, if it was not lsp-bridge
there are some other package that will intrude into the tangling operation.
Although, still at the same spirit, having packages needlessly intruding into operation where it is not supposed to be would be ideal. Cheers,
PS. As in my case it is somewhat solved, even with different approach from the proposed one. I am willing to have this issue closed by @manateelazycat. But if someone else have a different and more suitable, package level, approach. I believe it is also swell to have the discussion going.
I am using literate config for my emacs system. It uses quite a verbose amount of tangled blocks.
but with
lsp-bridge
enabled, every time I runorg-babel-tangle
the operation that usually takes short seconds, one time I measured it took up to 3 minutes. I also checked onhtop
that suddenly there are multiple language server being run.I believe during the process of tangling a file (I'd argue even also when executing code block)
lsp-bridge
is not something that is needed to run. as it is simply duplicating the blocks of codes into the target file. As in such activity there is no editing involved, of whichlsp-bridge
is used for.This also confirmed by profiler results: CPU
Memory
PS: This is also the case even when
lsp-bridge-enable-org-babel
is set to nil