diff options
Diffstat (limited to 'dot_config/i3/config')
-rw-r--r-- | dot_config/i3/config | 144 |
1 files changed, 25 insertions, 119 deletions
diff --git a/dot_config/i3/config b/dot_config/i3/config index bb07f08..5fa0715 100644 --- a/dot_config/i3/config +++ b/dot_config/i3/config | |||
@@ -1,3 +1,6 @@ | |||
1 | # Modified based on https://github.com/endeavouros-team/endeavouros-i3wm-setup | ||
2 | # Jinwei Zhao | ||
3 | |||
1 | # This file is a modified version based on default i3-config-wizard config | 4 | # This file is a modified version based on default i3-config-wizard config |
2 | # source is available here: | 5 | # source is available here: |
3 | # https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/master/.config/i3/config | 6 | # https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/master/.config/i3/config |
@@ -31,17 +34,7 @@ set $mod Mod4 | |||
31 | # workspace layout: # | 34 | # workspace layout: # |
32 | ##################### | 35 | ##################### |
33 | 36 | ||
34 | # default i3 tiling mode: | ||
35 | workspace_layout default | ||
36 | |||
37 | # i3 stacking layout: | ||
38 | # Each window will be fullscreen and tabbed top to bottom. | ||
39 | workspace_layout tabbed | 37 | workspace_layout tabbed |
40 | #workspace_layout stacking | ||
41 | |||
42 | # i3 tabbed layout: | ||
43 | # Each new window will open fullscreen as a tab (left to right) | ||
44 | #workspace_layout tabbed | ||
45 | 38 | ||
46 | ############################## | 39 | ############################## |
47 | # extra options for windows: # | 40 | # extra options for windows: # |
@@ -149,14 +142,14 @@ mode "resize" { | |||
149 | bindsym j resize shrink height 10 px or 10 ppt | 142 | bindsym j resize shrink height 10 px or 10 ppt |
150 | bindsym l resize grow width 10 px or 10 ppt | 143 | bindsym l resize grow width 10 px or 10 ppt |
151 | 144 | ||
152 | # same bindings, but for the arrow keys | 145 | # same bindings, but for the arrow keys |
153 | bindsym Left resize shrink width 10 px or 10 ppt | 146 | bindsym Left resize shrink width 10 px or 10 ppt |
154 | bindsym Up resize grow height 10 px or 10 ppt | 147 | bindsym Up resize grow height 10 px or 10 ppt |
155 | bindsym Down resize shrink height 10 px or 10 ppt | 148 | bindsym Down resize shrink height 10 px or 10 ppt |
156 | bindsym Right resize grow width 10 px or 10 ppt | 149 | bindsym Right resize grow width 10 px or 10 ppt |
157 | 150 | ||
158 | # back to normal: Enter or Escape | 151 | # back to normal: Enter or Escape |
159 | # bindsym Return mode "default" | 152 | # bindsym Return mode "default" |
160 | bindsym Escape mode "default" | 153 | bindsym Escape mode "default" |
161 | } | 154 | } |
162 | 155 | ||
@@ -295,15 +288,6 @@ set $ws8 "8" | |||
295 | set $ws9 "9" | 288 | set $ws9 "9" |
296 | set $ws10 "10" | 289 | set $ws10 "10" |
297 | 290 | ||
298 | # use workspaces on different displays: | ||
299 | # where you have to replace VGA-0/HDMI-0 with the names for your displays | ||
300 | # you can get from xrandr command | ||
301 | #workspace $ws1 output VGA-0 | ||
302 | #workspace $ws2 output VGA-0 | ||
303 | #workspace $ws3 output HDMI-0 | ||
304 | #workspace $ws4 output HDMI-0 | ||
305 | #workspace $ws5 output HDMI-0 | ||
306 | |||
307 | # bind program to workspace and focus to them on startup: | 291 | # bind program to workspace and focus to them on startup: |
308 | #assign [class="Xfce4-terminal"] $ws1 | 292 | #assign [class="Xfce4-terminal"] $ws1 |
309 | assign [class="jetbrains-clion"] $ws1 | 293 | assign [class="jetbrains-clion"] $ws1 |
@@ -371,15 +355,6 @@ exec --no-startup-id env GDK_SCALE=1 ibus-daemon -drxR | |||
371 | #exec --no-startup-id dex -a -s /etc/xdg/autostart/:~/.config/autostart/ | 355 | #exec --no-startup-id dex -a -s /etc/xdg/autostart/:~/.config/autostart/ |
372 | exec --no-startup-id dex --autostart --environment i3 | 356 | exec --no-startup-id dex --autostart --environment i3 |
373 | 357 | ||
374 | # start welcome app | ||
375 | #exec --no-startup-id sh /usr/share/endeavouros/scripts/welcome --startdelay=3 | ||
376 | |||
377 | # num lock activated | ||
378 | #exec --no-startup-id numlockx on | ||
379 | |||
380 | # configure multiple keyboard layouts and hotkey to switch (Alt+CAPSLOCK in this example) | ||
381 | #exec --no-startup-id setxkbmap -layout 'us,sk' -variant altgr-intl,qwerty -option 'grp:alt_caps_toggle' | ||
382 | |||
383 | # start conky: | 358 | # start conky: |
384 | #exec_always --no-startup-id conky | 359 | #exec_always --no-startup-id conky |
385 | 360 | ||
@@ -388,11 +363,7 @@ exec --no-startup-id dex --autostart --environment i3 | |||
388 | exec --no-startup-id ~/.screenlayout/monitor.sh | 363 | exec --no-startup-id ~/.screenlayout/monitor.sh |
389 | 364 | ||
390 | # set wallpaper | 365 | # set wallpaper |
391 | exec --no-startup-id sleep 2 && nitrogen --restore | 366 | exec --no-startup-id nitrogen --restore |
392 | #exec --no-startup-id feh --bg-fill /usr/share/endeavouros/backgrounds/endeavouros_i3.png | ||
393 | |||
394 | # set powersavings for display: | ||
395 | #exec --no-startup-id xset s 0 dpms 600 600 600 | ||
396 | 367 | ||
397 | # disable power saving (for example if using xscreensaver) | 368 | # disable power saving (for example if using xscreensaver) |
398 | exec --no-startup-id xset -dpms | 369 | exec --no-startup-id xset -dpms |
@@ -401,11 +372,6 @@ exec --no-startup-id xset -dpms | |||
401 | # https://wiki.archlinux.org/title/Session_lock#xautolock | 372 | # https://wiki.archlinux.org/title/Session_lock#xautolock |
402 | #exec --no-startup-id xautolock -time 60 -locker "systemctl suspend" | 373 | #exec --no-startup-id xautolock -time 60 -locker "systemctl suspend" |
403 | 374 | ||
404 | |||
405 | # xscreensaver | ||
406 | # https://www.jwz.org/xscreensaver | ||
407 | #exec --no-startup-id xscreensaver --no-splash | ||
408 | |||
409 | # Desktop notifications | 375 | # Desktop notifications |
410 | exec --no-startup-id dunst --config ~/.config/dunst/dunstrc | 376 | exec --no-startup-id dunst --config ~/.config/dunst/dunstrc |
411 | # alternative if you installed aside with XFCE4: | 377 | # alternative if you installed aside with XFCE4: |
@@ -417,26 +383,8 @@ exec --no-startup-id dunst --config ~/.config/dunst/dunstrc | |||
417 | #exec_always --no-startup-id autotiling | 383 | #exec_always --no-startup-id autotiling |
418 | 384 | ||
419 | # Autostart apps as you like | 385 | # Autostart apps as you like |
420 | #exec --no-startup-id sleep 2 && xfce4-terminal | ||
421 | #exec --no-startup-id sleep 7 && firefox https://github.com/endeavouros-team/endeavouros-i3wm-setup/blob/main/force-knowledge.md | ||
422 | #exec --no-startup-id sleep 3 && thunar | ||
423 | exec --no-startup-id sleep 1 && thunderbird | 386 | exec --no-startup-id sleep 1 && thunderbird |
424 | 387 | ||
425 | ############### | ||
426 | # system tray # | ||
427 | ############### | ||
428 | # if you do not use dex: exec --no-startup-id dex --autostart --environment i3 | ||
429 | # you need to have tray apps started manually one by one: | ||
430 | |||
431 | # start blueberry app for managing bluetooth devices from tray: | ||
432 | #exec --no-startup-id blueberry-tray | ||
433 | |||
434 | # networkmanager-applet | ||
435 | #exec --no-startup-id nm-applet | ||
436 | |||
437 | # clipman-applet | ||
438 | #exec --no-startup-id xfce4-clipman | ||
439 | |||
440 | ################## | 388 | ################## |
441 | # floating rules # | 389 | # floating rules # |
442 | ################## | 390 | ################## |
@@ -469,10 +417,6 @@ bindsym $mod+m scratchpad show | |||
469 | # set border of floating window | 417 | # set border of floating window |
470 | for_window [class="urxvt"] border pixel 1 | 418 | for_window [class="urxvt"] border pixel 1 |
471 | 419 | ||
472 | # set size of floating window | ||
473 | #for_window [window_role="(?i)GtkFileChooserDialog"] resize set 640 480 #to set size of file choose dialog | ||
474 | #for_window [class=".*"] resize set 1280 680 #to change size of all floating windows | ||
475 | |||
476 | # set position of floating window | 420 | # set position of floating window |
477 | for_window [class=".*"] move position center | 421 | for_window [class=".*"] move position center |
478 | 422 | ||
@@ -509,16 +453,14 @@ client.urgent $urgentred $urgentred $white $yellowbrown $yellowbrown | |||
509 | bar { | 453 | bar { |
510 | font pango: Noto Sans Regular 16 | 454 | font pango: Noto Sans Regular 16 |
511 | status_command i3blocks -c ~/.config/i3/i3blocks.conf | 455 | status_command i3blocks -c ~/.config/i3/i3blocks.conf |
512 | position bottom | 456 | position bottom |
513 | output eDP-1 | 457 | output eDP-1 |
514 | i3bar_command i3bar | 458 | i3bar_command i3bar |
515 | #i3bar_command i3bar --transparency | ||
516 | #tray_output none | ||
517 | tray_output primary | 459 | tray_output primary |
518 | tray_padding 0 | 460 | tray_padding 0 |
519 | strip_workspace_numbers no | 461 | strip_workspace_numbers no |
520 | 462 | ||
521 | colors { | 463 | colors { |
522 | separator $purple | 464 | separator $purple |
523 | background $darkgrey | 465 | background $darkgrey |
524 | statusline $white | 466 | statusline $white |
@@ -526,21 +468,21 @@ bar { | |||
526 | active_workspace $lightblue $mediumgrey $darkgrey $purple | 468 | active_workspace $lightblue $mediumgrey $darkgrey $purple |
527 | inactive_workspace $darkgrey $darkgrey $grey $purple | 469 | inactive_workspace $darkgrey $darkgrey $grey $purple |
528 | urgent_workspace $urgentred $urgentred $white $purple | 470 | urgent_workspace $urgentred $urgentred $white $purple |
529 | } | 471 | } |
530 | } | 472 | } |
531 | 473 | ||
532 | 474 | ||
533 | bar { | 475 | bar { |
534 | font pango: Noto Sans Regular 11 | 476 | font pango: Noto Sans Regular 11 |
535 | status_command i3blocks -c ~/.config/i3/i3blocks.conf | 477 | status_command i3blocks -c ~/.config/i3/i3blocks.conf |
536 | position bottom | 478 | position bottom |
537 | i3bar_command i3bar | 479 | i3bar_command i3bar |
538 | output DP-3 | 480 | output DP-3 |
539 | tray_output primary | 481 | tray_output primary |
540 | tray_padding 0 | 482 | tray_padding 0 |
541 | strip_workspace_numbers no | 483 | strip_workspace_numbers no |
542 | 484 | ||
543 | colors { | 485 | colors { |
544 | separator $purple | 486 | separator $purple |
545 | background $darkgrey | 487 | background $darkgrey |
546 | statusline $white | 488 | statusline $white |
@@ -548,21 +490,21 @@ bar { | |||
548 | active_workspace $lightblue $mediumgrey $darkgrey $purple | 490 | active_workspace $lightblue $mediumgrey $darkgrey $purple |
549 | inactive_workspace $darkgrey $darkgrey $grey $purple | 491 | inactive_workspace $darkgrey $darkgrey $grey $purple |
550 | urgent_workspace $urgentred $urgentred $white $purple | 492 | urgent_workspace $urgentred $urgentred $white $purple |
551 | } | 493 | } |
552 | } | 494 | } |
553 | 495 | ||
554 | 496 | ||
555 | bar { | 497 | bar { |
556 | font pango: Noto Sans Regular 11 | 498 | font pango: Noto Sans Regular 11 |
557 | status_command i3blocks -c ~/.config/i3/i3blocks.conf | 499 | status_command i3blocks -c ~/.config/i3/i3blocks.conf |
558 | position bottom | 500 | position bottom |
559 | i3bar_command i3bar | 501 | i3bar_command i3bar |
560 | output DP-4 | 502 | output DP-4 |
561 | tray_output primary | 503 | tray_output primary |
562 | tray_padding 0 | 504 | tray_padding 0 |
563 | strip_workspace_numbers no | 505 | strip_workspace_numbers no |
564 | 506 | ||
565 | colors { | 507 | colors { |
566 | separator $purple | 508 | separator $purple |
567 | background $darkgrey | 509 | background $darkgrey |
568 | statusline $white | 510 | statusline $white |
@@ -570,7 +512,7 @@ bar { | |||
570 | active_workspace $lightblue $mediumgrey $darkgrey $purple | 512 | active_workspace $lightblue $mediumgrey $darkgrey $purple |
571 | inactive_workspace $darkgrey $darkgrey $grey $purple | 513 | inactive_workspace $darkgrey $darkgrey $grey $purple |
572 | urgent_workspace $urgentred $urgentred $white $purple | 514 | urgent_workspace $urgentred $urgentred $white $purple |
573 | } | 515 | } |
574 | } | 516 | } |
575 | 517 | ||
576 | # you can add different bars for multidisplay setups on each display: | 518 | # you can add different bars for multidisplay setups on each display: |
@@ -579,30 +521,6 @@ bar { | |||
579 | # https://gist.github.com/lopspower/03fb1cc0ac9f32ef38f4 | 521 | # https://gist.github.com/lopspower/03fb1cc0ac9f32ef38f4 |
580 | # #08052be6 --> e6=90% | 522 | # #08052be6 --> e6=90% |
581 | 523 | ||
582 | # bar { | ||
583 | # font pango: Noto Sans Regular 10 | ||
584 | # status_command i3blocks -c ~/.config/i3/i3blocks-2.conf | ||
585 | # i3bar_command i3bar --transparency | ||
586 | # output HDMI-0 | ||
587 | # position bottom | ||
588 | # | ||
589 | # When strip_workspace_numbers is set to yes, | ||
590 | # any workspace that has a name of the form | ||
591 | # “[n][:][NAME]” will display only the name. | ||
592 | #strip_workspace_numbers yes | ||
593 | ##strip_workspace_name no | ||
594 | # | ||
595 | # colors { | ||
596 | # separator $purple | ||
597 | # background $darkbluetrans | ||
598 | # statusline $white | ||
599 | # border bg txt indicator | ||
600 | # focused_workspace $lighterblue $lighterblue $darkblue $purple | ||
601 | # active_workspace $lightdblue $lightdblue $darkblue $purple | ||
602 | # inactive_workspace $darkblue $darkblue $lightdblue $purple | ||
603 | # urgent_workspace $urgentred $urgentred $white $purple | ||
604 | # } | ||
605 | #} | ||
606 | 524 | ||
607 | ##################################### | 525 | ##################################### |
608 | # Application menu handled by rofi: # | 526 | # Application menu handled by rofi: # |
@@ -613,19 +531,7 @@ bar { | |||
613 | bindsym $mod+d exec rofi -modi drun -show drun \ | 531 | bindsym $mod+d exec rofi -modi drun -show drun \ |
614 | -config ~/.config/rofi/rofidmenu.rasi | 532 | -config ~/.config/rofi/rofidmenu.rasi |
615 | 533 | ||
616 | #bindsym F9 exec rofi -modi drun -show drun \ | ||
617 | # -config ~/.config/rofi/rofidmenu.rasi | ||
618 | |||
619 | ## rofi bindings for window menu ($mod+t /F10 optional disabled) | 534 | ## rofi bindings for window menu ($mod+t /F10 optional disabled) |
620 | 535 | ||
621 | bindsym $mod+t exec rofi -show window \ | 536 | bindsym $mod+t exec rofi -show window \ |
622 | -config ~/.config/rofi/rofidmenu.rasi | 537 | -config ~/.config/rofi/rofidmenu.rasi |
623 | |||
624 | #bindsym F10 exec rofi -show window \ | ||
625 | # -config ~/.config/rofi/rofidmenu.rasi | ||
626 | |||
627 | ## rofi bindings to manage clipboard (install rofi-greenclip from the AUR) | ||
628 | |||
629 | #exec --no-startup-id greenclip daemon>/dev/null | ||
630 | #bindsym $mod+c exec --no-startup-id rofi -modi "clipboard:greenclip print" -show clipboard \ | ||
631 | # -config ~/.config/rofi/rofidmenu.rasi | ||