From 7249fec7b8cf7eb167d3fe25a8b941383bfd58e0 Mon Sep 17 00:00:00 2001 From: Joseph Ferano Date: Tue, 11 Apr 2023 16:06:29 +0700 Subject: [PATCH] Detect project name and use that for the name of the frame --- .config/emacs/init.org | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/.config/emacs/init.org b/.config/emacs/init.org index b891520..16508cf 100644 --- a/.config/emacs/init.org +++ b/.config/emacs/init.org @@ -1101,15 +1101,24 @@ Ace Window will show a hint if there are more than 2 windows, but I don't really #+end_src ** Projects #+begin_src emacs-lisp -(defun joe/project-root-override (dir) +(setq frame-title-format "%b") + +(defun joe/get-project-name (dir) (let ((override (locate-dominating-file dir ".project.el"))) (if override - (cons 'transient override) + (cons 'transient override) (project-try-vc dir)))) +(defun joe/project-root-override (dir) + (let ((proj-name (joe/get-project-name dir))) + (when (and proj-name + (not (frame-parameter (selected-frame) 'explicit-name))) + (set-frame-name proj-name)) + proj-name)) + (add-hook 'project-find-functions #'joe/project-root-override) -(global-set-key (kbd "") #'set-frame-name) +(define-key 'ctl-x-5-prefix "n" #'set-frame-name) #+end_src ** VEMCO