Compare commits

..

21 Commits

Author SHA1 Message Date
Leni Aniva c130537892 Merge pull request 'feat: Kando' (#20) from ui/kando into main
Reviewed-on: #20
2024-10-03 17:09:48 -07:00
Leni Aniva 274d09ce54
feat: macOS keybindings 2024-09-27 01:06:23 -07:00
Leni Aniva 0c51670191
feat: Basic Kando menu 2024-09-27 00:52:21 -07:00
Leni Aniva e1f3d669ad Merge pull request 'feat: Emacs featureset update' (#18) from emacs into main
Reviewed-on: #18
2024-09-26 23:51:37 -07:00
Leni Aniva 3afebacb07
feat: Set indentation level 2024-09-23 19:53:37 -07:00
Leni Aniva 3e1940d347
Merge branch 'main' into emacs 2024-09-23 19:52:37 -07:00
Leni Aniva 14adae845e Merge pull request 'feat: Option to toggle opacity and screenshot' (#14) from wayland/sway into main
Reviewed-on: #14
2024-09-23 19:51:57 -07:00
Leni Aniva ab3a0ce04f
feat: Remove unused and broken scad mode 2024-09-23 19:50:37 -07:00
Leni Aniva ec4af50a10
feat: Add lsp +eglot, magit +forge 2024-09-23 19:47:01 -07:00
Leni Aniva 92cf668e63
feat: Add `rest` module. Remove `snippets`
Snippets have been distracting
2024-09-04 15:41:44 -07:00
Leni Aniva 087a5b373c
fix: LSP Mode Hook 2024-09-04 15:41:00 -07:00
Leni Aniva 7562b4d747 Merge branch 'main' into wayland/sway 2024-09-03 13:15:19 -07:00
Leni Aniva 9f9c234161 Merge pull request 'fix: Hyprland config update, eww bar integration' (#15) from wayland/hypr into main
Reviewed-on: #15
2024-09-03 13:15:07 -07:00
Leni Aniva 0d697fa202
Merge branch 'main' into wayland/hypr 2024-09-03 13:13:54 -07:00
Leni Aniva dbbc4478eb Merge pull request 'feat: SCAD and telegram modes' (#16) from emacs into main
Reviewed-on: #16
2024-09-03 13:12:38 -07:00
Leni Aniva 2caf9a8792
feat: SCAD and telegram modes 2024-09-03 13:11:32 -07:00
Leni Aniva 4d4ec8c52a Merge pull request 'fix: Fish shell fix' (#11) from shell into main
Reviewed-on: #11
2024-09-03 13:07:35 -07:00
Leni Aniva 7a9bd87e73
fix: Remove deleted option 2024-09-03 13:03:19 -07:00
Leni Aniva f4a62a983d
feat: Add telegram, scad, cov modes. Fix conflict 2024-06-09 00:39:49 -07:00
Leni Aniva 46f3f1fffe
fix: Screenshot and transparency 2024-05-10 20:48:51 -07:00
Leni Aniva 53f3c5d63d
fix: Use prompt_hostname instead of hostname 2024-05-10 20:48:14 -07:00
10 changed files with 526 additions and 11 deletions

View File

@ -28,6 +28,12 @@ Install and set the default shell to ~fish~.
** Utilities ** Utilities
- ~kando~: Pie menu
Note the complicated key binding in the ~kando~ menu configuration. This is
used for MacOS and desktop environments where some keys cannot bind to a
command (e.g. Wacom tablets)
- ~alacritty~: terminal emulator - ~alacritty~: terminal emulator
Note that in order to set this as the default terminal, you may need to put Note that in order to set this as the default terminal, you may need to put

View File

@ -257,8 +257,30 @@ numbers are disabled. For relative line numbers, set this to ~relative~.
(setq whitespace-line-column nil) (setq whitespace-line-column nil)
(display-line-numbers-mode) (display-line-numbers-mode)
) )
(add-hook 'text-mode-hook #'custom/common-richtext-hook) (add-hook 'text-mode-hook #'custom/common-richtext-hook)
(setq
typescript-indent-level 3
css-indent-offset 3
sh-indentation 3
nxml-indent-offset 3
)
#+end_src
** Shells
#+begin_quote
Fish (and possibly other non-POSIX shells) is known to inject garbage
output into some of the child processes that Emacs spawns. Many Emacs
packages/utilities will choke on this output, causing unpredictable
issues.
#+end_quote
Here we set the default shell to ~bash~ but the vterm shell to the system
~$SHELL~ variable.
#+begin_src emacs-lisp
(setq shell-file-name (executable-find "bash"))
(setq vterm-shell (getenv "SHELL"))
#+end_src #+end_src
* Package-specific Settings * Package-specific Settings
@ -344,6 +366,12 @@ Note that ~onsave~ was intentionally turned off because it messes with version c
:files ("highlighting/emacs/*.el"))) :files ("highlighting/emacs/*.el")))
#+end_src #+end_src
*** Cov
#+begin_src emacs-lisp :tangle packages.el
(package! cov)
#+end_src
*** Emacs Lisp *** Emacs Lisp
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -628,7 +656,7 @@ File path is removed from breadcrumb since it is provided by ~doom-modeline~ and
since it clutters the header-line. since it clutters the header-line.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(setq-hook! lsp-mode (setq-hook! 'lsp-mode-hook
lsp-headerline-breadcrumb-enable t lsp-headerline-breadcrumb-enable t
lsp-headerline-breadcrumb-enable-symbol-numbers nil lsp-headerline-breadcrumb-enable-symbol-numbers nil
lsp-headerline-breadcrumb-segments '(symbols) lsp-headerline-breadcrumb-segments '(symbols)
@ -758,3 +786,26 @@ FIXME: Cleanup ~ein:markdown-mode-map~.
:desc "Move cell up" "M-k" 'ein:worksheet-move-cell-up :desc "Move cell up" "M-k" 'ein:worksheet-move-cell-up
) )
#+end_src #+end_src
*** Telegram
#+begin_src emacs-lisp :tangle packages.el
(package! telega)
#+end_src
On Arch Linux, ~telegram-tdlib~ installs to
#+begin_src text :tangle no
telegram-tdlib /usr/
telegram-tdlib /usr/include/
telegram-tdlib /usr/include/td/...
telegram-tdlib /usr/lib/
telegram-tdlib /usr/lib/cmake/
telegram-tdlib /usr/lib/cmake/...
telegram-tdlib /usr/lib/libtdactor.a
telegram-tdlib /usr/lib/...
telegram-tdlib /usr/lib/pkgconfig/...
#+end_src
#+begin_src emacs-lisp
(setq telega-server-libs-prefix "/usr")
#+end_src

View File

@ -24,7 +24,7 @@
company ; the ultimate code completion backend company ; the ultimate code completion backend
;;helm ; the *other* search engine for love and life ;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine... ;;ido ; the other *other* search engine...
ivy ; a search engine for love and life ;;ivy ; a search engine for love and life
vertico ; the search engine of the future vertico ; the search engine of the future
:ui :ui
@ -63,7 +63,7 @@
;;objed ; text object editing for the innocent ;;objed ; text object editing for the innocent
;;parinfer ; turn lisp into python, sort of ;;parinfer ; turn lisp into python, sort of
;;rotate-text ; cycle region at point between text candidates ;;rotate-text ; cycle region at point between text candidates
snippets ; my elves. They type so I don't have to ;;snippets ; my elves. They type so I don't have to
;;word-wrap ; soft wrapping with language-aware indent ;;word-wrap ; soft wrapping with language-aware indent
:emacs :emacs
@ -95,8 +95,8 @@
(eval +overlay) ; run code, run (also, repls) (eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists ;;gist ; interacting with github gists
lookup ; navigate your code and its documentation lookup ; navigate your code and its documentation
(lsp +peek) ; M-x vscode (lsp +peek +eglot) ; M-x vscode
magit ; a git porcelain for Emacs (magit +forge) ; a git porcelain for Emacs
make ; run make tasks from Emacs make ; run make tasks from Emacs
pass ; password manager for nerds pass ; password manager for nerds
pdf ; pdf enhancements pdf ; pdf enhancements
@ -161,7 +161,7 @@
;;qt ; the 'cutest' gui framework ever ;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs ;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6 ;;raku ; the artist formerly known as perl6
;;rest ; Emacs as a REST client rest ; Emacs as a REST client
;;rst ; ReST in peace ;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp +tree-sitter) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() (rust +lsp +tree-sitter) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()

View File

@ -51,7 +51,7 @@ function fish_prompt
echo -n '@' echo -n '@'
set_color AFD75F set_color AFD75F
echo -n (hostname) echo -n (prompt_hostname)
set_color white set_color white
echo -n ':' echo -n ':'

View File

@ -10,7 +10,7 @@ monitor=,preferred,auto,auto
# See https://wiki.hyprland.org/Configuring/Keywords/ for more # See https://wiki.hyprland.org/Configuring/Keywords/ for more
exec-once = hyprpaper & swaync & fcitx5 & flameshot & eww --config ~/.config/eww/bar open vbar exec-once = hyprpaper & swaync & fcitx5 & flameshot & eww --config ~/.config/eww/bar open vbar & kando
# Source a file (multi-file configs) # Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf # source = ~/.config/hypr/myColors.conf
@ -84,7 +84,7 @@ dwindle {
master { master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_is_master = true #new_is_master = true
} }
gestures { gestures {
@ -142,6 +142,9 @@ bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d bind = $mainMod SHIFT, down, movewindow, d
bind = , SUPER_R, global, kando:main
# F13
bind = , code:191, global, kando:edit
# Workspaces # Workspaces
$w1 = ~/.config/hypr/wallpaper.sh 1 $w1 = ~/.config/hypr/wallpaper.sh 1
@ -197,3 +200,9 @@ bindm = $mainMod, mouse:273, resizewindow
bind = SUPER,Tab,cyclenext, # change focus to another window bind = SUPER,Tab,cyclenext, # change focus to another window
bind = SUPER,Tab,bringactivetotop, # bring it to the top bind = SUPER,Tab,bringactivetotop, # bring it to the top
# Functional keys
bindl=, XF86AudioMute, exec, amixer set Master toggle
bindl=, XF86AudioPlay, exec, playerctl play-pause
bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous

2
kando/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
/Singleton*
/session

15
kando/config.json Normal file
View File

@ -0,0 +1,15 @@
{
"menuTheme": "neon-lights",
"darkMenuTheme": "default",
"menuThemeColors": {
"neon-lights": {
"glow-color": "rgba(168, 255, 196, 1)",
"connector-color": "rgba(173, 222, 255, 0.75)"
}
},
"darkMenuThemeColors": {},
"enableDarkModeForMenuThemes": false,
"sidebarVisible": false,
"enableVersionCheck": true,
"zoomFactor": 1
}

429
kando/menus.json Normal file
View File

@ -0,0 +1,429 @@
{
"menus": [
{
"shortcut": "Control+Alt+Shift+U",
"shortcutID": "main",
"centered": false,
"root": {
"type": "submenu",
"name": "Main",
"icon": "award_star",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "submenu",
"name": "Apps",
"icon": "apps",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "command",
"data": {
"command": "x-www-browser"
},
"name": "Web Browser",
"icon": "globe",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-email"
},
"name": "E-Mail",
"icon": "mail",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "gimp"
},
"name": "GIMP",
"icon": "gimp",
"iconTheme": "simple-icons"
},
{
"type": "command",
"data": {
"command": "xdg-open ~"
},
"name": "File Browser",
"icon": "folder_shared",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "x-terminal-emulator"
},
"name": "Terminal",
"icon": "terminal",
"iconTheme": "material-symbols-rounded"
}
]
},
{
"type": "submenu",
"name": "Web Links",
"icon": "public",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "uri",
"data": {
"uri": "https://www.google.com"
},
"name": "Google",
"icon": "google",
"iconTheme": "simple-icons"
},
{
"type": "uri",
"data": {
"uri": "https://github.com/kando-menu/kando"
},
"name": "Kando on GitHub",
"icon": "github",
"iconTheme": "simple-icons"
},
{
"type": "uri",
"data": {
"uri": "https://ko-fi.com/schneegans"
},
"name": "Kando on Ko-fi",
"icon": "kofi",
"iconTheme": "simple-icons"
},
{
"type": "uri",
"data": {
"uri": "https://www.youtube.com/@simonschneegans"
},
"name": "Kando on YouTube",
"icon": "youtube",
"iconTheme": "simple-icons"
},
{
"type": "uri",
"data": {
"uri": "https://discord.gg/hZwbVSDkhy"
},
"name": "Kando on Discord",
"icon": "discord",
"iconTheme": "simple-icons"
}
]
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+AltLeft+ArrowRight",
"delayed": false
},
"name": "Next Workspace",
"icon": "arrow_forward",
"iconTheme": "material-symbols-rounded"
},
{
"type": "submenu",
"name": "Clipboard",
"icon": "assignment",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+KeyV",
"delayed": true
},
"name": "Paste",
"icon": "content_paste_go",
"iconTheme": "material-symbols-rounded",
"angle": 90
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+KeyC",
"delayed": true
},
"name": "Copy",
"icon": "content_copy",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+KeyX",
"delayed": true
},
"name": "Cut",
"icon": "cut",
"iconTheme": "material-symbols-rounded"
}
]
},
{
"type": "submenu",
"name": "Audio",
"icon": "play_circle",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "hotkey",
"data": {
"hotkey": "MediaTrackNext",
"delayed": false
},
"name": "Next Track",
"icon": "skip_next",
"iconTheme": "material-symbols-rounded",
"angle": 90
},
{
"type": "hotkey",
"data": {
"hotkey": "MediaPlayPause",
"delayed": false
},
"name": "Play / Pause",
"icon": "play_pause",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "AudioVolumeMute",
"delayed": false
},
"name": "Mute",
"icon": "music_off",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "MediaTrackPrevious",
"delayed": false
},
"name": "Previous Track",
"icon": "skip_previous",
"iconTheme": "material-symbols-rounded",
"angle": 270
}
]
},
{
"type": "submenu",
"name": "Windows",
"icon": "select_window",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "hotkey",
"data": {
"hotkey": "MetaLeft+ArrowUp",
"delayed": true
},
"name": "Toggle Maximize",
"icon": "open_in_full",
"iconTheme": "material-symbols-rounded",
"angle": 0
},
{
"type": "hotkey",
"data": {
"hotkey": "MetaLeft+ArrowRight",
"delayed": true
},
"name": "Tile Right",
"icon": "text_select_jump_to_end",
"iconTheme": "material-symbols-rounded",
"angle": 90
},
{
"type": "hotkey",
"data": {
"hotkey": "AltLeft+F4",
"delayed": true
},
"name": "Close Window",
"icon": "cancel_presentation",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "MetaLeft+ArrowLeft",
"delayed": true
},
"name": "Tile Left",
"icon": "text_select_jump_to_beginning",
"iconTheme": "material-symbols-rounded",
"angle": 270
}
]
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+AltLeft+ArrowLeft",
"delayed": false
},
"name": "Previous Workspace",
"icon": "arrow_back",
"iconTheme": "material-symbols-rounded"
},
{
"type": "submenu",
"name": "Bookmarks",
"icon": "folder_special",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir DOWNLOAD)\""
},
"name": "Downloads",
"icon": "download",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir VIDEOS)\""
},
"name": "Videos",
"icon": "video_camera_front",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir PICTURES)\""
},
"name": "Pictures",
"icon": "imagesmode",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir DOCUMENTS)\""
},
"name": "Documents",
"icon": "text_ad",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir DESKTOP)\""
},
"name": "Desktop",
"icon": "desktop_windows",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open ~"
},
"name": "Home",
"icon": "home",
"iconTheme": "material-symbols-rounded"
},
{
"type": "command",
"data": {
"command": "xdg-open \"$(xdg-user-dir MUSIC)\""
},
"name": "Music",
"icon": "music_note",
"iconTheme": "material-symbols-rounded"
}
]
}
]
}
},
{
"root": {
"type": "submenu",
"name": "Edit",
"icon": "trip_origin",
"iconTheme": "material-symbols-rounded",
"children": [
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+KeyZ",
"delayed": true
},
"name": "Undo",
"icon": "undo",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+ShiftLeft+KeyZ",
"delayed": true
},
"name": "Redo",
"icon": "redo",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "ControlLeft+KeyR",
"delayed": true
},
"name": "Remesh",
"icon": "background_grid_small",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "F3",
"delayed": true
},
"name": "Search",
"icon": "search",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "ShiftLeft+Space",
"delayed": true
},
"name": "Brush",
"icon": "brush",
"iconTheme": "material-symbols-rounded"
},
{
"type": "hotkey",
"data": {
"hotkey": "",
"delayed": true
},
"name": "Save",
"icon": "save",
"iconTheme": "material-symbols-rounded"
}
]
},
"shortcut": "Control+Alt+Shift+Y",
"shortcutID": "edit",
"centered": false,
"anchored": false
}
],
"templates": []
}

View File

@ -3,7 +3,7 @@ set $term alacritty
# Launcher # Launcher
set $menu wofi --show drun -I -G set $menu wofi --show drun -I -G
set $lock swaylock set $lock swaylock
set $screenshot_full gscreenshot -s set $screenshot_full gscreenshot -s -c
set $screenshot_area /usr/share/swayfx/scripts/grimshot copy area set $screenshot_area /usr/share/swayfx/scripts/grimshot copy area
xwayland enable xwayland enable

View File

@ -61,3 +61,6 @@ bindsym $mod+Shift+5 move container to workspace number 5; workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6; workspace number 6 bindsym $mod+Shift+6 move container to workspace number 6; workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7; workspace number 7 bindsym $mod+Shift+7 move container to workspace number 7; workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8; workspace number 8 bindsym $mod+Shift+8 move container to workspace number 8; workspace number 8
bindsym $mod+Shift+f opacity 1.0
bindsym $mod+Shift+g opacity 0.9