aboutsummaryrefslogtreecommitdiff
path: root/Emacs/.config/emacs
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2024-05-06 02:26:58 +0530
committerAryadev Chavali <aryadev@aryadevchavali.com>2024-05-06 02:38:06 +0530
commit8c13aa67b61ba5cf1b88c304ed1c4e3e29e03d0d (patch)
tree7907f82ee7a755d95220734efe5199a3abc0e8cd /Emacs/.config/emacs
parent1a7a3670c1e3c43c91722b68d25768e545158e88 (diff)
downloaddotfiles-8c13aa67b61ba5cf1b88c304ed1c4e3e29e03d0d.tar.gz
dotfiles-8c13aa67b61ba5cf1b88c304ed1c4e3e29e03d0d.tar.bz2
dotfiles-8c13aa67b61ba5cf1b88c304ed1c4e3e29e03d0d.zip
(Emacs/core)+Use Emacs Tabs
Emacs tabs are actually quite powerful and solve the namespace problem, at least for me. This is why I started using standard windowing rather than using new frames: I can have all my workspaces in one frame.
Diffstat (limited to 'Emacs/.config/emacs')
-rw-r--r--Emacs/.config/emacs/core.org36
1 files changed, 35 insertions, 1 deletions
diff --git a/Emacs/.config/emacs/core.org b/Emacs/.config/emacs/core.org
index 9558eb9..3c2d293 100644
--- a/Emacs/.config/emacs/core.org
+++ b/Emacs/.config/emacs/core.org
@@ -42,7 +42,7 @@ code.
"SPC i" '(nil :which-key "Insert")
"SPC m" '(nil :which-key "Modes")
"SPC s" '(nil :which-key "Search")
- "SPC t" '(nil :which-key "Shell"))
+ "SPC t" '(nil :which-key "Tabs")
"SPC q" '(nil :which-key "Quit/Literate"))
(general-create-definer leader
@@ -67,6 +67,11 @@ code.
(general-create-definer shell-leader
:states '(normal motion)
:keymaps 'override
+ :prefix "SPC ;")
+
+ (general-create-definer tab-leader
+ :states '(normal motion)
+ :keymaps 'override
:prefix "SPC t")
(general-create-definer mode-leader
@@ -645,6 +650,35 @@ records. This is mostly for packages that aren't really configured
(display-buffer-at-bottom)
(window-height . 0.25)))
#+end_src
+* Tabs
+Tabs in vscode are just like buffers in Emacs but way slower and
+harder to use. Tabs in Emacs are essentially window layouts, similar
+to instances in Tmux. With this setup I can use tabs quite
+effectively.
+
+#+begin_src emacs-lisp
+(use-package tab-bar
+ :straight nil
+ :init
+ (setq tab-bar-show 1)
+ :config
+ (tab-bar-mode)
+ :general
+ (tab-leader
+ "t" #'tab-switch
+ "j" #'tab-next
+ "k" #'tab-previous
+ "h" #'tab-move-to
+ "l" #'tab-move
+ "n" #'tab-new
+ "c" #'tab-close
+ "d" #'tab-close
+ "f" #'tab-detach
+ "w" #'tab-window-detach
+ "r" #'tab-rename)
+ (mode-leader
+ "t" #'toggle-tab-bar-mode-from-frame))
+#+end_src
* Auto typing
Snippets are a pretty nice way of automatically inserting code. Emacs
provides a ton of packages by default to do this, but there are great