From 5299eece4d6f67e1edc6cc5d8f3b80d34be575d6 Mon Sep 17 00:00:00 2001 From: DreamMaoMao <2523610504@qq.com> Date: Sun, 16 Feb 2025 22:50:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit slfj --- config.conf | 231 ++++++++++++++++++++++++++++++++++++++++++++++++++++ meson.build | 21 ++++- 2 files changed, 250 insertions(+), 2 deletions(-) create mode 100644 config.conf diff --git a/config.conf b/config.conf new file mode 100644 index 00000000..969e4076 --- /dev/null +++ b/config.conf @@ -0,0 +1,231 @@ +# Animation Configuration +animations=1 +animation_type=slide +animation_fade_in=1 +zoom_initial_ratio=0.5 +fadein_begin_opacity=0 +animation_duration_move=500 +animation_duration_open=400 +animation_duration_tag=350 +animation_curve=0.46,1.0,0.29,0.99 + +# Scroller Layout Setting +scroller_structs=20 +scroller_default_proportion=0.8 +scoller_focus_center=0 +scroller_proportion_preset=0.5,0.8,1.0 + +# Master-Stack Layout Setting +new_is_master=1 +default_mfact=0.55 +default_nmaster=1 + +# Overview Setting +hotarea_size=10 +enable_hotarea=1 +ov_tab_mode=0 +overviewgappi=5 +overviewgappo=30 + +# Misc +axis_bind_apply_timeout=100 +focus_on_activate=1 +numlockon=1 +bypass_surface_visibility=0 +sloppyfocus=1 +warpcursor=1 + +# Appearance +smartgaps=0 +gappih=5 +gappiv=5 +gappoh=10 +gappov=10 +borderpx=4 +rootcolor=0x323232ff +bordercolor=0x444444ff +focuscolor=0xad741fff +maxmizescreencolor=0x89aa61ff +urgentcolor=0xad401fff +scratchpadcolor=0x516c93ff +globalcolor=0xb153a7ff + +# Window Rules +windowrule=isfloating:1,title:迅雷 +windowrule=width:800,title:迅雷 +windowrule=height:900,title:迅雷 + +windowrule=isfloating:1,appid:yesplaymusic +windowrule=width:1500,appid:yesplaymusic +windowrule=height:900,appid:yesplaymusic + +windowrule=isfloating:1,appid:clash-verge +windowrule=width:1500,appid:clash-verge +windowrule=height:900,appid:clash-verge + +windowrule=isfloating:1,appid:blueman-manager +windowrule=width:1500,appid:blueman-manager +windowrule=height:900,appid:blueman-manager + + +windowrule=isfloating:1,title:图片查看器 +windowrule=isfloating:1,title:图片查看 +windowrule=isfloating:1,title:选择文件 +windowrule=isfloating:1,title:打开文件 +windowrule=isfloating:1,title:qxdrag +windowrule=isfloating:1,title:rofi - Networks + +windowrule=isfloating:1,appid:Rofi +windowrule=isfloating:1,appid:qxdrag.py +windowrule=isfloating:1,appid:polkit-gnome-authentication-agent-1 + + +# windowrule=animation_type:zoom,appid:wofi +windowrule=isfloating:1,appid:wofi +windowrule=isnoborder:1,appid:wofi +windowrule=animation_type:zoom,appid:wofi + +windowrule=tags:4,appid:Google-chrome +windowrule=tags:3,appid:QQ +windowrule=tags:5,appid:yesplaymusic +windowrule=tags:2,appid:mpv +windowrule=tags:6,appid:obs + +# Monitor Rules +monitorrule=eDP-1,0.55,1,tile,0,1,0,0 +monitorrule=HDMI-A-1,0.55,1,tile,0,1,1920,0 + +# Key Bindings +# The mod key is not case sensitive, +# but the second key is case sensitive, +# if you use shift as one of the mod keys, +# remember to use uppercase keys + +# reload config +bind=SUPER,r,reload_config + + +# menu and terminal +bind=Alt,space,spawn,wofi --normal-window -c ~/.config/maomao/wofi/config -s ~/.config/maomao/wofi/style.css +bind=Alt,Return,spawn,st + +# exit +bind=SUPER,m,quit +bind=ALT,q,killclient, + +# switch window focus +bind=SUPER,Tab,focusstack,next +bind=ALT,Left,focusdir,left +bind=ALT,Right,focusdir,right +bind=ALT,Up,focusdir,up +bind=ALT,Down,focusdir,down + +# swap window +bind=SUPER+SHIFT,Up,exchange_client,up +bind=SUPER+SHIFT,Down,exchange_client,down +bind=SUPER+SHIFT,Left,exchange_client,left +bind=SUPER+SHIFT,Right,exchange_client,right + +# switch window status +bind=SUPER,g,toggleglobal, +bind=ALT,Tab,toggleoverview, +bind=ALT,backslash,togglefloating, +bind=ALT,a,togglemaxmizescreen, +bind=ALT,f,togglefullscreen, +bind=SUPER,i,minized, +bind=SUPER+SHIFT,I,restore_minized +bind=ALT,z,toggle_scratchpad + +# scroller layout +bind=ALT,e,set_proportion,1.0 +bind=ALT,x,switch_proportion_preset, + + +# tile layout +bind=SUPER,e,incnmaster,1 +bind=SUPER,t,incnmaster,-1 +bind=ALT+CTRL,Left,setmfact,-0.01 +bind=ALT+CTRL,Right,setmfact,+0.01 +bind=ALT,s,zoom, + + +# switch layout +bind=CTRL+SUPER,i,setlayout,tile +bind=CTRL+SUPER,l,setlayout,scroller +bind=SUPER,n,switch_layout + + +# tag switch +bind=SUPER,Left,viewtoleft, +bind=CTRL,Left,viewtoleft_have_client, +bind=SUPER,Right,viewtoright, +bind=CTRL,Right,viewtoright_have_client, +bind=CTRL+SUPER,Left,tagtoleft, +bind=CTRL+SUPER,Right,tagtoright, + +bind=Ctrl,KP_1,view,1 +bind=Ctrl,KP_2,view,2 +bind=Ctrl,KP_3,view,3 +bind=Ctrl,KP_4,view,4 +bind=Ctrl,KP_5,view,5 +bind=Ctrl,KP_6,view,6 +bind=Ctrl,KP_7,view,7 +bind=Ctrl,KP_8,view,8 +bind=Ctrl,KP_9,view,9 + +bind=Alt,KP_1,tag,1 +bind=Alt,KP_2,tag,2 +bind=Alt,KP_3,tag,3 +bind=Alt,KP_4,tag,4 +bind=Alt,KP_5,tag,5 +bind=Alt,KP_6,tag,6 +bind=Alt,KP_7,tag,7 +bind=Alt,KP_8,tag,8 +bind=Alt,KP_9,tag,9 + + +# monitor switch +bind=SUPER,bracketleft,focusmon,left +bind=SUPER,bracketright,focusmon,right +bind=SUPER+CTRL,bracketleft,tagmon,left +bind=SUPER+CTRL,bracketright,tagmon,right + +# gaps +bind=ALT+SHIFT,X,incgaps,1 +bind=ALT+SHIFT,Z,incgaps,-1 +bind=ALT+SHIFT,R,togglegaps + +#custom app bind +bind=SUPER,Return,spawn,google-chrome +bind=SUPER,space,spawn,microsoft-edge +bind=CTRL,Return,spawn,bash ~/tool/clash.sh +bind=CTRL+SUPER,Return,spawn,st -e yazi +bind=CTRL+SHIFT,Return,spawn,st -e aerc +bind=CTRL+ALT,a,spawn,grim -g "$(slurp)" - | swappy -f - +bind=SUPER,h,spawn,bash ~/tool/hide_waybar_dwl.sh +bind=SUPER,l,spawn,swaylock -f -c 000000 +bind=CTRL+ALT,Return,spawn,st -e ~/tool/ter-multiplexer.sh +bind=SUPER+ALT,Return,spawn,mpv --player-operation-mode=pseudo-gui +bind=CTRL,space,spawn,rofi -normal-window -theme ~/.config/rofi/themes/fancy2.rasi -modi blocks -show blocks -blocks-wrap ~/.config/rofi/search.py +bind=SUPER,space,spawn,rofi -normal-window -theme ~/.config/rofi/themes/fancy2.rasi -modi blocks -show blocks -blocks-wrap ~/.config/rofi/history.py +bind=CTRL,comma,spawn,~/.config/hypr/scripts/brightness.sh down +bind=CTRL,period,spawn,~/.config/hypr/scripts/brightness.sh up +bind=ALT,comma,spawn,~/.config/hypr/scripts/volume.sh down +bind=ALT,period,spawn,~/.config/hypr/scripts/volume.sh up +bind=CTRL+ALT,backslash,spawn,swaync-client -t +bind=CTRL+ALT,BackSpace,spawn,swaync-client -C +bind=SUPER+SHIFT,P,spawn,wlr-randr --output eDP-1 --on +bind=SUPER,p,spawn,bash ~/.config/maomao/scripts/monitor.sh +bind=SUPER,k,spawn,bash ~/tool/wshowkey.sh + +# Mouse Button Bindings +mousebind=SUPER,btn_left,moveresize,curmove +mousebind=NONE,btn_middle,togglemaxmizescreen,0 +mousebind=SUPER,btn_right,moveresize,curresize +mousebind=SUPER+CTRL,btn_left,spawn,bash ~/tool/shotTranslate.sh shot +mousebind=NONE,btn_left,toggleoverview,-1 +mousebind=NONE,btn_right,killclient,0 + +# Axis Bindings +axisbind=SUPER,UP,viewtoleft_have_client +axisbind=SUPER,DOWN,viewtoright_have_client diff --git a/meson.build b/meson.build index 499bcaca..261f2b40 100644 --- a/meson.build +++ b/meson.build @@ -6,8 +6,25 @@ subdir('protocols') fs = import('fs') -if not fs.exists('config.h') - run_command('cp', 'config.def.h', 'config.h', check: true) +# 获取用户的主目录 +home_dir = run_command('sh', '-c', 'echo $HOME', check: true).stdout().strip() +config_dir = join_paths(home_dir, '.config', 'maomao') + +# 如果目标目录不存在,则创建它 +if not fs.is_dir(config_dir) + run_command('mkdir', '-p', config_dir, check: true) +endif + +# 拷贝 config.conf +config_file = join_paths(config_dir, 'config.conf') +if not fs.exists(config_file) + run_command('cp', 'config.conf', config_file, check: true) +endif + +# 拷贝 autostart.sh +autostart_file = join_paths(config_dir, 'autostart.sh') +if not fs.exists(autostart_file) + run_command('cp', 'autostart.sh', autostart_file, check: true) endif cc = meson.get_compiler('c')