- about
- customisation/
- dynamic window management/
- faq/
- multi monitor/
- multi pointer/
- patches/
- accessnthmonitor/
- activemonitor/
- activetagindicatorbar/
- actualfullscreen/
- adjacenttag/
- allowkillrule/
- alpha/
- alt tab/
- alt tab class/
- alternativetags/
- alttab2/
- alttagsdecoration/
- alwayscenter/
- alwaysfullscreen/
- alwaysontop/
- amixer integration/
- anybar/
- appicons/
- aspectresize/
- attachabove/
- attachaside/
- attachasideandbelow/
- attachbelow/
- attachbottom/
- attachdirection/
- attachtop/
- autodarkmode/
- autoraise windows/
- autoresize/
- autostart/
- autostarttags/
- autoswitch/
- awesomebar/
- azerty/
- backlight/
- bar height/
- barconfig/
- bardwmlogo/
- barpadding/
- bartabgroups/
- bartoggle/
- betterswallow/
- bidi/
- blanktags/
- borderrule/
- bottomdockgap/
- bottomstack/
- bstackmfact/
- bulkill/
- canfocusfloating/
- canfocusrule/
- center/
- center first window/
- centered tags/
- centeredmaster/
- centeredwindowname/
- centretitle/
- cfacts/
- chargecolor/
- clientindicators/
- clientmonoclesymbol/
- clientopacity/
- clientresizehints/
- clientspertag/
- clkanywhere/
- cmdcustomize/
- colemak keys/
- colorbar/
- colorschemes/
- columngaps/
- columns/
- combo/
- cool autostart/
- cropwindows/
- current desktop/
- cursorwarp/
- customrefreshrate/
- cyclelayouts/
- cycleview/
- cyclewindows/
- dash above activeWindow/
- deck/
- decoration hints/
- default tag apps/
- defaultlayoutpermonitor/
- defaultmfact/
- defaulttag/
- defaulttransparency/
- desktoponly/
- destroyfocus/
- dmenumatchtop/
- doublepressquit/
- dragmfact/
- dualstatus/
- dwmc/
- dwmfifo/
- dynamicscratchpads/
- dynamicswallow/
- emptyview/
- environmentvars/
- ewmhtags/
- exitmenu/
- exresize/
- extrabar/
- fadeinactive/
- fakefullscreen/
- fancybar/
- fibonacci/
- fixmultimon/
- flextile/
- float border color/
- floatborderwidth/
- floatingstatus/
- floatrules/
- flycolors/
- flyschemes/
- focusadjacenttag/
- focusbynum/
- focusfullscreen/
- focusmaster/
- focusmonmouse/
- focusonclick/
- focusonnetactive/
- focusurgent/
- focusvisibletagstacks/
- foreground/
- freespace/
- fsignal/
- fullgaps/
- fullscreen/
- fulltagindicator/
- functionalgaps/
- gaplessgrid/
- gaps/
- gestures/
- goatcmd/
- goback/
- graballkeycodes/
- gridall/
- gridmode/
- hide vacant tags/
- hideborder/
- historical/
- holdbar/
- horizgrid/
- horizontal/
- horizontal vertical i3/
- ifroot/
- ignore transient windows/
- inplacerotate/
- insets/
- integrated status text/
- ipc/
- ispermanent/
- keybindings/
- keychain/
- keychord/
- keycodes/
- keymodes/
- keypressrelease/
- keysequence/
- killfocusnext/
- killunsel/
- launcher/
- launcher colors/
- layoutmenu/
- layoutmonitorrules/
- layoutscroll/
- leftlayout/
- leftstack/
- locktagsfor/
- mainmon/
- mark/
- maximize/
- mmnametags/
- monocle count/
- monoclesymbol/
- movecenter/
- movekeyboard/
- moveontagmon/
- moveplace/
- moveresize/
- movestack/
- movethrow/
- movetoedge/
- mpdcontrol/
- multikey/
- multimon/
- multimonitorscratchpads/
- multimonnametags/
- multipledynamicscratchpads/
- namedscratchpads/
- nametag/
- nextprev/
- nmaster/
- nmaxmaster/
- noborder/
- noborderflicker/
- nobordermonocle/
- nocornermonocle/
- notags/
- notallowed/
- notitle/
- nrowgrid/
- onlyquitonempty/
- pango/
- pertag/
- preserveonrestart/
- preventfocusshift/
- preview all win/
- push/
- pwkl/
- qubesdecorations/
- qubesrules/
- quitprompt/
- rainbowtags/
- ratiofullscreen/
- rearrangebar/
- rebootcmd/
- refreshrate/
- removeborder/
- removeboxes/
- reorganizetags/
- resetlayout/
- resetnmaster/
- resizecorners/
- resizehere/
- restartsig/
- restoreafterrestart/
- rmaster/
- rotatestack/
- rotatetags/
- rulerefresher/
- runrules/
- save floats/
- scheme switch/
- scratchpad/
- scratchpads/
- script tags/
- selectivefakefullscreen/
- selfrestart/
- sendmoncenter/
- setborderpx/
- setenvvars/
- setstatus/
- setxkbgroup/
- sgrstatus/
- shift tools/
- showselmon/
- shutdowncmd/
- single tagset/
- singlegap/
- singularborders/
- sizehints/
- smartborders/
- solarized/
- spawn cwd/
- spawn window cwd/
- spawnprograms/
- spawntag/
- splitstatus/
- sshawarespawn/
- stacker/
- stackmfact/
- stairs/
- staticstatus/
- status2d/
- statusallmons/
- statusbarfont/
- statusbutton/
- statuscmd/
- statuscolors/
- statuspadding/
- stdin/
- steam/
- sticky/
- stickyindicator/
- swallow/
- swapfocus/
- swapmonitors/
- swaptags/
- swapwindows/
- switch all monitor tags/
- switchcol/
- switchtotag/
- systray/
- tab/
- tag previews/
- tagall/
- tagcolorscheme/
- tagfun/
- taggrid/
- tagintostack/
- taglabels/
- taglayouts/
- tagothermonitor/
- tagshift/
- tagspawn/
- tapresize/
- tatami/
- three column/
- throwtoothertag/
- tiledmove/
- tilegap/
- tilewide/
- titlecolor/
- toggleallmons/
- togglebar/
- togglebartag/
- toggleborder/
- togglefloatingcenter/
- toggletopbar/
- torus/
- transfer/
- truecenteredtitle/
- two monitor setup/
- underlinetags/
- unfloatvisible/
- unfocusednoborders/
- unicode ellipsis/
- urgentborder/
- uselessgap/
- vanitygaps/
- viewonrulestag/
- viewontag/
- vtcolors/
- warp/
- win31theme/
- windowfollow/
- windowmap/
- winicon/
- winview/
- xcursor/
- xfce4 panel/
- xinerama monitors xorder/
- xkb/
- xrdb/
- xresources/
- xtheme/
- xtile/
- zeroastag/
- zoomswap/
- screenshots/
- status monitor/
- tutorial/
spawn_window_cwd
Description
This patch spawns programs from the currently focused client's window. Similar to the spawn_cwd patch, it incorporates enhanced logic and resolves limitations from the original implementation. Instead of parsing the client's window name (which may not provide the cwd), it searches for the newest ppid and uses its cwd, which is typically the shell, or $HOME in case of failure.
Download
Author
- Gostev Evgenii - gostevevg0@gmail.com