diff --git a/flake.lock b/flake.lock index 05c8517..7229c42 100644 --- a/flake.lock +++ b/flake.lock @@ -78,11 +78,11 @@ ] }, "locked": { - "lastModified": 1747279714, - "narHash": "sha256-UdxlE8yyrKiGq3bgGyJ78AdFwh+fuRAruKtyFY5Zq5I=", + "lastModified": 1747753534, + "narHash": "sha256-hbDBa5a6jnxoD0OqijmCKF45Hiv4uubb340OMr5DJhc=", "owner": "nix-community", "repo": "home-manager", - "rev": "954615c510c9faa3ee7fb6607ff72e55905e69f2", + "rev": "559f6d36b32dd2180ebac40c522dd36290430fc5", "type": "github" }, "original": { @@ -165,11 +165,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1747301504, - "narHash": "sha256-GAI36RNzF9yC0JOauS1+h681ElwdbD9q/qxxuIqcejQ=", + "lastModified": 1747610850, + "narHash": "sha256-b41pc9J8b9fxRFHBQRKoTXZHpAsKW5eJbNsTMris2Mo=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "a5c9b3e49047b4f03f79c5146d8925363eab3072", + "rev": "eb3b38d40baca5c05ddbc1507b3d3f02a0ccb164", "type": "github" }, "original": { @@ -195,11 +195,11 @@ ] }, "locked": { - "lastModified": 1746806942, - "narHash": "sha256-fziL5ORI599D6Wp+BKlspxOqZ1HhCCLkq4C4FBwIwJo=", + "lastModified": 1747595918, + "narHash": "sha256-5wjvmFtk85uBJLnrKZbfrgo9OTTQlFP18ZNgfBwFsz0=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "c491d2831448645f24a1597a17f564aa52691ac6", + "rev": "4dea1029e837ae642979ab509eb2eddc959470d0", "type": "github" }, "original": { @@ -612,11 +612,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1746461020, - "narHash": "sha256-7+pG1I9jvxNlmln4YgnlW4o+w0TZX24k688mibiFDUE=", + "lastModified": 1747327360, + "narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3730d8a308f94996a9ba7c7138ede69c1b9ac4ae", + "rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46", "type": "github" }, "original": { @@ -628,11 +628,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1747179050, - "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", + "lastModified": 1747542820, + "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", + "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", "type": "github" }, "original": { @@ -652,11 +652,11 @@ ] }, "locked": { - "lastModified": 1746537231, - "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", + "lastModified": 1747372754, + "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "type": "github" }, "original": { diff --git a/hosts/darp8/configuration.nix b/hosts/darp8/configuration.nix index 2107084..c90b070 100644 --- a/hosts/darp8/configuration.nix +++ b/hosts/darp8/configuration.nix @@ -186,20 +186,26 @@ }; environment.systemPackages = with pkgs; [ - vim + bat + discord + ghostty + glib + gnome-keyring fd file - ripgrep - wget - glib - spotify - discord - uxplay - wl-clipboard - ghostty libnotify - mesa libdrm + mesa + neovim + ripgrep + spotify + unzip + uxplay + vim + wget + wl-clipboard + xdg-user-dirs + zip ]; zramSwap = { diff --git a/hosts/darp8/file.nix b/hosts/darp8/file.nix index d88afa8..c1e8d4c 100644 --- a/hosts/darp8/file.nix +++ b/hosts/darp8/file.nix @@ -13,46 +13,49 @@ in { # Symlink dotfiles home.file = mkSymlinkAttrs { - ".config/hypr" = { - source = ../../modules/non-nix_configs/hypr; - outOfStoreSymlink = true; - recursive = true; - }; - + # Fonts ".local/share/fonts/KelmscottMono.otf" = { source = ../../fonts/KelmscottMono.otf; outOfStoreSymlink = true; recursive = false; }; + # Configs + ".config/hypr" = { + source = ../../configs/hypr; + outOfStoreSymlink = true; + recursive = true; + }; + ".config/waybar" = { + source = ../../configs/waybar; + outOfStoreSymlink = true; + recursive = true; + }; + ".config/ghostty" = { + source = ../../configs/ghostty; + outOfStoreSymlink = true; + recursive = true; + }; + ".config/kitty" = { + source = ../../configs/kitty; + outOfStoreSymlink = true; + recursive = true; + }; + ".config/nvim" = { + source = ../../configs/nvim; + outOfStoreSymlink = true; + recursive = true; + }; + ".config/wofi" = { + source = ../../configs/wofi; + outOfStoreSymlink = true; + recursive = true; + }; # ".config/emacs" = { - # source = ../../modules/non-nix_configs/emacs; + # source = ../../configs/emacs; # outOfStoreSymlink = true; # recursive = true; # }; - ".config/ghostty" = { - source = ../../modules/non-nix_configs/ghostty; - outOfStoreSymlink = true; - recursive = true; - }; - - ".config/kitty" = { - source = ../../modules/non-nix_configs/kitty; - outOfStoreSymlink = true; - recursive = true; - }; - - ".config/nvim" = { - source = ../../modules/non-nix_configs/nvim; - outOfStoreSymlink = true; - recursive = true; - }; - - ".config/wofi" = { - source = ../../modules/non-nix_configs/wofi; - outOfStoreSymlink = true; - recursive = true; - }; }; } diff --git a/hosts/darp8/home.nix b/hosts/darp8/home.nix index 05b87a7..ae0e8b5 100644 --- a/hosts/darp8/home.nix +++ b/hosts/darp8/home.nix @@ -15,7 +15,6 @@ # desktop ../../modules/desktop/bluetooth.nix - ../../modules/desktop/waybar.nix ]; # You should not change this value, even if you update Home Manager. If you do @@ -37,12 +36,11 @@ floorp genymotion gimp - gnome-keyring gtk4 gvfs - grim grimblast htop + hyprpicker imagemagick kdePackages.kdenlive keepassxc @@ -57,19 +55,14 @@ pamixer pavucontrol powertop - praat prismlauncher protonvpn-cli - protonvpn-gui qbittorrent signal-desktop + swww texliveFull tree - unzip wev - wl-clipboard - xdg-user-dirs - zip ]; home.sessionVariables = { @@ -119,11 +112,11 @@ xdg.enable = true; xdg.configFile = { "emacs" = { - source = ../../modules/non-nix_configs/emacs; + source = ../../configs/emacs; recursive = true; }; - "user-dirs.dirs".source = ../../modules/non-nix_configs/user-dirs.dirs; - "user-dirs.locale".source = ../../modules/non-nix_configs/user-dirs.locale; + "user-dirs.dirs".source = ../../configs/user-dirs.dirs; + "user-dirs.locale".source = ../../configs/user-dirs.locale; }; # BEGIN PROGRAMS @@ -196,12 +189,6 @@ # BEGIN SERVICES services = { - hyprpaper.enable = true; - hypridle.enable = true; - - blueman-applet.enable = true; - network-manager-applet.enable = true; - emacs = { enable = true; package = pkgs.emacs-gtk; @@ -215,14 +202,15 @@ startWithUserSession = "graphical"; }; - gnome-keyring.enable = true; - gpg-agent = { enable = true; defaultCacheTtl = 1800; enableSshSupport = true; }; + gnome-keyring.enable = true; + network-manager-applet.enable = true; nextcloud-client.enable = true; + swww.enable = true; }; } diff --git a/modules/backgrounds/desert.jpg b/modules/backgrounds/desert.jpg deleted file mode 100644 index 1e3c7f0..0000000 Binary files a/modules/backgrounds/desert.jpg and /dev/null differ diff --git a/modules/desktop/waybar.css b/modules/desktop/waybar.css index 6e3755e..ae8b78b 100644 --- a/modules/desktop/waybar.css +++ b/modules/desktop/waybar.css @@ -6,10 +6,11 @@ @define-color red #C50F1F; @define-color orange #FFC251; @define-color blue #00FFB2; -@define-color lightgreen #a6e3a1; @define-color magenta #f5c2e7; @define-color archbtw #1793d1; @define-color purple #881798; +@define-color green #00BB00; +@define-color lightgreen #93C863; @define-color black-transparent-1 rgba(0, 0, 0, 0.1); @define-color black-transparent-2 rgba(0, 0, 0, 0.2); @@ -59,7 +60,7 @@ window#waybar { tooltip { background: @black-transparent-9; - border: 1px solid @purple; + border: 1px solid @lightgreen; border-radius: 7px; } @@ -70,7 +71,7 @@ tooltip label { .modules-left { background: @black-transparent-8; border-radius: 8px; - border: 2px solid @purple; + border: 2px solid @lightgreen; margin-left: 2px; margin-right: 2px; padding: 2px 4px; @@ -79,7 +80,7 @@ tooltip label { .modules-right { background: @black-transparent-8; border-radius: 8px; - border: 2px solid @purple; + border: 2px solid @lightgreen; margin-left: 2px; margin-right: 2px; padding: 2px 4px; @@ -222,7 +223,7 @@ tooltip label { } #custom-wofi { - color: @archbtw; + color: @green; margin-left: 4px; margin-right: 4px; padding: 0px 4px; @@ -261,7 +262,7 @@ tooltip label { } #battery.charging { - color: @lightgreen; + color: @green; margin-left: 2px; margin-right: 2px; padding: 4px 4px; diff --git a/modules/home-manager/fastfetch.nix b/modules/home-manager/fastfetch.nix index ff31346..1dce030 100644 --- a/modules/home-manager/fastfetch.nix +++ b/modules/home-manager/fastfetch.nix @@ -5,25 +5,25 @@ enable = true; settings = { logo = { - source = "nixos"; - # source = "~/pictures/lil-penguin.png"; - # type = "kitty"; - width = 18; - height = 9; - color = { - "1" = "white"; - "2" = "magenta"; - }; + # source = "nixos"; + source = "$HOME/pictures/smol-penguin.png"; + type = "kitty"; + # width = 18; + # height = 9; + # color = { + # "1" = "white"; + # "2" = "green"; + # }; padding = { - top = 0; # put this on 2 for picture source + top = 1; # put this on 2 for picture source left = 1; - right = 3; + right = 2; }; }; display = { separator = " -> "; color = { - keys = "magenta"; + keys = "green"; }; }; modules = [ @@ -31,7 +31,7 @@ { type = "custom"; format = "────────── Env ──────────"; - color = "magenta"; + color = "green"; } { type = "os"; diff --git a/modules/home-manager/nixvim.nix b/modules/home-manager/nixvim.nix deleted file mode 100644 index 5cd1826..0000000 --- a/modules/home-manager/nixvim.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ pkgs, ... }: - -{ - programs.neovim = { - enable = true; - package = pkgs.neovim-unwrapped; - vimAlias = true; - vimdiffAlias = true; - - plugins = with pkgs; [ - vimPlugins.rose-pine - vimPlugins.telescope-nvim - vimPlugins.nvim-treesitter - vimPlugins.nvim-treesitter-context - vimPlugins.plenary-nvim - vimPlugins.undotree - vimPlugins.harpoon - vimPlugins.lualine-nvim - vimPlugins.vim-fugitive - vimPlugins.lsp-zero-nvim - vimPlugins.nvim-lspconfig - vimPlugins.nvim-cmp - vimPlugins.cmp-path - vimPlugins.cmp-buffer - vimPlugins.cmp_luasnip - vimPlugins.cmp-nvim-lsp - vimPlugins.cmp-nvim-lua - vimPlugins.luasnip - vimPlugins.friendly-snippets - ]; - }; -} diff --git a/modules/non-nix_configs/emacs/config.el b/modules/non-nix_configs/emacs/config.el deleted file mode 100644 index 28c9bc0..0000000 --- a/modules/non-nix_configs/emacs/config.el +++ /dev/null @@ -1,558 +0,0 @@ -(defvar elpaca-installer-version 0.6) -(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory)) -(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory)) -(defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory)) -(defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git" - :ref nil - :files (:defaults (:exclude "extensions")) - :build (:not elpaca--activate-package))) -(let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory)) - (build (expand-file-name "elpaca/" elpaca-builds-directory)) - (order (cdr elpaca-order)) - (default-directory repo)) - (add-to-list 'load-path (if (file-exists-p build) build repo)) - (unless (file-exists-p repo) - (make-directory repo t) - (when (< emacs-major-version 28) (require 'subr-x)) - (condition-case-unless-debug err - (if-let ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*")) - ((zerop (call-process "git" nil buffer t "clone" - (plist-get order :repo) repo))) - ((zerop (call-process "git" nil buffer t "checkout" - (or (plist-get order :ref) "--")))) - (emacs (concat invocation-directory invocation-name)) - ((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch" - "--eval" "(byte-recompile-directory \".\" 0 'force)"))) - ((require 'elpaca)) - ((elpaca-generate-autoloads "elpaca" repo))) - (kill-buffer buffer) - (error "%s" (with-current-buffer buffer (buffer-string)))) -((error) (warn "%s" err) (delete-directory repo 'recursive)))) - (unless (require 'elpaca-autoloads nil t) - (require 'elpaca) - (elpaca-generate-autoloads "elpaca" repo) - (load "./elpaca-autoloads"))) -(add-hook 'after-init-hook #'elpaca-process-queues) -(elpaca `(,@elpaca-order)) - -;; Install use-package support -(elpaca elpaca-use-package - ;; Enable :elpaca use-package keyword. - (elpaca-use-package-mode) - ;; Assume :elpaca t unless otherwise specified. - (setq elpaca-use-package-by-default t)) - -;; Block until current queue processed. -(elpaca-wait) - -;;When installing a package which modifies a form used at the top-level -;;(e.g. a package which adds a use-package key word), -;;use `elpaca-wait' to block until that package has been installed/configured. -;;For example: -;;(use-package general :demand t) -;;(elpaca-wait) - -;;Turns off elpaca-use-package-mode current declartion -;;Note this will cause the declaration to be interpreted immediately (not deferred). -;;Useful for configuring built-in emacs features. -;;(use-package emacs :elpaca nil :config (setq ring-bell-function #'ignore)) - -;; Don't install anything. Defer execution of BODY -;;(elpaca nil (message "deferred")) - -;; Expands to: (elpaca evil (use-package evil :demand t)) -(use-package evil - :bind (:map evil-normal-state-map - ("" . evil-scroll-page-up)) - :init ;; tweak evil's configuration before loading it - (setq evil-want-integration t) ;; This is optional since it's already set to t by default. - (setq evil-respect-visual-line-mode t) - (setq evil-want-keybinding nil) - (setq evil-vsplit-window-right t) - (setq evil-split-window-below t) - (evil-mode)) - (use-package evil-collection - :after evil - :config - (setq evil-collection-mode-list '(dashboard dired ibuffer)) - (evil-collection-init)) - -(use-package general - :config - (general-evil-setup) - ;; set 'SPC' as global leader key - (general-create-definer lm/leader-keys - :states '(normal insert visual emacs) - :keymaps 'override - :prefix "SPC" ;; set leader - :global-prefix "M-SPC") ;; access leader in insert mode - - (lm/leader-keys - "b" '(:ignore t :wk "buffer") - "b b" '(switch-to-buffer :wk "Switch buffer") - "b i" '(ibuffer :wk "Ibuffer") - "b k" '(kill-this-buffer :wk "Kill this buffer") - "b n" '(next-buffer :wk "Next buffer") - "b p" '(previous-buffer :wk "Previous buffer") - "b r" '(revert-buffer :wk "Reload buffer")) - - (lm/leader-keys - "e" '(:ignore t :wk "Eshell/Evaluate") - "e b" '(eval-buffer :wk "Evaluate elisp in buffer") - "e d" '(eval-defun :wk "Evaluate defun containing or after point") - "e e" '(eval-expression :wk "Evaluate an elisp expression") - "e l" '(eval-last-sexp :wk "Evaluate elisp expression before point") - "e r" '(eval-region :wk "Evaluate elisp in region") - "e h" '(counsel-esh-history :wk "Eshell history") - "e s" '(eshell :wk "Eshell")) - - (lm/leader-keys - "SPC" '(counsel-M-x :wk "Counsel M-x") - "." '(find-file :wk "Find file") - "f c" '((lambda () (interactive) (find-file "~/.config/emacs/config.org")) :wk "Edit emacs config") - "f r" '(counsel-recentf :wk "Find recent files") - "TAB TAB" '(comment-line :wk "Comment lines")) - - (lm/leader-keys - "h" '(:ignore t :wk "Help") - "h f" '(describe-function :wk "Describe function") - "h v" '(describe-variable :wk "Describe variable") - "h r r" '(reload-init-file :wk "Reload emacs config")) - ;; "h r r" '((lambda () (interactive) (load-file user-init-file)) :wk "Reload emacs config")) - - (lm/leader-keys - "i" '(:ignore t :wk "Insert") - "i p" '(org-download-screenshot :wk "Insert screenshot (org)")) - - (lm/leader-keys - "t" '(:ignore t :wk "Toggle") - "t l" '(display-line-numbers-mode :wk "Toggle line numbers") - "t v" '(vterm-toggle :wk "Toggle Vterm") - "t i" '(org-toggle-inline-images :wk "Toggle inline images") - "t t" '(visual-line-mode :wk "Toggle truncated lines")) - - (lm/leader-keys - "s" '(:ignore t :wk "Shell") - "s c" '(shell-command :wk "Run a shell command") - "s d" '(sh-cd-here :wk "Move current shell to current dir") - "s m" '(sh-mode :wk "Shell mode")) - - (lm/leader-keys - "c" '(:ignore t :wk "Capitalize") - "c w" '(capitalize-word :wk "Capitalize word") - "c r" '(capitalize-region :wk "Capitalize region") - "c c" '(upcase-char :wk "Upcase char") - "c u" '(upcase-region :wk "Upcase region")) - - (lm/leader-keys - "l" '(:ignore t :wk "Downcase") - "l w" '(downcase-word :wk "Downcase word") - "l u" '(downcase-region :wk "Downcase region")) - - ;; Evil window bindings - (lm/leader-keys - "w" '(:ignore t :wk "Window") - "w w" '(evil-window-next :wk "Next window") - "w h" '(evil-window-left :wk "Move cursor to window left") - "w j" '(evil-window-down :wk "Move cursor to window below") - "w k" '(evil-window-up :wk "Move cursor to window above") - "w l" '(evil-window-right :wk "Move cursor to window right") - "w s" '(evil-window-split :wk "Split window horizontally") - "w v" '(evil-window-vsplit :wk "Split window vertically") - "w H" '(evil-window-move-far-left :wk "Move split to left") - "w J" '(evil-window-move-very-bottom :wk "Move split to bottom") - "w K" '(evil-window-move-very-top :wk "Move split to top") - "w L" '(evil-window-move-far-right :wk "Move split to right") - "w c" '(evil-window-delete :wk "Close window") - "w o" '(delete-other-windows :wk "Delete other windows") - "w =" '(balance-windows :wk "Balance windows") - "q k" '(kill-buffer-and-window :wk "Kill buf and window") - "q q" '(save-buffers-kill-terminal :wk "Save bufs, kill term")) - - ;; (evil-global-set-key 'visual "K" (kbd ":m '<-2 RET gv '< gk")) - (evil-global-set-key 'visual "K" 'drag-stuff-up) - ;; (evil-global-set-key 'visual "J" (kbd ":m '>+1 RET gv '> gj")) - (evil-global-set-key 'visual "J" 'drag-stuff-down) - - (lm/leader-keys - "p" '(:ignore t :wk "Project") - "p o" '(dashboard-open :wk "Return to dashboard") - "p f" '(project-find-file :wk "Find project file")) - -) - -(use-package all-the-icons - :ensure t - :diminish - :if (display-graphic-p)) -(use-package all-the-icons-dired - :hook (dired-mode . (lambda () (all-the-icons-dired-mode t)))) - -(setq backup-directory-alist - `((".*" . "~/emacs/auto-saves"))) -(setq auto-save-file-name-transforms - `((".*" "~/emacs/auto-saves" t))) - -(use-package company - :defer 2 - :diminish - :custom - (company-begin-commands '(self-insert-command)) - (company-idle-delay .1) - (company-minimum-prefix-length 2) - (company-show-numbers t) - (company-tooltip-align-annotations 't) - (global-company-mode t)) - -(use-package company-box - :after company - :diminish - :hook (company-mode . company-box-mode)) - -(use-package dashboard - :ensure t - :diminish - :init - (setq initial-buffer-choice 'dashboard-open) - (setq dashboard-set-heading-icons t) - ;; (setq dashboard-set-navigator t) - (setq dashboard-set-file-icons t) - (setq dashboard-banner-logo-title "Welcome to Emacs!") - ;; (setq dashboard-startup-banner 'logo) ;; default logo - (setq dashboard-startup-banner "~/pictures/smol-penguin.png") - (setq dashboard-center-content t) - (setq dashboard-items '((recents . 5) - (agenda . 5) - (bookmarks . 3) - ;; (registers . 3) - (projects . 3))) -;; (dashboard-modify-heading-icons '((recents . "file-text") - ;; (bookmarks . "book"))) - :config - (dashboard-setup-startup-hook)) - -(use-package diminish) - -(use-package drag-stuff - :diminish - :config -(drag-stuff-global-mode 1)) - -(use-package flycheck - :ensure t - :defer t - :diminish - :init (global-flycheck-mode)) - -(set-face-attribute 'default nil -;; try switch to Source Code Pro - :font "FiraCodeNerdFontMono" - :height 110 - :weight 'medium) - (set-face-attribute 'variable-pitch nil - :font "FiraCodeNerdFontMono" - :height 120 - :weight 'medium) - (set-face-attribute 'fixed-pitch nil - :font "FiraCodeNerdFontMono" - :height 110 - :weight 'medium) - ;; Makes commented text and keywords italics. - ;; This is working in emacsclient but not emacs. - ;; Your font must have an italic face available. - (set-face-attribute 'font-lock-comment-face nil - :slant 'italic) - (set-face-attribute 'font-lock-keyword-face nil - :slant 'italic) - - ;; This sets the default font on all graphical frames created after restarting Emacs. - ;; Does the same thing as 'set-face-attribute default' above, but emacsclient fonts - ;; are not right unless I also add this method of setting the default font. - (add-to-list 'default-frame-alist '(font . "FiraCodeNerdFontMono-14")) - - ;; Uncomment the following line if line spacing needs adjusting. - ;; (setq-default line-spacing 0.12) - -(global-set-key (kbd "C-=") 'text-scale-increase) -(global-set-key (kbd "C--") 'text-scale-decrease) -(global-set-key (kbd "") 'text-scale-increase) -(global-set-key (kbd "") 'text-scale-decrease) - -(use-package gnuplot-mode) -;; automatically open files ending with .gp or .gnuplot in gnuplot mode -;; (setq auto-mode-alist -;; (append '(("\\.\\(gp\\|gnuplot\\)$" . gnuplot-mode)) auto-mode-alist))) - -(use-package image-dired+) - -(setq-default indent-tabs-mode nil) - (setq-default tab-width 4) - (setq-default indent-line-function 'insert-tab) - (setq-default c-default-style "linux" - c-basic-offset 4) -;; if indent-tabs-mode is off, untabify before saving -;;(add-hook 'write-file-hooks -;; (lambda () (if (not indent-tabs-mode) -;; (untabify (point-min) (point-max))))) - -;; This assumes you've installed the package via MELPA. -(use-package ligature - :config - ;; Enable the "www" ligature in every possible major mode - (ligature-set-ligatures 't '("www")) - ;; Enable traditional ligature support in eww-mode, if the - ;; `variable-pitch' face supports it - (ligature-set-ligatures 'eww-mode '("ff" "fi" "ffi")) - ;; Enable all FiraMonoNerdFont and Fira Code ligatures in programming modes - - (ligature-set-ligatures 'prog-mode - '(;; == === ==== => =| =>>=>=|=>==>> ==< =/=//=// =~ - ;; =:= =!= - ("=" (rx (+ (or ">" "<" "|" "/" "~" ":" "!" "=")))) - ;; ;; ;;; - (";" (rx (+ ";"))) - ;; && &&& - ("&" (rx (+ "&"))) - ;; !! !!! !. !: !!. != !== !~ - ("!" (rx (+ (or "=" "!" "\." ":" "~")))) - ;; ?? ??? ?: ?= ?. - ("?" (rx (or ":" "=" "\." (+ "?")))) - ;; %% %%% - ("%" (rx (+ "%"))) - ;; |> ||> |||> ||||> |] |} || ||| |-> ||-|| - ;; |->>-||-<<-| |- |== ||=|| - ;; |==>>==<<==<=>==//==/=!==:===> - ("|" (rx (+ (or ">" "<" "|" "/" ":" "!" "}" "\]" - "-" "=" )))) - ;; \\ \\\ \/ - ("\\" (rx (or "/" (+ "\\")))) - ;; ++ +++ ++++ +> - ("+" (rx (or ">" (+ "+")))) - ;; :: ::: :::: :> :< := :// ::= - (":" (rx (or ">" "<" "=" "//" ":=" (+ ":")))) - ;; // /// //// /\ /* /> /===:===!=//===>>==>==/ - ("/" (rx (+ (or ">" "<" "|" "/" "\\" "\*" ":" "!" - "=")))) - ;; .. ... .... .= .- .? ..= ..< - ("\." (rx (or "=" "-" "\?" "\.=" "\.<" (+ "\.")))) - ;; -- --- ---- -~ -> ->> -| -|->-->>->--<<-| - ("-" (rx (+ (or ">" "<" "|" "~" "-")))) - ;; *> */ *) ** *** **** - ("*" (rx (or ">" "/" ")" (+ "*")))) - ;; www wwww - ("w" (rx (+ "w"))) - ;; <> >->--<<-| - ("-" (rx (+ (or ">" "<" "|" "~" "-")))) - ;; *> */ *) ** *** **** - ("*" (rx (or ">" "/" ")" (+ "*")))) - ;; www wwww - ("w" (rx (+ "w"))) - ;; <>