diff options
| -rw-r--r-- | .emacs | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -44,6 +44,7 @@ (global-set-key (kbd "C-c k |") 'my/kill-ring-pipe-region) (global-set-key (kbd "C-c k !") 'my/kill-ring-shell) (global-set-key (kbd "C-c m") 'man) +(global-set-key (kbd "C-c p c") 'my/project-compile) (global-set-key (kbd "C-c p f") 'project-find-file) (global-set-key (kbd "C-c t") 'toggle-truncate-lines) (global-set-key (kbd "C-c v") 'visual-line-mode) @@ -277,9 +278,12 @@ ;; Font stuff (π€· π€¦) (set-fontset-font "fontset-default" nil (font-spec :name "Symbola") nil 'append) +(defun my/project-root () + (when-let ((project (project-current))) + (car (project-roots project)))) + (defun my/project-name () - (when-let* ((project (project-current)) - (root (car (project-roots project)))) + (when-let* ((root (my/project-root))) (when (not (file-equal-p root "~")) (file-name-nondirectory (string-trim-right root "/"))))) @@ -289,5 +293,10 @@ (let ((project (my/project-name))) (concat (when project (format "[%s] " project)) "%b"))))) +(defun my/project-compile () + (interactive) + (let ((default-directory (my/project-root))) + (call-interactively 'compile))) + ;; TODO: fringe fun: hideshowvis, git gutterβ¦ ;; TODO: decruftify mode-line (e.g. remove superflous parens) |
