mirror of
https://github.com/librephoenix/nixos-config
synced 2026-01-15 13:14:00 +05:30
Restore emacs and magit keybind w zed
This commit is contained in:
parent
d91cdb6f93
commit
e3ac21a61d
3 changed files with 173 additions and 117 deletions
|
|
@ -1,8 +1,15 @@
|
||||||
{ config, lib, pkgs, pkgs-stable, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
pkgs-stable,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.userSettings.emacs;
|
cfg = config.userSettings.emacs;
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
options = {
|
options = {
|
||||||
userSettings.emacs = {
|
userSettings.emacs = {
|
||||||
enable = lib.mkEnableOption "Enable emacs";
|
enable = lib.mkEnableOption "Enable emacs";
|
||||||
|
|
@ -15,30 +22,55 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
## THIS IS BROKEN BECAUSE THEY CHANGED EMACS IN NIXPKGS I THINK
|
## THIS IS BROKEN BECAUSE THEY CHANGED EMACS IN NIXPKGS I THINK
|
||||||
config = lib.mkIf false {
|
#config = lib.mkIf false {
|
||||||
#config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
(pkgs.emacsWithPackagesFromUsePackage {
|
(pkgs.emacsWithPackagesFromUsePackage {
|
||||||
config = ./init.el;
|
config = ./init.el;
|
||||||
package = pkgs.emacs-pgtk;
|
package = pkgs.emacs-pgtk;
|
||||||
alwaysEnsure = false;
|
alwaysEnsure = false;
|
||||||
extraEmacsPackages = epkgs: with epkgs; [
|
extraEmacsPackages =
|
||||||
org-modern olivetti
|
epkgs: with epkgs; [
|
||||||
|
org-modern
|
||||||
|
olivetti
|
||||||
command-log-mode
|
command-log-mode
|
||||||
vertico corfu hotfuzz orderless
|
vertico
|
||||||
evil evil-collection evil-snipe evil-owl evil-vimish-fold
|
corfu
|
||||||
dashboard doom-themes doom-modeline
|
hotfuzz
|
||||||
nerd-icons nerd-icons-dired nerd-icons-corfu
|
orderless
|
||||||
nerd-icons-ibuffer nerd-icons-completion
|
evil
|
||||||
yasnippet shackle
|
evil-collection
|
||||||
projectile treemacs treemacs-projectile
|
evil-snipe
|
||||||
treemacs-evil treemacs-nerd-icons
|
evil-owl
|
||||||
|
evil-vimish-fold
|
||||||
|
dashboard
|
||||||
|
doom-themes
|
||||||
|
doom-modeline
|
||||||
|
nerd-icons
|
||||||
|
nerd-icons-dired
|
||||||
|
nerd-icons-corfu
|
||||||
|
nerd-icons-ibuffer
|
||||||
|
nerd-icons-completion
|
||||||
|
yasnippet
|
||||||
|
shackle
|
||||||
|
projectile
|
||||||
|
treemacs
|
||||||
|
treemacs-projectile
|
||||||
|
treemacs-evil
|
||||||
|
treemacs-nerd-icons
|
||||||
treesit-grammars.with-all-grammars
|
treesit-grammars.with-all-grammars
|
||||||
git-timemachine wgrep
|
git-timemachine
|
||||||
magit magit-todos
|
wgrep
|
||||||
undo-fu undo-fu-session
|
magit
|
||||||
org-roam org-node org-node-fakeroam
|
magit-todos
|
||||||
vterm vterm-toggle sudo-edit
|
undo-fu
|
||||||
|
undo-fu-session
|
||||||
|
org-roam
|
||||||
|
org-node
|
||||||
|
org-node-fakeroam
|
||||||
|
vterm
|
||||||
|
vterm-toggle
|
||||||
|
sudo-edit
|
||||||
direnv
|
direnv
|
||||||
svelte-mode
|
svelte-mode
|
||||||
typescript-mode
|
typescript-mode
|
||||||
|
|
@ -68,8 +100,12 @@ in {
|
||||||
) { })
|
) { })
|
||||||
gdscript-mode
|
gdscript-mode
|
||||||
nix-mode
|
nix-mode
|
||||||
python python-mode
|
python
|
||||||
lsp-mode flycheck lsp-ui lsp-treemacs
|
python-mode
|
||||||
|
lsp-mode
|
||||||
|
flycheck
|
||||||
|
lsp-ui
|
||||||
|
lsp-treemacs
|
||||||
# fix ultra-scroll
|
# fix ultra-scroll
|
||||||
(epkgs.callPackage (
|
(epkgs.callPackage (
|
||||||
{ lib, trivialBuild }:
|
{ lib, trivialBuild }:
|
||||||
|
|
@ -166,6 +202,8 @@ in {
|
||||||
|
|
||||||
;;; sysvars.el ends here
|
;;; sysvars.el ends here
|
||||||
'';
|
'';
|
||||||
wayland.windowManager.hyprland.settings.exec-once = lib.optionals config.wayland.windowManager.hyprland.enable [ "emacs --daemon" ];
|
wayland.windowManager.hyprland.settings.exec-once =
|
||||||
|
lib.optionals config.wayland.windowManager.hyprland.enable
|
||||||
|
[ "emacs --daemon" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -452,13 +452,14 @@
|
||||||
;; Enable corfu
|
;; Enable corfu
|
||||||
(use-package corfu
|
(use-package corfu
|
||||||
:custom
|
:custom
|
||||||
|
(corfu-auto t)
|
||||||
(corfu-cycle t) ;; Enable cycling for `corfu-next/previous'
|
(corfu-cycle t) ;; Enable cycling for `corfu-next/previous'
|
||||||
;; (corfu-preview-current nil) ;; Disable current candidate preview
|
(corfu-preview-current t) ;; Disable current candidate preview
|
||||||
(corfu-preselect 'prompt) ;; Preselect the prompt
|
(corfu-preselect 'prompt) ;; Preselect the prompt
|
||||||
(corfu-on-exact-match 'insert) ;; Configure handling of exact matches
|
(corfu-on-exact-match 'insert) ;; Configure handling of exact matches
|
||||||
(corfu-auto nil) ;; auto complete
|
(corfu-auto-delay 0.15) ;; wait half a second though
|
||||||
(corfu-auto-delay 1.2) ;; wait half a second though
|
(corfu-auto-prefix 2) ;; also only for words 2 or more
|
||||||
(corfu-auto-prefix 5) ;; also only for words 3 or more
|
(corfu-min-width 120)
|
||||||
(defun corfu-lsp-setup ()
|
(defun corfu-lsp-setup ()
|
||||||
(setq-local completion-styles '(orderless flex hotfuzz)
|
(setq-local completion-styles '(orderless flex hotfuzz)
|
||||||
completion-category-defaults nil))
|
completion-category-defaults nil))
|
||||||
|
|
@ -1094,5 +1095,7 @@ Made for `org-tab-first-hook' in evil-mode."
|
||||||
|
|
||||||
(use-package rainbow-mode)
|
(use-package rainbow-mode)
|
||||||
|
|
||||||
|
(set-frame-font "FiraCode Nerd Font")
|
||||||
|
|
||||||
(provide 'init)
|
(provide 'init)
|
||||||
;;; init.el ends here
|
;;; init.el ends here
|
||||||
|
|
|
||||||
|
|
@ -128,6 +128,12 @@ in
|
||||||
"task_name" = "gitu";
|
"task_name" = "gitu";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
"space g G" = [
|
||||||
|
"task::Spawn"
|
||||||
|
{
|
||||||
|
"task_name" = "magit";
|
||||||
|
}
|
||||||
|
];
|
||||||
"space o d" = [
|
"space o d" = [
|
||||||
"task::Spawn"
|
"task::Spawn"
|
||||||
{
|
{
|
||||||
|
|
@ -221,6 +227,15 @@ in
|
||||||
use_new_terminal = false;
|
use_new_terminal = false;
|
||||||
hide = "on_success";
|
hide = "on_success";
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
label = "magit";
|
||||||
|
command = "emacsclient -c --eval '(magit-status)' &> /dev/null & disown; exit;";
|
||||||
|
reveal = "always";
|
||||||
|
reveal_target = "center";
|
||||||
|
allow_concurrent_runs = false;
|
||||||
|
use_new_terminal = false;
|
||||||
|
hide = "on_success";
|
||||||
|
}
|
||||||
{
|
{
|
||||||
label = "yazi";
|
label = "yazi";
|
||||||
command = "yazi";
|
command = "yazi";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue