Skip to content

Commit c80f44a

Browse files
authored
Handle after-set-visited-file-name-hook (#2650)
- fixes #2644
1 parent c3cbadc commit c80f44a

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

lsp-mode.el

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3561,6 +3561,10 @@ yet."
35613561
(memq :on-trigger-char lsp-signature-auto-activate))))
35623562
(remove-hook 'post-self-insert-hook signature-help-handler t)))))
35633563

3564+
(defun lsp--after-set-visited-file-name ()
3565+
(lsp-disconnect)
3566+
(lsp))
3567+
35643568
(define-minor-mode lsp-managed-mode
35653569
"Mode for source buffers managed by lsp-mode."
35663570
nil nil nil
@@ -3590,6 +3594,7 @@ yet."
35903594
;; make sure we turn off lsp-mode in case major mode changes, because major
35913595
;; mode change will wipe the buffer locals.
35923596
(add-hook 'change-major-mode-hook #'lsp-disconnect nil t)
3597+
(add-hook 'after-set-visited-file-name-hook #'lsp--after-set-visited-file-name nil t)
35933598

35943599
(let ((buffer (lsp-current-buffer)))
35953600
(run-with-idle-timer
@@ -3626,7 +3631,9 @@ yet."
36263631
(lsp--remove-overlays 'lsp-links)
36273632

36283633
(remove-hook 'xref-backend-functions #'lsp--xref-backend t)
3629-
(remove-hook 'change-major-mode-hook #'lsp-disconnect t))))
3634+
(remove-hook 'change-major-mode-hook #'lsp-disconnect t)
3635+
(remove-hook 'after-set-visited-file-name-hook #'lsp--after-set-visited-file-name t)
3636+
(setq-local lsp-buffer-uri nil))))
36303637

36313638
(defun lsp-configure-buffer ()
36323639
"Configure LSP features for current buffer."

0 commit comments

Comments
 (0)