emacs and random stuff
Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
This commit is contained in:
@@ -1,29 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
bspc rule -r "*"
|
|
||||||
##Autostart
|
|
||||||
pgrep -x sxhkd > /dev/null || sxhkd &
|
|
||||||
picom --experimental-backends &
|
|
||||||
feh --bg-scale ~/Downloads/gruvbox.jpg &
|
|
||||||
killall "polybar"
|
|
||||||
polybar main &
|
|
||||||
killall node
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bspc monitor -d
|
|
||||||
#bspc monitor -d I II III IV V VI VII VIII IX X
|
|
||||||
|
|
||||||
bspc config border_width 2
|
|
||||||
bspc config window_gap 10
|
|
||||||
bspc config focus_follows_pointer true
|
|
||||||
|
|
||||||
bspc config split_ratio 0.52
|
|
||||||
bspc config borderless_monocle true
|
|
||||||
bspc config gapless_monocle true
|
|
||||||
bspc config single_monocle true
|
|
||||||
bspc config top_padding 50
|
|
||||||
|
|
||||||
bspc config normal_border_color "#ffffff"
|
|
||||||
bspc config active_border_color "#1bb1b1"
|
|
||||||
bspc config focused_border_color "#fe8019"
|
|
||||||
bspc config urgent_border_color "#fe8019"
|
|
@@ -29,8 +29,8 @@ idk random variables to match my color theme
|
|||||||
* Settings
|
* Settings
|
||||||
** Setting the default face
|
** Setting the default face
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(set-frame-font "Fira Code 12" nil t)
|
(set-frame-font "Fira Code 13" nil t)
|
||||||
(add-to-list 'default-frame-alist '(font . "Fira Code-12"))
|
(add-to-list 'default-frame-alist '(font . "Fira Code-13"))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Some mode settings based on personal preferences
|
** Some mode settings based on personal preferences
|
||||||
@@ -195,7 +195,7 @@ To undo and redo easily like vi
|
|||||||
:init
|
:init
|
||||||
(setq lsp-ui-doc-show-with-cursor t)
|
(setq lsp-ui-doc-show-with-cursor t)
|
||||||
:config
|
:config
|
||||||
(lsp-ui-peek-enable 1)
|
(lsp-ui-peek-enable 1)
|
||||||
(lsp-ui-doc-enable 1))
|
(lsp-ui-doc-enable 1))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
@@ -259,6 +259,8 @@ For autocomplete
|
|||||||
|
|
||||||
(use-package haskell-mode)
|
(use-package haskell-mode)
|
||||||
|
|
||||||
|
(use-package lsp-latex)
|
||||||
|
|
||||||
(use-package rustic)
|
(use-package rustic)
|
||||||
|
|
||||||
(use-package nix-mode
|
(use-package nix-mode
|
||||||
@@ -291,7 +293,6 @@ For autocomplete
|
|||||||
(evil-define-key 'insert vterm-mode-map (kbd "C-y") 'vterm-yank)
|
(evil-define-key 'insert vterm-mode-map (kbd "C-y") 'vterm-yank)
|
||||||
(setq vterm-timer-delay 0.005))
|
(setq vterm-timer-delay 0.005))
|
||||||
|
|
||||||
|
|
||||||
(use-package vterm-toggle
|
(use-package vterm-toggle
|
||||||
:config
|
:config
|
||||||
(setq vterm-toggle-fullscreen-p nil)
|
(setq vterm-toggle-fullscreen-p nil)
|
||||||
@@ -502,12 +503,12 @@ This returns the command to run in the terminal
|
|||||||
(file (file-name-sans-extension buffer-file-name)))
|
(file (file-name-sans-extension buffer-file-name)))
|
||||||
(pcase (file-name-extension full)
|
(pcase (file-name-extension full)
|
||||||
("c" (concat "gcc " full " -lm -pthread -o " file " && " file " && rm " file))
|
("c" (concat "gcc " full " -lm -pthread -o " file " && " file " && rm " file))
|
||||||
("java" (concat "java" full))
|
("java" (concat "java " full))
|
||||||
("py" (concat "python" full))
|
("py" (concat "python " full))
|
||||||
("cpp" (concat "g++ " full " -o " file " && " file " && rm " file))
|
("cpp" (concat "g++ " full " -o " file " && " file " && rm " file))
|
||||||
("hs" (concat "runhaskell " full))
|
("hs" (concat "runhaskell " full))
|
||||||
("sh" (concat "sh" full))
|
("sh" (concat "sh " full))
|
||||||
("js" (concat "node" full))
|
("js" (concat "node " full))
|
||||||
("ts" (concat "tsc" full " && node " file ".js && rm " file ".js" ))
|
("ts" (concat "tsc" full " && node " file ".js && rm " file ".js" ))
|
||||||
("rs" (concat "rustc" full " -o " file " && " file " && rm " file)))))
|
("rs" (concat "rustc" full " -o " file " && " file " && rm " file)))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
@@ -1,154 +0,0 @@
|
|||||||
#
|
|
||||||
# wm independent hotkeys
|
|
||||||
#
|
|
||||||
|
|
||||||
# terminal emulator
|
|
||||||
super + Return
|
|
||||||
st
|
|
||||||
|
|
||||||
# program launcher
|
|
||||||
super + d
|
|
||||||
rofi -show drun
|
|
||||||
|
|
||||||
# make sxhkd reload its configuration files:
|
|
||||||
super + alt + c
|
|
||||||
pkill -USR1 -x sxhkd
|
|
||||||
|
|
||||||
|
|
||||||
# quit/restart bspwm
|
|
||||||
super + shift + {e,r}
|
|
||||||
bspc {quit,wm -r}
|
|
||||||
|
|
||||||
# close and kill
|
|
||||||
super + {_,shift + }q
|
|
||||||
bspc node -{c,k}
|
|
||||||
|
|
||||||
# alternate between the tiled and monocle layout
|
|
||||||
super + shift + f
|
|
||||||
bspc desktop -l next
|
|
||||||
|
|
||||||
# send the newest marked node to the newest preselected node
|
|
||||||
#super + y
|
|
||||||
# bspc node newest.marked.local -n newest.!automatic.local
|
|
||||||
|
|
||||||
# swap the current node and the biggest window
|
|
||||||
#super + g
|
|
||||||
# bspc node -s biggest.window
|
|
||||||
|
|
||||||
#
|
|
||||||
# state/flags
|
|
||||||
#
|
|
||||||
|
|
||||||
# set the window state
|
|
||||||
super + {t,shift + t,s,f}
|
|
||||||
bspc node -t {\~tiled,\~pseudo_tiled,\~floating,\~fullscreen}
|
|
||||||
|
|
||||||
# set the node flags
|
|
||||||
#super + ctrl + {m,x,y,z}
|
|
||||||
# bspc node -g {marked,locked,sticky,private}
|
|
||||||
|
|
||||||
#
|
|
||||||
# focus/swap
|
|
||||||
#
|
|
||||||
|
|
||||||
# focus the node in the given direction
|
|
||||||
super + shift + {h,j,k,l}
|
|
||||||
bspc node -s {west,south,north,east}
|
|
||||||
|
|
||||||
super + {h,j,k,l}
|
|
||||||
bspc node -f {west,south,north,east}
|
|
||||||
|
|
||||||
# focus the code for the given path jump
|
|
||||||
#super + {p,b,comma,period}
|
|
||||||
# bspc node -f @{parent,brother,first,second}
|
|
||||||
|
|
||||||
# focus the next/previous window in the current desktop
|
|
||||||
super + {_,shift + }c
|
|
||||||
bspc node -f {next,prev}.local.!hidden.window
|
|
||||||
|
|
||||||
# focus the next/previous desktop in the current monitor
|
|
||||||
super + bracket{left,right}
|
|
||||||
bspc desktop -f {prev,next}.local
|
|
||||||
|
|
||||||
# focus the last node/desktop
|
|
||||||
#super + {grave,Tab}
|
|
||||||
# bspc {node,desktop} -f last
|
|
||||||
|
|
||||||
# focus the older or newer node in the focus history
|
|
||||||
super + {o,i}
|
|
||||||
bspc wm -h off; \
|
|
||||||
bspc node {older,newer} -f; \
|
|
||||||
bspc wm -h on
|
|
||||||
|
|
||||||
# focus or send to the given desktop
|
|
||||||
super + {_,shift + }{1-9,0}
|
|
||||||
bspc {desktop -f,node -d} '^{1-9,10}'
|
|
||||||
|
|
||||||
#
|
|
||||||
# preselect
|
|
||||||
#
|
|
||||||
|
|
||||||
# preselect the direction
|
|
||||||
super + ctrl + {h,j,k,l}
|
|
||||||
bspc node -p {west,south,north,east}
|
|
||||||
|
|
||||||
# preselect the ratio
|
|
||||||
super + ctrl + {1-9}
|
|
||||||
bspc node -o 0.{1-9}
|
|
||||||
|
|
||||||
# cancel the preselection for the focused node
|
|
||||||
super + ctrl + space
|
|
||||||
bspc node -p cancel
|
|
||||||
|
|
||||||
# cancel the preselection for the focused desktop
|
|
||||||
super + ctrl + shift + space
|
|
||||||
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
|
|
||||||
|
|
||||||
#
|
|
||||||
# move/resize
|
|
||||||
#
|
|
||||||
|
|
||||||
# expand a window by moving one of its side outward
|
|
||||||
super + alt + {h,j,k,l}
|
|
||||||
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
|
|
||||||
|
|
||||||
# contract a window by moving one of its side inward
|
|
||||||
super + alt + shift + {h,j,k,l}
|
|
||||||
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
|
|
||||||
|
|
||||||
# move a floating window
|
|
||||||
super + {Left,Down,Up,Right}
|
|
||||||
bspc node -v {-20 0,0 20,0 -20,20 0}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Screenshotting
|
|
||||||
#
|
|
||||||
@Print
|
|
||||||
flameshot & flameshot full -p ~/Pictures
|
|
||||||
# exec scrot '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
|
|
||||||
shift + @Print
|
|
||||||
flameshot & flameshot gui -p ~/Pictures
|
|
||||||
# exec scrot -s '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
|
|
||||||
#super + @Print
|
|
||||||
#flameshot gui full -p ~/Pictures
|
|
||||||
# exec scrot -u '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
|
|
||||||
alt + @Print
|
|
||||||
flameshot & flameshot gui -d 10000 -p ~/Pictures
|
|
||||||
# exec scrot -d 10 '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
|
|
||||||
|
|
||||||
#
|
|
||||||
#mpd/ncmpcpp
|
|
||||||
#
|
|
||||||
|
|
||||||
super + shift + n
|
|
||||||
mpc prev
|
|
||||||
|
|
||||||
super + shift + m
|
|
||||||
mpc next
|
|
||||||
|
|
||||||
super + shift + space
|
|
||||||
mpc toggle
|
|
||||||
super + A
|
|
||||||
mpc seek +00:00:05
|
|
||||||
super + D
|
|
||||||
mpc seek -00:00:05
|
|
0
home/natto/config/xmonad/padding-icon.sh
Normal file → Executable file
0
home/natto/config/xmonad/padding-icon.sh
Normal file → Executable file
@@ -15,5 +15,6 @@
|
|||||||
./services.nix
|
./services.nix
|
||||||
./pkgs.nix
|
./pkgs.nix
|
||||||
./stuff.nix
|
./stuff.nix
|
||||||
|
./emacs.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
31
home/natto/emacs.nix
Normal file
31
home/natto/emacs.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{ config, pkgs, inputs, ... }:
|
||||||
|
let
|
||||||
|
mymacs = config: # with inputs.emacs-overlay.packages.${pkgs.system}; already resolved with overlay
|
||||||
|
with pkgs; emacsWithPackagesFromUsePackage {
|
||||||
|
inherit config;
|
||||||
|
package = emacsNativeComp;
|
||||||
|
alwaysEnsure = true;
|
||||||
|
alwaysTangle = true;
|
||||||
|
extraEmacsPackages = epkgs: with epkgs; [
|
||||||
|
use-package
|
||||||
|
(epkgs.tree-sitter-langs.withPlugins (_: epkgs.tree-sitter-langs.plugins))
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
home.file = with config; {
|
||||||
|
"config.org" = {
|
||||||
|
source = ./config/emacs/config.org;
|
||||||
|
target = "${home.homeDirectory}/.emacs.d/config.org";
|
||||||
|
};
|
||||||
|
"init.el" = {
|
||||||
|
source = ./config/emacs/init.el;
|
||||||
|
target = "${home.homeDirectory}/.emacs.d/init.el";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs.emacs = {
|
||||||
|
enable = true;
|
||||||
|
package = mymacs ./config/emacs/config.org;
|
||||||
|
};
|
||||||
|
services.emacs.enable = true;
|
||||||
|
}
|
@@ -38,6 +38,8 @@
|
|||||||
xdotool
|
xdotool
|
||||||
(inputs.nbfc.packages.${pkgs.system}.nbfc-client-c)
|
(inputs.nbfc.packages.${pkgs.system}.nbfc-client-c)
|
||||||
(flake.packages.${pkgs.system}.customscripts)
|
(flake.packages.${pkgs.system}.customscripts)
|
||||||
|
translate-shell
|
||||||
|
w3m
|
||||||
|
|
||||||
# GUI utils
|
# GUI utils
|
||||||
(xfce.thunar.override {
|
(xfce.thunar.override {
|
||||||
@@ -68,13 +70,14 @@
|
|||||||
obs-studio
|
obs-studio
|
||||||
|
|
||||||
# Wine and games and stuff
|
# Wine and games and stuff
|
||||||
|
steam
|
||||||
wineWowPackages.stable
|
wineWowPackages.stable
|
||||||
winetricks
|
winetricks
|
||||||
citra
|
citra
|
||||||
yuzu
|
yuzu
|
||||||
ryujinx
|
# (inputs.nix-gaming.packages.${pkgs.system}.osu-stable)
|
||||||
(inputs.nix-gaming.packages.${pkgs.system}.osu-stable)
|
|
||||||
(flake.packages.${pkgs.system}.tlauncher)
|
(flake.packages.${pkgs.system}.tlauncher)
|
||||||
|
mangohud
|
||||||
|
|
||||||
# Dev shit
|
# Dev shit
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
@@ -94,6 +97,9 @@
|
|||||||
catchfile
|
catchfile
|
||||||
framed
|
framed
|
||||||
upquote
|
upquote
|
||||||
|
pdfsync
|
||||||
|
tocloft
|
||||||
|
enumitem
|
||||||
tcolorbox;
|
tcolorbox;
|
||||||
})
|
})
|
||||||
python3Packages.pygments
|
python3Packages.pygments
|
||||||
|
@@ -1,41 +1,6 @@
|
|||||||
{ config, pkgs, inputs, ... }:
|
{ config, pkgs, inputs, ... }:
|
||||||
{
|
{
|
||||||
home.file = with config; {
|
|
||||||
"config.org" = {
|
|
||||||
source = ./config/emacs/config.org;
|
|
||||||
target = "${home.homeDirectory}/.emacs.d/config.org";
|
|
||||||
};
|
|
||||||
"init.el" = {
|
|
||||||
source = ./config/emacs/init.el;
|
|
||||||
target = "${home.homeDirectory}/.emacs.d/init.el";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
emacs =
|
|
||||||
let
|
|
||||||
mymacs = config: # with inputs.emacs-overlay.packages.${pkgs.system}; already resolved with overlay
|
|
||||||
with pkgs; emacsWithPackagesFromUsePackage {
|
|
||||||
inherit config;
|
|
||||||
package = emacsGit;
|
|
||||||
alwaysEnsure = true;
|
|
||||||
alwaysTangle = true;
|
|
||||||
extraEmacsPackages = epkgs: with epkgs; [
|
|
||||||
use-package
|
|
||||||
(epkgs.tree-sitter-langs.withPlugins (_: epkgs.tree-sitter-langs.plugins))
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
enable = true;
|
|
||||||
package = mymacs ./config/emacs/config.org;
|
|
||||||
};
|
|
||||||
|
|
||||||
sxhkd = {
|
|
||||||
enable = false;
|
|
||||||
extraConfig = builtins.readFile ./config/sxhkd/sxhkdrc;
|
|
||||||
};
|
|
||||||
|
|
||||||
mpd = {
|
mpd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
musicDirectory = "${config.home.homeDirectory}/Music";
|
musicDirectory = "${config.home.homeDirectory}/Music";
|
||||||
|
@@ -25,6 +25,9 @@ let
|
|||||||
${openjdk8}/bin/java -jar "${jar}" "$@"
|
${openjdk8}/bin/java -jar "${jar}" "$@"
|
||||||
'';
|
'';
|
||||||
targetPkgs = pkgs: with pkgs; [
|
targetPkgs = pkgs: with pkgs; [
|
||||||
|
openal
|
||||||
|
pulseaudio
|
||||||
|
libpulseaudio
|
||||||
zip
|
zip
|
||||||
zlib
|
zlib
|
||||||
alsa-lib
|
alsa-lib
|
||||||
|
Reference in New Issue
Block a user