emacs and random stuff

Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
This commit is contained in:
2023-01-07 05:11:25 +05:30
parent 2ff04267b6
commit 01ab8d54b9
9 changed files with 52 additions and 228 deletions

View File

@@ -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"

View File

@@ -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
@@ -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)

View File

@@ -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
View File

View 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
View 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;
}

View File

@@ -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

View File

@@ -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";

View File

@@ -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