summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortmu <t.man.atl.2012@gmail.com>2023-08-02 12:07:55 -0700
committertmu <t.man.atl.2012@gmail.com>2023-08-02 12:07:55 -0700
commit05d72eabc9e1f0daefe26be6f7c54f83f58d5f15 (patch)
tree229cbfa49468c011954242ca11b475b9d04cb362
parentc2235d1850722932b7fb9dcf5907bbcc040bb29c (diff)
update. mostly emacs
-rw-r--r--emacs/init.el183
-rw-r--r--emacs/project-stuff.el81
-rw-r--r--foot/foot.ini~187
-rw-r--r--sway/config129
-rw-r--r--sway/config~295
-rwxr-xr-xsway/otherwindow~60
-rwxr-xr-xsway/switch.py101
-rwxr-xr-xsway/switch.sh~10
-rwxr-xr-xsway/toEmacs.sh~11
-rw-r--r--waybar/config~163
-rw-r--r--waybar/style.css~254
11 files changed, 386 insertions, 1088 deletions
diff --git a/emacs/init.el b/emacs/init.el
index c8955ab..5ded8b6 100644
--- a/emacs/init.el
+++ b/emacs/init.el
@@ -6,6 +6,90 @@
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(comment-style 'extra-line)
+ '(connection-local-criteria-alist
+ '(((:application tramp :protocol "flatpak")
+ tramp-container-connection-local-default-flatpak-profile)
+ ((:application tramp)
+ tramp-connection-local-default-system-profile tramp-connection-local-default-shell-profile)
+ ((:application eshell)
+ eshell-connection-default-profile)))
+ '(connection-local-profile-alist
+ '((tramp-container-connection-local-default-flatpak-profile
+ (tramp-remote-path "/app/bin" tramp-default-remote-path "/bin" "/usr/bin" "/sbin" "/usr/sbin" "/usr/local/bin" "/usr/local/sbin" "/local/bin" "/local/freeware/bin" "/local/gnu/bin" "/usr/freeware/bin" "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" "/opt/sbin" "/opt/local/bin"))
+ (tramp-connection-local-darwin-ps-profile
+ (tramp-process-attributes-ps-args "-acxww" "-o" "pid,uid,user,gid,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "state=abcde" "-o" "ppid,pgid,sess,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etime,pcpu,pmem,args")
+ (tramp-process-attributes-ps-format
+ (pid . number)
+ (euid . number)
+ (user . string)
+ (egid . number)
+ (comm . 52)
+ (state . 5)
+ (ppid . number)
+ (pgrp . number)
+ (sess . number)
+ (ttname . string)
+ (tpgid . number)
+ (minflt . number)
+ (majflt . number)
+ (time . tramp-ps-time)
+ (pri . number)
+ (nice . number)
+ (vsize . number)
+ (rss . number)
+ (etime . tramp-ps-time)
+ (pcpu . number)
+ (pmem . number)
+ (args)))
+ (tramp-connection-local-busybox-ps-profile
+ (tramp-process-attributes-ps-args "-o" "pid,user,group,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "stat=abcde" "-o" "ppid,pgid,tty,time,nice,etime,args")
+ (tramp-process-attributes-ps-format
+ (pid . number)
+ (user . string)
+ (group . string)
+ (comm . 52)
+ (state . 5)
+ (ppid . number)
+ (pgrp . number)
+ (ttname . string)
+ (time . tramp-ps-time)
+ (nice . number)
+ (etime . tramp-ps-time)
+ (args)))
+ (tramp-connection-local-bsd-ps-profile
+ (tramp-process-attributes-ps-args "-acxww" "-o" "pid,euid,user,egid,egroup,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "state,ppid,pgid,sid,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etimes,pcpu,pmem,args")
+ (tramp-process-attributes-ps-format
+ (pid . number)
+ (euid . number)
+ (user . string)
+ (egid . number)
+ (group . string)
+ (comm . 52)
+ (state . string)
+ (ppid . number)
+ (pgrp . number)
+ (sess . number)
+ (ttname . string)
+ (tpgid . number)
+ (minflt . number)
+ (majflt . number)
+ (time . tramp-ps-time)
+ (pri . number)
+ (nice . number)
+ (vsize . number)
+ (rss . number)
+ (etime . number)
+ (pcpu . number)
+ (pmem . number)
+ (args)))
+ (tramp-connection-local-default-shell-profile
+ (shell-file-name . "/bin/sh")
+ (shell-command-switch . "-c"))
+ (tramp-connection-local-default-system-profile
+ (path-separator . ":")
+ (null-device . "/dev/null"))
+ (eshell-connection-default-profile
+ (eshell-path-env-list))))
'(custom-enabled-themes '(tmu-custom))
'(custom-safe-themes
'("6dafb31ade9ff07229faaf05c41c2ae475c44731362b792f65f3930b1a2c9cfd" "dc77e008092a5a4aa6b6ed8e4826bebf8f2fb930a8de073bf7f458efd884cca8" "d1ff3e66028f9c527298580d2a64f9e3280f07f9e94d4dada72b67ef15069441" "3d4e3644e237a95683daa73e397c4c0d1ae06bbaaf8040104232591a28bc1315" "12a07bc38295e4b06a8965db261f51ea7ea61fbf91b3ef41298bbb549d1d9403" default))
@@ -13,7 +97,7 @@
'("/home/tmu/Desktop/eway/sway" "/home/tmu/Desktop/eway/cage" "/home/tmu/Desktop/eway/wlroots" "/home/tmu/Desktop/eway/comp" "/home/tmu/Desktop/eway"))
'(menu-bar-mode nil)
'(package-selected-packages
- '(evil-snipe evil-surround markdown-preview-mode 2048-game evil ibuffer-project persp-mode-projectile-bridge persp-mode fish-mode spell-fu pyim chinese-conv esup buffer-move vertico flymake-diagnostic-at-point emms-state emms-player-simple-mpv eshell-fringe-status esh-help eshell-vterm vterm rustic benchmark-init ivy-prescient eat ivy-hydra ivy emms eyebrowse highlight dumb-jump volume workgroups async bongo hydra free-keys gxref fold-this simple-httpd xelb oauth2 imenu-anywhere popwin folding gdscript-mode))
+ '(evil-commentary frog-jump-buffer modus-themes which-key evil-collection hl-todo evil-easymotion sideline-flymake sideline-lsp zig-mode tree-sitter-langs tree-sitter company-go pyim-basedict evil-snipe evil-surround markdown-preview-mode 2048-game evil ibuffer-project persp-mode-projectile-bridge persp-mode fish-mode spell-fu pyim chinese-conv esup buffer-move vertico flymake-diagnostic-at-point emms-state emms-player-simple-mpv eshell-fringe-status esh-help eshell-vterm vterm rustic benchmark-init ivy-prescient eat ivy-hydra ivy emms eyebrowse highlight dumb-jump volume workgroups async bongo hydra free-keys gxref fold-this simple-httpd xelb oauth2 imenu-anywhere popwin folding gdscript-mode))
'(scroll-bar-mode nil)
'(tool-bar-mode nil)
'(transient-mark-mode nil)
@@ -189,6 +273,11 @@ mark. Does the same of ARG number sexps if given"
;; (selectrum-highlight-candidates-function #'orderless-highlight-matches)
)
+(use-package which-key
+ :ensure t
+ :init
+ (which-key-mode))
+
;; better in-buffer completion
;; (require 'company)
;; (add-hook 'prog-mode-hook (lambda ()
@@ -242,30 +331,20 @@ mark. Does the same of ARG number sexps if given"
(autoload 'async-eval "~/.emacs.d/async-eval.el" "evaluate in another emacs process" t)
-(load-file "~/.emacs.d/project-stuff.el")
-
-(load-file "~/.emacs.d/single-header.el")
-
-(put 'dired-find-alternate-file 'disabled nil)
-(put 'upcase-region 'disabled nil)
-(put 'list-timers 'disabled nil)
-(put 'narrow-to-region 'disabled nil)
-
-;; no tabs
-(setq-default indent-tabs-mode nil)
-
-;; input method stuff
-(setq rime-translate-keybindings
- '("C-f" "C-b" "C-n" "C-p" "C-g" "<left>" "<right>" "<up>" "<down>" "<prior>" "<next>" "<delete>"))
-(setq rime-share-data-dir "~/.local/share/fcitx5/rime")
-(setq rime-show-candidate 'popup)
-
;; evil mode stuff
+(setq
+ evil-want-keybinding nil
+ evil-want-integration t)
+;; evil-want-C-d-scroll nil
+;; evil-want-C-w-delete nil
+;; evil-disable-insert-state-bindings t
+;; evil-respect-visual-line-mode t
+(require 'evil)
+(when (require 'evil-collection nil t)
+ (evil-collection-init))
(evil-mode 1)
+(evilem-default-keybindings "SPC")
(define-key evil-motion-state-map (kbd "TAB") 'indent-for-tab-command)
-(setq evil-want-C-d-scroll nil
- evil-want-C-w-delete nil
- evil-disable-insert-state-bindings t)
(use-package evil-surround
:ensure t
:config
@@ -283,6 +362,66 @@ mark. Does the same of ARG number sexps if given"
(define-key evil-insert-state-map (kbd "C-a") 'move-beginning-of-line)
(define-key evil-normal-state-map (kbd "M-.") 'xref-find-definitions)
+(add-hook 'prog-mode-hook (lambda ()
+ (modify-syntax-entry ?_ "w") ))
+
+;;; sashka bindings
+;; movement
+(defun evil-window-split-and-switch ()
+ "Split the window vertically and switch to the new buffer."
+ (interactive)
+ (evil-window-split)
+ (other-window 1))
+
+(defun evil-window-vsplit-and-switch ()
+ "Split the window horizontally and switch to the new buffer."
+ (interactive)
+ (evil-window-vsplit)
+ (other-window 1))
+
+(evil-define-key 'normal global-map (kbd "SPC RET") 'vterm)
+(evil-define-key 'normal global-map (kbd "SPC !") 'abort-recursive-edit)
+(evil-define-key 'normal global-map (kbd "SPC f f") 'find-file)
+
+(evil-define-key 'normal global-map (kbd "SPC SPC SPC j") 'evil-window-split-and-switch)
+(evil-define-key 'normal global-map (kbd "SPC SPC SPC k") 'evil-window-split-and-switch)
+(evil-define-key 'normal global-map (kbd "SPC SPC SPC h") 'evil-window-vsplit-and-switch)
+(evil-define-key 'normal global-map (kbd "SPC SPC SPC l") 'evil-window-vsplit-and-switch)
+(evil-define-key 'normal global-map (kbd "SPC SPC h") 'evil-window-left)
+(evil-define-key 'normal global-map (kbd "SPC SPC j") 'evil-window-down)
+(evil-define-key 'normal global-map (kbd "SPC SPC k") 'evil-window-up)
+(evil-define-key 'normal global-map (kbd "SPC SPC l") 'evil-window-right)
+(evil-define-key 'normal global-map (kbd "SPC SPC w") 'delete-window)
+(evil-define-key 'normal global-map (kbd "SPC SPC q") 'delete-window)
+(evil-define-key 'normal global-map (kbd "SPC SPC b") 'balance-windows)
+(evil-define-key 'normal global-map (kbd "SPC s s") 'save-buffer)
+(evil-define-key 'normal global-map (kbd "SPC s f") 'counsel-find-file)
+(evil-define-key 'normal global-map (kbd "SPC s r") 'counsel-rg)
+(evil-define-key 'normal global-map (kbd "SPC ;") 'frog-jump-buffer)
+
+;; frog jump stuff
+(add-hook 'frog-menu-after-init-hook (lambda ()
+ (setq-local avy-background nil)))
+
+(load-file "~/.emacs.d/project-stuff.el")
+
+;; (load-file "~/.emacs.d/single-header.el")
+
+(put 'dired-find-alternate-file 'disabled nil)
+(put 'upcase-region 'disabled nil)
+(put 'list-timers 'disabled nil)
+(put 'narrow-to-region 'disabled nil)
+
+;; no tabs
+(setq-default indent-tabs-mode nil)
+
+;; input method stuff
+(setq rime-translate-keybindings
+ '("C-f" "C-b" "C-n" "C-p" "C-g" "<left>" "<right>" "<up>" "<down>" "<prior>" "<next>" "<delete>"))
+(setq rime-share-data-dir "~/.local/share/fcitx5/rime")
+(setq rime-show-candidate 'popup)
+
+
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
diff --git a/emacs/project-stuff.el b/emacs/project-stuff.el
index 03142b2..29b515e 100644
--- a/emacs/project-stuff.el
+++ b/emacs/project-stuff.el
@@ -7,6 +7,10 @@
(add-hook 'xref-backend-functions 'gxref-xref-backend)
+;; don't forget that eglot exists
+;; (global-company-mode 1)
+;; (setq company-idle-delay 0.1)
+
;; (require 'semantic/sb)
;; (setq semantic-default-submodes
;; '(global-semantic-idle-scheduler-mode
@@ -17,11 +21,9 @@
;; global-semantic-mru-bookmark-mode
;; global-semantic-idle-local-symbol-highlight-mode)
;; semantic-idle-scheduler-work-idle-time 5)
-;; (semantic-mode 1)
+;; (semantic-mode 1
;; (global-ede-mode t)
-;; don't forget that eglot exists
-
;; better commenting stuff
(global-set-key (kbd "C-x C-;") 'comment-or-uncomment-region)
(global-set-key (kbd "C-x ;") 'comment-line)
@@ -29,6 +31,9 @@
(setq asm-comment-char ?#)
+;; nice eglot binds
+(global-set-key (kbd "C-c f") 'eglot-code-action-quickfix)
+(global-set-key (kbd "C-c C-f") 'eglot-code-actions)
;; deal white whitespace better
(setq whitespace-style
@@ -38,6 +43,8 @@
(whitespace-mode 1)
(display-fill-column-indicator-mode 1)))
+(global-hl-todo-mode 1)
+
(require 'sr-speedbar "~/.emacs.d/sr-speedbar.el" nil)
(defun speedbar-switch-and-setup ()
@@ -59,6 +66,8 @@
(global-unset-key (kbd "M-i"))
(global-set-key (kbd "M-i") 'speedbar-switch-and-setup)
+(global-set-key (kbd "M-Z") 'suspend-frame)
+
;; indent code when pasting, from
;; https://trey-jackson.blogspot.com/2008/03/emacs-tip-15-indent-yanked-code.html
@@ -93,6 +102,19 @@ BEG and END define the region."
(let ((transient-mark-mode nil))
(yank-advised-indent-function (region-beginning) (region-end)))))
+(defadvice evil-paste-before (after yank-indent activate)
+ "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)."
+ (if (and (not (ad-get-arg 0))
+ (member major-mode yank-indent-modes))
+ (let ((transient-mark-mode nil))
+ (yank-advised-indent-function (region-beginning) (region-end)))))
+
+(defadvice evil-paste-after (after yank-indent activate)
+ "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)."
+ (if (and (not (ad-get-arg 0))
+ (member major-mode yank-indent-modes))
+ (let ((transient-mark-mode nil))
+ (yank-advised-indent-function (region-beginning) (region-end)))))
;; make ibuffer play with projectile
@@ -110,6 +132,12 @@ BEG and END define the region."
;; code folding
+(add-to-list 'load-path "~/.emacs.d/")
+;; (require 'ts-foldV)
+
+(autoload 'hide-lines "hide-lines" "Hide lines based on a regexp" t)
+(global-set-key (kbd "C-c /") 'hide-lines)
+
;; region folding
(autoload 'fold-this "fold-this" "arbitrary folding" t)
(autoload 'fold-this-unfold-at-point "fold-this" "arbitrary folding" t)
@@ -168,13 +196,28 @@ BEG and END define the region."
(hs-minor-mode 1)
;; (flymake-mode 1)
(spell-fu-mode 0)
+ (superword-mode 1)
(add-hook 'before-save-hook (lambda () (clean-prog-file (current-buffer))))))
-(use-package flymake-diagnostic-at-point
- :after flymake
- :config
- (setq flymake-diagnostic-at-point-timer-delay 1)
- (add-hook 'flymake-mode-hook #'flymake-diagnostic-at-point-mode))
+;; (use-package flymake-diagnostic-at-point
+;; :after flymake
+;; :config
+;; (setq flymake-diagnostic-at-point-timer-delay 1)
+;; (add-hook 'flymake-mode-hook #'flymake-diagnostic-at-point-mode))
+
+(use-package sideline
+ :init
+ (setq sideline-backends-skip-current-line t ; don't display on current line
+ sideline-order-left 'down ; or 'up
+ sideline-order-right 'up ; or 'down
+ sideline-format-left "%s " ; format for left aligment
+ sideline-format-right " %s" ; format for right aligment
+ sideline-priority 100 ; overlays' priority
+ sideline-display-backend-name t) ; display the backend name
+ :hook ((flycheck-mode . sideline-mode) ; for `sideline-flycheck`
+ (flymake-mode . sideline-mode)) ; for `sideline-flymake`
+ :init
+ (setq sideline-backends-right '(sideline-flymake)))
(setq rustic-lsp-setup-p nil)
@@ -205,6 +248,7 @@ BEG and END define the region."
(require 'evil)
(evil-set-initial-state 'vterm-mode 'emacs)
+(evil-define-key 'normal global-map (kbd "SPC i") 'imenu)
(define-key eshell-mode-map (kbd "M-o") 'other-window)
(define-key eshell-mode-map (kbd "M-W") 'switch-buffer)
@@ -213,8 +257,6 @@ BEG and END define the region."
(recenter-top-bottom 0)))
;; compilation stuff
-(global-unset-key (kbd "M-m"))
-(global-unset-key (kbd "M-M"))
(global-set-key (kbd "M-m") (lambda ()
(interactive)
(if flymake-mode
@@ -224,20 +266,12 @@ BEG and END define the region."
(setq compilation-always-kill t
compilation-scroll-output t)
-;; better finding things
-(global-set-key (kbd "C-s") 'swiper)
+;; better searching
+(setq counsel-grep-base-command
+ "rg -i -M 120 --no-heading --line-number --color never '%s' %s")
+(global-set-key (kbd "C-s") 'counsel-grep-or-swiper)
(global-set-key (kbd "C-S-s") 'isearch-forward)
-(global-set-key (kbd "C-r") 'counsel-ag)
-
-;; perspective and friends
-;; (require 'perspective)
-;; (customize-set-variable 'persp-mode-prefix-key (kbd "M-p"))
-;; (global-set-key (kbd "C-x C-b") 'persp-ibuffer)
-;; (persp-mode)
-;; (global-set-key (kbd "C-x b") 'persp-switch-to-buffer*)
-;; (global-set-key (kbd "M-W") 'persp-switch-to-buffer*)
-;; (global-set-key (kbd "C-x k") 'persp-kill-buffer*)
-
+(define-key evil-normal-state-map (kbd "C-r") 'counsel-rg)
(require 'persp-mode)
(persp-mode 1)
@@ -267,6 +301,7 @@ BEG and END define the region."
persp-kill-foreign-buffer-behaviour 'dont-ask)
(global-set-key (kbd "M-p") 'persp-key-map)
(global-set-key (kbd "C-x b") #'persp-switch-to-buffer)
+ (global-set-key (kbd "C-x B") #'switch-to-buffer)
(global-set-key (kbd "C-x C-b") (lambda ()
(interactive)
(with-persp-buffer-list () (ibuffer))))
diff --git a/foot/foot.ini~ b/foot/foot.ini~
deleted file mode 100644
index 30e98f3..0000000
--- a/foot/foot.ini~
+++ /dev/null
@@ -1,187 +0,0 @@
-# -*- conf -*-
-
-# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
-# term=foot (or xterm-256color if built with -Dterminfo=disabled)
-# login-shell=no
-
-# app-id=foot
-# title=foot
-# locked-title=no
-
-font=Terminus:size=12
-# font-bold=<bold variant of regular font>
-# font-italic=<italic variant of regular font>
-# font-bold-italic=<bold+italic variant of regular font>
-# line-height=<font metrics>
-# letter-spacing=0
-# horizontal-letter-offset=0
-# vertical-letter-offset=0
-# underline-offset=<font metrics>
-# box-drawings-uses-font-glyphs=no
-dpi-aware=no
-
-# initial-window-size-pixels=700x500 # Or,
-# initial-window-size-chars=<COLSxROWS>
-# initial-window-mode=windowed
-# pad=2x2 # optionally append 'center'
-# resize-delay-ms=100
-
-# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
-
-# bold-text-in-bright=no
-# word-delimiters=,│`|:"'()[]{}<>
-# selection-target=primary
-# workers=<number of logical CPUs>
-
-[bell]
-# urgent=no
-# notify=no
-# command=
-# command-focused=no
-
-[scrollback]
-# lines=1000
-# multiplier=3.0
-# indicator-position=relative
-# indicator-format=
-
-[url]
-# launch=xdg-open ${url}
-# label-letters=sadfjklewcmpgh
-# osc8-underline=url-mode
-# protocols=http, https, ftp, ftps, file, gemini, gopher
-# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
-
-[cursor]
-# style=block
-# color=<inverse foreground/background>
-# blink=no
-# beam-thickness=1.5
-# underline-thickness=<font underline thickness>
-
-[mouse]
-# hide-when-typing=no
-# alternate-scroll-mode=yes
-
-
-[colors]
-alpha=0.95
-foreground=dfdfdf
-background=080808
-
-## Normal/regular colors (color palette 0-7)
-regular0=222222 # black
-regular1=cc9393 # red
-regular2=7f9f7f # green
-regular3=d0bf8f # yellow
-regular4=6ca0a3 # blue
-regular5=dc8cc3 # magenta
-regular6=93e0e3 # cyan
-regular7=dcdccc # white
-
-## Bright colors (color palette 8-15)
-bright0=666666 # bright black
-bright1=dca3a3 # bright red
-bright2=bfebbf # bright green
-bright3=f0dfaf # bright yellow
-bright4=8cd0d3 # bright blue
-bright5=fcace3 # bright magenta
-bright6=b3ffff # bright cyan
-bright7=ffffff # bright white
-
-## dimmed colors (see foot.ini(5) man page)
-# dim0=<not set>
-# ...
-# dim7=<not-set>
-
-## The remaining 256-color palette
-# 16 = <256-color palette #16>
-# ...
-# 255 = <256-color palette #255>
-
-## Misc colors
-# selection-foreground=<inverse foreground/background>
-# selection-background=<inverse foreground/background>
-# jump-labels=<regular0> <regular3>
-# urls=<regular3>
-# scrollback-indicator=<regular0> <bright4>
-
-[csd]
-# preferred=server
-# size=26
-# font=<primary font>
-# color=<foreground color>
-# hide-when-typing=no
-# border-width=0
-# border-color=<csd.color>
-# button-width=26
-# button-color=<background color>
-# button-minimize-color=<regular4>
-# button-maximize-color=<regular2>
-# button-close-color=<regular1>
-
-[key-bindings]
-# scrollback-up-page=Shift+Page_Up
-# scrollback-up-half-page=none
-# scrollback-up-line=none
-# scrollback-down-page=Shift+Page_Down
-# scrollback-down-half-page=none
-# scrollback-down-line=none
-# clipboard-copy=Control+Shift+c XF86Copy
-# clipboard-paste=Control+Shift+v XF86Paste
-# primary-paste=Shift+Insert
-# search-start=Control+Shift+r
-# font-increase=Control+plus Control+equal Control+KP_Add
-# font-decrease=Control+minus Control+KP_Subtract
-# font-reset=Control+0 Control+KP_0
-# spawn-terminal=Control+Shift+n
-# minimize=none
-# maximize=none
-# fullscreen=none
-# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
-# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
-# pipe-selected=[xargs -r firefox] none
-# show-urls-launch=Control+Shift+u
-# show-urls-copy=none
-# show-urls-persistent=none
-# noop=none
-
-[search-bindings]
-# cancel=Control+g Control+c Escape
-# commit=Return
-# find-prev=Control+r
-# find-next=Control+s
-# cursor-left=Left Control+b
-# cursor-left-word=Control+Left Mod1+b
-# cursor-right=Right Control+f
-# cursor-right-word=Control+Right Mod1+f
-# cursor-home=Home Control+a
-# cursor-end=End Control+e
-# delete-prev=BackSpace
-# delete-prev-word=Mod1+BackSpace Control+BackSpace
-# delete-next=Delete
-# delete-next-word=Mod1+d Control+Delete
-# extend-to-word-boundary=Control+w
-# extend-to-next-whitespace=Control+Shift+w
-# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
-# primary-paste=Shift+Insert
-
-[url-bindings]
-# cancel=Control+g Control+c Control+d Escape
-# toggle-url-visible=t
-
-[text-bindings]
-# \x03=Mod4+c # Map Super+c -> Ctrl+c
-
-[mouse-bindings]
-# selection-override-modifiers=Shift
-# primary-paste=BTN_MIDDLE
-# select-begin=BTN_LEFT
-# select-begin-block=Control+BTN_LEFT
-# select-extend=BTN_RIGHT
-# select-extend-character-wise=Control+BTN_RIGHT
-# select-word=BTN_LEFT-2
-# select-word-whitespace=Control+BTN_LEFT-2
-# select-row=BTN_LEFT-3
-
-# vim: ft=dosini
diff --git a/sway/config b/sway/config
index d3f2c0a..beec2af 100644
--- a/sway/config
+++ b/sway/config
@@ -15,8 +15,6 @@ set $term foot
# on the original workspace that the command was run on.
set $menu exec wofi -G --show run,drun
-exec swayrd 1>/dev/null 2>/dev/null
-#this think doesnt stop when sway dies
#general preferences
focus_follows_mouse no
@@ -27,9 +25,13 @@ input type:keyboard {
repeat_rate 35
# xkb_file ~/.xkb/symbols/tmucustom.xkb
xkb_options compose:ralt
+ #,grp:rctrl_toggle
+ xkb_numlock enabled
+# xkb_layout us,us
+# xkb_variant ,dvorak
}
input type:touchpad {
- dwt enabled
+ dwt disabled
tap enabled
drag disabled
drag_lock disabled
@@ -38,16 +40,21 @@ input type:touchpad {
}
#specfically the little red one
-#input "1739:52619:SYNA8006:00_06CB:CD8B_Mouse" {
+input "1739:52619:SYNA8006:00_06CB:CD8B_Mouse" {
# pointer_accel -1
# accel_profile flat
# scroll_factor 0.25
-#}
+ dwt disabled
+}
+for_window [app_id=mpv] floating enable
#start language switcher
exec fcitx5 -d
+#notifs
+exec mako
+
#handle monitors properly
exec_always bash -c 'if $(swaymsg -t get_outputs | grep -q -F "HDMI"); then swaymsg output eDP-1 disable; swaymsg output HDMI-A-1 enable; swaymsg output DP-2 enable; else swaymsg output eDP-1 enable; swaymsg output HDMI-A-1 disable; swaymsg output DP-2 disable; fi'
@@ -73,45 +80,48 @@ output DP-2 {
mode 1920x1080@60Hz
}
+
+#
+# Status Bar:
+#
+# Read `man 5 sway-bar` for more information about this section.
+bar {
+ swaybar_command waybar
+# position bottom
+# height 20
+
+# # When the status_command prints a new line to stdout, swaybar updates.
+# # The default just shows the current date and time.
+# # status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
+
+# # colors {
+# # statusline #ffffff
+# # background #323232
+# # inactive_workspace #32323200 #32323200 #d0d0d0
+# # }
+}
+
#theming stuff
#titlebar_border_thickness 2
#no extra padding
-titlebar_padding 2
+# titlebar_padding 2
#hide_edge_borders both
#smart_borders on
-default_border none
-font monospace 10
workspace_layout stacking
-focus_wrapping no
+focus_wrapping yes
show_marks on
-
-
-### I want to be able to open a bunch of stuff quickly on startup and have it go the right place
-for_window [app_id="foot" title="terminal"] {
- move container to workspace T
- mark "t"
- fullscreen
-}
-
-
-
-exec foot -T "terminal"
-#bindsym $mod+Shift+s exec vivaldi-stable; exec brave; exec foot -T "terminal"
-
-
-# things I want to toggle
-#bindsym $mod+m [title="Messages for web"] scratchpad show
-#bindsym $mod+n [class="Spotify"] scratchpad show
-
-
-### dedicated terminal
-# I want a permanent terminal that is fullscreened
-bindsym $mod+Shift+Return exec ~/.config/sway/switch.sh
-
-### marking
-# using sway-marker
-bindsym $mod+bracketright exec sway-marker mark
-bindsym $mod+bracketleft exec sway-marker goto
+# start in normal state
+default_border none
+titlebar_border_thickness 0
+titlebar_padding 2
+font monospace 10
+# bar mode dock
+# two modes, with and without metadata
+bindsym $mod+g default_border none, titlebar_border_thickness 0, titlebar_padding 2, font monospace 10, bar mode dock
+bindsym $mod+Shift+g default_border pixel 0, titlebar_border_thickness 0, titlebar_padding 0, font monospace 0, bar mode hide
+# more jumping stuff
+bindsym --to-code $mod+m exec sway-marker mark
+bindsym --to-code $mod+Shift+m exec sway-marker goto
### Key bindings
#
@@ -127,13 +137,13 @@ bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu
# get me to emacs
-bindsym $mod+p exec ~/.config/sway/toEmacs.sh
+bindsym $mod+Shift+p exec ~/.config/sway/toEmacs.sh
# make a new emacs frame here
-bindsym $mod+Shift+p exec emacsclient -c
+bindsym $mod+p exec emacsclient -c --alternate-editor=emacs
-# start throwaway browser
-bindsym $mod+e exec MOZ_ENABLE_WAYLAND=1 BDK_BACKEND=wayland firefox
+# start browser
+bindsym $mod+e exec firefox
# start quick-open menu
#bindsym $mod+o exec $term --title quicklauncher -e bash -c 'read line; eval $line | less -r'
@@ -168,6 +178,9 @@ bindsym XF86MonBrightnessUp exec brightnessctl -e s +10%
bindsym $mod+grave exec systemctl suspend
bindsym $mod+Escape exec sh -c 'swaylock -i /home/tmu/Pictures/capture/installsource.png -l -e -t --indicator-radius 100 & systemctl suspend'
+bindsym $mod+w exec sh -c '/home/tmu/.config/sway/switch.py'
+
+
#
# Moving around:
#
@@ -177,11 +190,21 @@ bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
+bindsym $mod+h focus left
+bindsym $mod+j focus down
+bindsym $mod+k focus up
+bindsym $mod+l focus right
+
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
+
+bindsym $mod+Shift+h move left
+bindsym $mod+Shift+j move down
+bindsym $mod+Shift+k move up
+bindsym $mod+Shift+l move right
#
# Workspaces:
#
@@ -227,8 +250,8 @@ bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking #not sure I need, I'll leave it
-bindsym $mod+w exec swayr switch-window
-#bindsym $mod+e layout toggle split
+bindsym $mod+y layout tabbed
+bindsym $mod+t layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
@@ -272,24 +295,4 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
-#
-# Status Bar:
-#
-# Read `man 5 sway-bar` for more information about this section.
-bar {
- swaybar_command waybar
-# position bottom
-# height 20
-
-# # When the status_command prints a new line to stdout, swaybar updates.
-# # The default just shows the current date and time.
-# # status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
-
-# # colors {
-# # statusline #ffffff
-# # background #323232
-# # inactive_workspace #32323200 #32323200 #d0d0d0
-# # }
-}
-
include /etc/sway/config.d/*
diff --git a/sway/config~ b/sway/config~
deleted file mode 100644
index 80eeb46..0000000
--- a/sway/config~
+++ /dev/null
@@ -1,295 +0,0 @@
-# Default config for sway
-#
-# Copy this to ~/.config/sway/config and edit it to your liking.
-#
-# Read `man 5 sway` for a complete reference.
-
-### Variables
-#
-# Logo key. Use Mod1 for Alt.
-set $mod Mod4
-# Your preferred terminal emulator
-set $term foot
-# Your preferred application launcher
-# Note: pass the final command to swaymsg so that the resulting window can be opened
-# on the original workspace that the command was run on.
-set $menu exec wofi -G --show run,drun
-
-exec swayrd 1>/dev/null 2>/dev/null
-#this think doesnt stop when sway dies
-
-#general preferences
-focus_follows_mouse no
-seat * hide_cursor when-typing enable
-
-input type:keyboard {
- repeat_delay 210
- repeat_rate 35
-# xkb_file ~/.xkb/symbols/tmucustom.xkb
- xkb_options compose:ralt
-}
-input type:touchpad {
- dwt enabled
- tap enabled
- drag disabled
- drag_lock disabled
- middle_emulation disabled
- tap_button_map lrm
-}
-
-#specfically the little red one
-#input "1739:52619:SYNA8006:00_06CB:CD8B_Mouse" {
-# pointer_accel -1
-# accel_profile flat
-# scroll_factor 0.25
-#}
-
-
-#start language switcher
-exec fcitx5 -d
-
-#handle monitors properly
-exec_always bash -c 'if $(swaymsg -t get_outputs | grep -q -F "HDMI"); then swaymsg output eDP-1 disable; swaymsg output HDMI-A-1 enable; swaymsg output DP-2 enable; else swaymsg output eDP-1 enable; swaymsg output HDMI-A-1 disable; swaymsg output DP-2 disable; fi'
-
-#get me a background
-#exec_always bash -c 'sleep 0.5s ;systemctl --user start background.service'
-exec_always bash -c 'setwallpaper ~/Pictures/capture/aesthetic/turquoiseCity.jpg'
-
-output HDMI-A-1 {
-# background ~/Pictures/tree.jpg fill
- pos 0 0
- mode 1920x1080@60Hz
-}
-
-output eDP-1 {
-# background ~/Pictures/tree.jpg fill
- pos 0 0
- mode 1920x1080@60Hz
-}
-
-output DP-2 {
-# background ~/Pictures/tree.jpg fill
- pos 1920 0
- mode 1920x1080@60Hz
-}
-
-#theming stuff
-#titlebar_border_thickness 2
-#no extra padding
-titlebar_padding 2
-#hide_edge_borders both
-#smart_borders on
-default_border none
-font monospace 10
-workspace_layout stacking
-focus_wrapping no
-show_marks on
-
-
-### I want to be able to open a bunch of stuff quickly on startup and have it go the right place
-for_window [app_id="foot" title="terminal"] {
- move container to workspace T
- mark "t"
- fullscreen
-}
-
-
-
-exec foot -T "terminal"
-#bindsym $mod+Shift+s exec vivaldi-stable; exec brave; exec foot -T "terminal"
-
-
-# things I want to toggle
-#bindsym $mod+m [title="Messages for web"] scratchpad show
-#bindsym $mod+n [class="Spotify"] scratchpad show
-
-
-### dedicated terminal
-# I want a permanent terminal that is fullscreened
-bindsym $mod+Return exec ~/.config/sway/switch.sh
-
-### marking
-# using sway-marker
-bindsym $mod+bracketright exec sway-marker mark
-bindsym $mod+bracketleft exec sway-marker goto
-
-### Key bindings
-#
-# Basics:
-#
-# Start a terminal
-bindsym $mod+Shift+Return exec $term
-
-# Kill focused window
-bindsym $mod+Shift+q kill
-
-# Start your launcher
-bindsym $mod+d exec $menu
-
-# get me to emacs
-bindsym $mod+p exec ~/.config/sway/toEmacs.sh
-
-# make a new emacs frame here
-bindsym $mod+Shift+p exec emacsclient -c
-
-# start throwaway browser
-bindsym $mod+e exec MOZ_ENABLE_WAYLAND=1 BDK_BACKEND=wayland firefox
-
-# start quick-open menu
-#bindsym $mod+o exec $term --title quicklauncher -e bash -c 'read line; eval $line | less -r'
-#for_window [title="quicklauncher"] floating enable, resize set 30 ppt 35 ppt, border pixel 2
-
-#other window swap
-bindsym $mod+o exec swaymsg [con_id=$(~/.config/sway/otherwindow f)] focus
-
-# Drag floating windows by holding down $mod and left mouse button.
-# Resize them with right mouse button + $mod.
-# Despite the name, also works for non-floating windows.
-# Change normal to inverse to use left mouse button for resizing and right
-# mouse button for dragging.
-floating_modifier $mod normal
-
-# Reload the configuration file
-bindsym $mod+Shift+c reload
-
-# Exit sway (logs you out of your Wayland session)
-bindsym $mod+Shift+e exit
-
-# media keys
-bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% && $refresh_i3status
-bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% && $refresh_i3status
-bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
-bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
-
-bindsym XF86MonBrightnessDown exec brightnessctl -e s 10%-
-bindsym XF86MonBrightnessUp exec brightnessctl -e s +10%
-
-# other bindings
-bindsym $mod+grave exec systemctl suspend
-bindsym $mod+Escape exec sh -c 'swaylock -i /home/tmu/Pictures/capture/installsource.png -l -e -t --indicator-radius 100 & systemctl suspend'
-
-#
-# Moving around:
-#
-# Or use $mod+[up|down|left|right]
-bindsym $mod+Left focus left
-bindsym $mod+Down focus down
-bindsym $mod+Up focus up
-bindsym $mod+Right focus right
-
-# Move the focused window with the same, but add Shift
-bindsym $mod+Shift+Left move left
-bindsym $mod+Shift+Down move down
-bindsym $mod+Shift+Up move up
-bindsym $mod+Shift+Right move right
-#
-# Workspaces:
-#
-# Switch to workspace
-bindsym $mod+1 workspace number 1
-bindsym $mod+2 workspace number 2
-bindsym $mod+3 workspace number 3
-bindsym $mod+4 workspace number 4
-bindsym $mod+5 workspace number 5
-bindsym $mod+6 workspace number 6
-bindsym $mod+7 workspace number 7
-bindsym $mod+8 workspace number 8
-bindsym $mod+9 workspace number 9
-bindsym $mod+0 workspace number 10
-# Move focused container to workspace
-bindsym $mod+Shift+1 move container to workspace number 1
-bindsym $mod+Shift+2 move container to workspace number 2
-bindsym $mod+Shift+3 move container to workspace number 3
-bindsym $mod+Shift+4 move container to workspace number 4
-bindsym $mod+Shift+5 move container to workspace number 5
-bindsym $mod+Shift+6 move container to workspace number 6
-bindsym $mod+Shift+7 move container to workspace number 7
-bindsym $mod+Shift+8 move container to workspace number 8
-bindsym $mod+Shift+9 move container to workspace number 9
-bindsym $mod+Shift+0 move container to workspace number 10
-
-# move workspaces between monitors
-bindsym $mod+Prior focus output left
-bindsym $mod+Next focus output right
-bindsym $mod+Shift+Prior move workspace output left
-bindsym $mod+Shift+Next move workspace output right
-
-# Note: workspaces can have any name you want, not just numbers.
-# We just use 1-10 as the default.
-#
-# Layout stuff:
-#
-# You can "split" the current object of your focus with
-# $mod+b or $mod+v, for horizontal and vertical splits
-# respectively.
-bindsym $mod+b splith
-bindsym $mod+v splitv
-
-# Switch the current container between different layout styles
-bindsym $mod+s layout stacking #not sure I need, I'll leave it
-bindsym $mod+w exec swayr switch-window
-#bindsym $mod+e layout toggle split
-
-# Make the current focus fullscreen
-bindsym $mod+f fullscreen
-
-# Toggle the current focus between tiling and floating mode
-bindsym $mod+Shift+space floating toggle
-
-# Swap focus between the tiling area and the floating area
-bindsym $mod+space focus mode_toggle
-
-# Move focus to the parent container
-bindsym $mod+a focus parent
-#
-# Scratchpad:
-#
-# Sway has a "scratchpad", which is a bag of holding for windows.
-# You can send windows there and get them back later.
-
-# Move the currently focused window to the scratchpad
-bindsym $mod+Shift+minus move scratchpad
-
-# Show the next scratchpad window or hide the focused scratchpad window.
-# If there are multiple scratchpad windows, this command cycles through them.
-bindsym $mod+minus scratchpad show
-#
-# Resizing containers:
-#
-mode "resize" {
- # left will shrink the containers width
- # right will grow the containers width
- # up will shrink the containers height
- # down will grow the containers height
- bindsym Left resize shrink width 10px
- bindsym Down resize grow height 10px
- bindsym Up resize shrink height 10px
- bindsym Right resize grow width 10px
-
- # Return to default mode
- bindsym Return mode "default"
- bindsym Escape mode "default"
-}
-bindsym $mod+r mode "resize"
-
-#
-# Status Bar:
-#
-# Read `man 5 sway-bar` for more information about this section.
-bar {
- swaybar_command waybar
-# position bottom
-# height 20
-
-# # When the status_command prints a new line to stdout, swaybar updates.
-# # The default just shows the current date and time.
-# # status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
-
-# # colors {
-# # statusline #ffffff
-# # background #323232
-# # inactive_workspace #32323200 #32323200 #d0d0d0
-# # }
-}
-
-include /etc/sway/config.d/*
diff --git a/sway/otherwindow~ b/sway/otherwindow~
deleted file mode 100755
index 0a82e72..0000000
--- a/sway/otherwindow~
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env python3
-
-import sys
-import json
-import subprocess
-
-direction=bool(sys.argv[1] == 't' or sys.argv[1] == 'T')
-swaymsg = subprocess.run(['swaymsg', '-t', 'get_tree'], stdout=subprocess.PIPE)
-data = json.loads(swaymsg.stdout)
-current = data["nodes"][1]["current_workspace"]
-
-for output in data["nodes"]:
- if "current_workspace" in output:
- for workspace in output["nodes"]:
- if workspace["name"] == output["current_workspace"]:
- #maybe gives all the visible ones in multi monitor mode?
- roi = workspace
- break
-
-#workspace = int(data["nodes"][1]["current_workspace"])-1
-#roi = data["nodes"][1]["nodes"][workspace]
-#print(roi)
-temp = roi
-windows = list()
-
-def getNextWindow():
- if focus < len(windows) - 1:
- return focus+1
- else:
- return 0
-
-def getPrevWindow():
- if focus > 0:
- return focus-1
- else:
- return len(windows)-1
-
-def makelist(temp):
- for nodes in "floating_nodes", "nodes":
- for i in range(len(temp[nodes])):
- # print(temp[nodes][i]["name"])
- # print()
- if temp[nodes][i]["name"] is None:
- makelist(temp[nodes][i])
- elif temp[nodes][i]["visible"]:
- windows.append(temp[nodes][i])
-
-def focused(temp_win):
- for i in range(len(temp_win)):
- if temp_win[i]["focused"] == True:
- return i
-
-makelist(temp)
-#print(windows)
-# print(len(windows))
-focus = focused(windows)
-if str(sys.argv[1]) == 't' or str(sys.argv[1]) == 'T':
- print(windows[getNextWindow()]["id"])
-else:
- print(windows[getPrevWindow()]["id"])
diff --git a/sway/switch.py b/sway/switch.py
new file mode 100755
index 0000000..479cf74
--- /dev/null
+++ b/sway/switch.py
@@ -0,0 +1,101 @@
+#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
+
+import subprocess
+import json
+import re
+import gi
+gi.require_version('Gtk', '3.0')
+from gi.repository import Gtk
+
+def parse_icon_name(app_name):
+ app_name = app_name.lower()
+ if app_name in icon_names:
+ return icon_names[app_name]
+ if app_name.endswith('telegram_desktop'):
+ return 'telegram'
+ if app_name.startswith('gimp'):
+ return 'gimp'
+ return app_name
+
+def get_icon(app_name):
+ icon_info = icon_theme.lookup_icon(parse_icon_name(app_name), 48, 0)
+ if icon_info == None:
+ print("Failed to get icon for: " + app_name)
+ # return icon_info.get_filename() if icon_info != None else default_icon_file
+ return default_icon_file
+
+def get_cons(tree):
+ if len(tree.get('nodes')) == 0 and len(tree.get('floating_nodes')) == 0 and (tree.get('type') == 'con' or tree.get('type') == 'floating_con'):
+ return [tree]
+ nodes = []
+ for node in tree.get('floating_nodes'):
+ cons = get_cons(node)
+ nodes += cons
+ for node in tree.get('nodes'):
+ cons = get_cons(node)
+ nodes += cons
+ return nodes
+
+def show_wofi(windows):
+ # command = 'wofi -W 600 -L ' + str(len(windows)) + ' -I -d -i -b -k /dev/null -p "Window" 2>/dev/null'
+ command = 'wofi -G -L ' + str(len(windows)) + ' -I -d -i -b -p "Window" 2>/dev/null'
+ process = subprocess.Popen(command, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+ (result, _) = process.communicate(input='\n'.join(windows).encode())
+ return result
+
+
+def get_tree():
+ sway_tree = subprocess.check_output(['swaymsg', '-rt', 'get_tree'])
+ return json.loads(sway_tree)
+
+def get_windows():
+ cons = get_cons(get_tree())
+ windows = []
+ for con in cons:
+ name = con['name']
+ if len(name) > 70:
+ name = name[:67]+"..."
+ app_id = con.get('app_id')
+ if app_id == None:
+ window_prop = con.get('window_properties')
+ if window_prop != None:
+ app_id = window_prop.get('instance')
+
+ if app_id != None:
+ app_icon = get_icon(app_id)
+ else:
+ app_icon = default_icon_file
+
+ # windows.append("img:id=" + str(con.get('id')) +":img:" + app_icon + ":text:" + name)
+ windows.append("img:id=" + str(con.get('id')) +":img:" + app_icon + ":text:" + app_id + ": " + name)
+ return windows
+
+def parse_selection(selection):
+ id_search = re.search('id=([0-9]*):', selection, re.IGNORECASE)
+ if id_search:
+ return id_search.group(1)
+ return None
+
+def switch_window(id):
+ command="swaymsg [con_id={}] focus".format(id)
+ process = subprocess.Popen(command,shell=True,stdout=subprocess.PIPE)
+ process.communicate()
+
+if __name__ == "__main__":
+ icon_theme = Gtk.IconTheme.get_default()
+ default_icon = icon_theme.lookup_icon("preferences-system-windows", 48, 0)
+ default_icon_file = ""
+ if default_icon:
+ default_icon_file = default_icon.get_filename()
+
+ icon_names = {
+ "code": "visual-studio-code",
+ "qt5ct": "preferences-desktop-theme"
+ }
+
+ windows = get_windows()
+ selection = show_wofi(windows)
+ con_id = parse_selection(str(selection))
+ if con_id:
+ switch_window(con_id)
diff --git a/sway/switch.sh~ b/sway/switch.sh~
deleted file mode 100755
index ccd1bf7..0000000
--- a/sway/switch.sh~
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-a="$(swaymsg -t get_tree | jq '.. | objects | select(.type == "con") | select(.focused == true) | .marks | index("t") != null')"
-
-#echo $a
-if [ $a = "true" ]; then
- swaymsg '[con_mark="l"] focus'
-else
- swaymsg 'mark --add "l"; [con_mark="t"] focus'
-fi
diff --git a/sway/toEmacs.sh~ b/sway/toEmacs.sh~
deleted file mode 100755
index 30d1dc3..0000000
--- a/sway/toEmacs.sh~
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-
-#get be to emacs and back
-
-f=$(swaymsg -t get_tree | jq '.. | objects | select(.focused) | .app_id')
-
-if [ $f = "emacs" ]; then
- swaymsg '[con_mark="E"] focus'
-else
- swaymsg 'mark --add "E", [app_id="emacs"] focus'
-fi
diff --git a/waybar/config~ b/waybar/config~
deleted file mode 100644
index f6b084c..0000000
--- a/waybar/config~
+++ /dev/null
@@ -1,163 +0,0 @@
-{
- "layer": "top", // Waybar at top layer
- "position": "bottom", // Waybar position (top|bottom|left|right)
- "height": 20, // Waybar height (to be removed for auto height)
- // "width": 1280, // Waybar width
- "spacing": 4, // Gaps between modules (4px)
- // Choose the order of the modules
- "modules-left": ["sway/workspaces", "sway/mode"],
- "modules-center": ["sway/window"],
- "modules-right": ["tray", "pulseaudio", "network", "cpu", "memory", "temperature", "backlight", "battery","clock"],
- // Modules configuration
- // "sway/workspaces": {
- // "disable-scroll": true,
- // "all-outputs": true,
- // "format": "{name}: {icon}",
- // "format-icons": {
- // "1": "",
- // "2": "",
- // "3": "",
- // "4": "",
- // "5": "",
- // "urgent": "",
- // "focused": "",
- // "default": ""
- // }
- // },
- //"keyboard-state": {
- // "numlock": true,
- // "capslock": true,
- // "format": "{name} {icon}",
- // "format-icons": {
- // "locked": "",
- // "unlocked": ""
- // }
- //},
- "sway/mode": {
- "format": "<span style=\"italic\">{}</span>"
- },
-// "mpd": {
-// "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elap//sedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
-// "format-disconnected": "Disconnected ",
-// "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
-// "unknown-tag": "N/A",
-// "interval": 2,
-// "consume-icons": {
-// "on": " "
-// },
-// "random-icons": {
-// "off": "<span color=\"#f53c3c\"></span> ",
-// "on": " "
-// },
-// "repeat-icons": {
-// "on": " "
-// },
-// "single-icons": {
-// "on": "1 "
-// },
-// "state-icons": {
-// "paused": "",
-// "playing": ""
-// },
-// "tooltip-format": "MPD (connected)",
-// "tooltip-format-disconnected": "MPD (disconnected)"
-// },
- // "idle_inhibitor": {
- // "format": "{icon}",
- // "format-icons": {
- // "activated": "",
- // "deactivated": ""
- // }
- // },
- "tray": {
- // "icon-size": 21,
- "spacing": 10
- },
- "clock": {
- // "timezone": "America/New_York",
- //"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
- "format": "{:%Y-%m-%d\t%H:%M}",
- "tooltop": false
- },
- "cpu": {
- "format": "CPU {usage}%",
- "tooltip": false
- },
- "memory": {
- "format": "MEM {percentage}%"
- },
- "temperature": {
- // "thermal-zone": 2,
- // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
- "critical-threshold": 80,
- // "format-critical": "{temperatureC}°C {icon}",
- "format": "TEMP {temperatureC}°C",
- //"format-icons": ["", "", ""]
- "tooltip": false
- },
- "backlight": {
- // "device": "acpi_video1",
- "format": "BR {percent}%",
- //"format-icons": ["", "", "", "", "", "", "", "", ""]
- },
- "battery": {
- "states": {
- // "good": 95,
- "warning": 30,
- "critical": 15
- },
- //"format-time": "{H}:{M}",
- "format": "BAT {capacity}%",
- "tooltip": false
- //these aren't in the man pages?
- //"format-charging": "CHR {capacity}%",
- //"format-plugged": "PLUG {capacity}%",
- //"format-alt": "{time}",
- // "format-good": "", // An empty format will hide the module
- //"format-full": "FULL {capacity}%",
- //"format-icons": ["", "", "", "", ""]
- },
- //"battery#bat2": {
- // "bat": "BAT2"
- //},
- "network": {
- // "interface": "wlp2*", // (Optional) To force the use of this interface
- "format-wifi": "{essid} ({signalStrength}%)",
- "format-ethernet": "{ipaddr}/{cidr}",
- "tooltip-format": "{ifname} via {gwaddr}",
- "format-linked": "{ifname} (No IP)",
- "format-disconnected": "Disconnected",
- "format-alt": "{ifname}: {ipaddr}/{cidr}"
- },
- "pulseaudio": {
- // "scroll-step": 1, // %, can be a float
- "format": "VOL {volume}%",
- //"format-bluetooth": "{volume}% {icon} {format_source}",
- //"format-bluetooth-muted": " {icon} {format_source}",
- //"format-muted": " {format_source}",
- //"format-source": "{volume}% ",
- //"format-source-muted": "",
- //"format-icons": {
- // "headphone": "",
- // "hands-free": "",
- // "headset": "",
- // "phone": "",
- // "portable": "",
- // "car": "",
- // "default": ["", "", ""]
- //},
- "on-click": "pavucontrol"
- },
-// "custom/media": {
-// "format": "{icon} {}",
-// "return-type": "json",
-// "max-length": 40,
-// "format-icons": {
-// "spotify": "",
-// "default": "🎜"
-// },
-// "escape": true,
-// "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
- // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
-// }
-} \ No newline at end of file
diff --git a/waybar/style.css~ b/waybar/style.css~
deleted file mode 100644
index 563ee0d..0000000
--- a/waybar/style.css~
+++ /dev/null
@@ -1,254 +0,0 @@
-* {
- /* `otf-font-awesome` is required to be installed for icons */
- font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
- font-size: 13px;
-}
-
-window#waybar {
- background-color: rgba(43, 48, 59, 0.5);
- border-bottom: 3px solid rgba(100, 114, 125, 0.5);
- color: #ffffff;
- transition-property: background-color;
- transition-duration: .5s;
-}
-
-window#waybar.hidden {
- opacity: 0.2;
-}
-
-/*
-window#waybar.empty {
- background-color: transparent;
-}
-window#waybar.solo {
- background-color: #FFFFFF;
-}
-*/
-
-window#waybar.termite {
- background-color: #3F3F3F;
-}
-
-window#waybar.chromium {
- background-color: #000000;
- border: none;
-}
-
-#workspaces button {
- padding: 0 5px;
- background-color: transparent;
- color: #ffffff;
- /* Use box-shadow instead of border so the text isn't offset */
- box-shadow: inset 0 -3px transparent;
- /* Avoid rounded borders under each workspace name */
- border: none;
- border-radius: 0;
-}
-
-/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
-#workspaces button:hover {
- background: rgba(0, 0, 0, 0.2);
- box-shadow: inset 0 -3px #ffffff;
-}
-
-#workspaces button.focused {
- background-color: #64727D;
- box-shadow: inset 0 -3px #ffffff;
-}
-
-#workspaces button.urgent {
- background-color: #eb4d4b;
-}
-
-#mode {
- background-color: #64727D;
- border-bottom: 3px solid #ffffff;
-}
-
-#clock,
-#battery,
-#cpu,
-#memory,
-#disk,
-#temperature,
-#backlight,
-#network,
-#pulseaudio,
-#custom-media,
-#tray,
-#mode,
-#idle_inhibitor,
-#mpd {
- padding: 0 10px;
- color: #ffffff;
-}
-
-#window,
-#workspaces {
- margin: 0 4px;
-}
-
-/* If workspaces is the leftmost module, omit left margin */
-.modules-left > widget:first-child > #workspaces {
- margin-left: 0;
-}
-
-/* If workspaces is the rightmost module, omit right margin */
-.modules-right > widget:last-child > #workspaces {
- margin-right: 0;
-}
-
-#clock {
- background-color: #64727D;
-}
-
-#battery {
- background-color: #ffffff;
- color: #000000;
-}
-
-#battery.charging, #battery.plugged {
- color: #ffffff;
- background-color: #26A65B;
-}
-
-@keyframes blink {
- to {
- background-color: #ffffff;
- color: #000000;
- }
-}
-
-#battery.critical:not(.charging) {
- background-color: #f53c3c;
- color: #ffffff;
- animation-name: blink;
- animation-duration: 0.5s;
- animation-timing-function: linear;
- animation-iteration-count: infinite;
- animation-direction: alternate;
-}
-
-label:focus {
- background-color: #000000;
-}
-
-#cpu {
- background-color: #2ecc71;
- color: #000000;
-}
-
-#memory {
- background-color: #9b59b6;
-}
-
-#disk {
- background-color: #964B00;
-}
-
-#backlight {
- background-color: #90b1b1;
-}
-
-#network {
- background-color: #2980b9;
-}
-
-#network.disconnected {
- background-color: #f53c3c;
-}
-
-#pulseaudio {
- background-color: #f1c40f;
- color: #000000;
-}
-
-#pulseaudio.muted {
- background-color: #90b1b1;
- color: #2a5c45;
-}
-
-#custom-media {
- background-color: #66cc99;
- color: #2a5c45;
- min-width: 100px;
-}
-
-#custom-media.custom-spotify {
- background-color: #66cc99;
-}
-
-#custom-media.custom-vlc {
- background-color: #ffa000;
-}
-
-#temperature {
- background-color: #f0932b;
-}
-
-#temperature.critical {
- background-color: #eb4d4b;
-}
-
-#tray {
- background-color: #2980b9;
-}
-
-#tray > .passive {
- -gtk-icon-effect: dim;
-}
-
-#tray > .needs-attention {
- -gtk-icon-effect: highlight;
- background-color: #eb4d4b;
-}
-
-#idle_inhibitor {
- background-color: #2d3436;
-}
-
-#idle_inhibitor.activated {
- background-color: #ecf0f1;
- color: #2d3436;
-}
-
-#mpd {
- background-color: #66cc99;
- color: #2a5c45;
-}
-
-#mpd.disconnected {
- background-color: #f53c3c;
-}
-
-#mpd.stopped {
- background-color: #90b1b1;
-}
-
-#mpd.paused {
- background-color: #51a37a;
-}
-
-#language {
- background: #00b093;
- color: #740864;
- padding: 0 5px;
- margin: 0 5px;
- min-width: 16px;
-}
-
-#keyboard-state {
- background: #97e1ad;
- color: #000000;
- padding: 0 0px;
- margin: 0 5px;
- min-width: 16px;
-}
-
-#keyboard-state > label {
- padding: 0 5px;
-}
-
-#keyboard-state > label.locked {
- background: rgba(0, 0, 0, 0.2);
-}