Improve yoo
This commit is contained in:
parent
0f156ff3a9
commit
44f85c76ec
21 changed files with 599 additions and 1278 deletions
|
@ -26,4 +26,6 @@ add_executable(yo_dwm
|
|||
src/movestack.c
|
||||
src/transient.c
|
||||
src/util.c
|
||||
src/util.h)
|
||||
src/util.h src/keys/mouse.c src/keys/mouse.h src/keys/functions.h src/dwm.h)
|
||||
|
||||
target_link_libraries(yo_dwm X11 Xft Xinerama)
|
||||
|
|
|
@ -0,0 +1,97 @@
|
|||
{
|
||||
"inputs" :
|
||||
[
|
||||
{
|
||||
"path" : "CMakeLists.txt"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeGenericSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/UnixPaths.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
}
|
||||
],
|
||||
"kind" : "cmakeFiles",
|
||||
"paths" :
|
||||
{
|
||||
"build" : "/home/anas/suckless_utils/yo-dwm/cmake-build-debug",
|
||||
"source" : "/home/anas/suckless_utils/yo-dwm"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"major" : 1,
|
||||
"minor" : 0
|
||||
}
|
||||
}
|
|
@ -1,406 +0,0 @@
|
|||
{
|
||||
"inputs" :
|
||||
[
|
||||
{
|
||||
"path" : "CMakeLists.txt"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystem.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompilerId.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCompilerIdDetection.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ADSP-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Borland-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Cray-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GHS-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/HP-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IAR-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Intel-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/LCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/MSVC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/PGI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/PathScale-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SCO-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/TI-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/Watcom-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/XL-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeFindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-FindBinUtils.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeGenericSystem.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/UnixPaths.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU-C.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Platform/Linux-GNU.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCCompiler.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompilerABI.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseImplicitIncludeInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseImplicitLinkInfo.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeParseLibraryArchitecture.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeTestCompilerCommon.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeDetermineCompileFeatures.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/Internal/FeatureTesting.cmake"
|
||||
},
|
||||
{
|
||||
"isCMake" : true,
|
||||
"isExternal" : true,
|
||||
"path" : "/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompiler.cmake.in"
|
||||
},
|
||||
{
|
||||
"isGenerated" : true,
|
||||
"path" : "cmake-build-debug/CMakeFiles/3.23.2/CMakeCCompiler.cmake"
|
||||
}
|
||||
],
|
||||
"kind" : "cmakeFiles",
|
||||
"paths" :
|
||||
{
|
||||
"build" : "/home/anas/suckless_utils/yo-dwm/cmake-build-debug",
|
||||
"source" : "/home/anas/suckless_utils/yo-dwm"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"major" : 1,
|
||||
"minor" : 0
|
||||
}
|
||||
}
|
|
@ -39,7 +39,7 @@
|
|||
{
|
||||
"directoryIndex" : 0,
|
||||
"id" : "yo_dwm::@6890427a1f51a3e7e1df",
|
||||
"jsonFile" : "target-yo_dwm-Debug-619ca603d9f8a027e9c4.json",
|
||||
"jsonFile" : "target-yo_dwm-Debug-631731075c5f906219d9.json",
|
||||
"name" : "yo_dwm",
|
||||
"projectIndex" : 0
|
||||
}
|
|
@ -26,7 +26,7 @@
|
|||
"objects" :
|
||||
[
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-a8c048656fcb1fb7324c.json",
|
||||
"jsonFile" : "codemodel-v2-47532c44014cf30e75ae.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
||||
|
@ -44,7 +44,7 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"jsonFile" : "cmakeFiles-v1-ad9218d2c69b47be0e82.json",
|
||||
"jsonFile" : "cmakeFiles-v1-10ab7de84491b2ad21c0.json",
|
||||
"kind" : "cmakeFiles",
|
||||
"version" :
|
||||
{
|
||||
|
@ -76,7 +76,7 @@
|
|||
},
|
||||
"cmakeFiles-v1" :
|
||||
{
|
||||
"jsonFile" : "cmakeFiles-v1-ad9218d2c69b47be0e82.json",
|
||||
"jsonFile" : "cmakeFiles-v1-10ab7de84491b2ad21c0.json",
|
||||
"kind" : "cmakeFiles",
|
||||
"version" :
|
||||
{
|
||||
|
@ -86,7 +86,7 @@
|
|||
},
|
||||
"codemodel-v2" :
|
||||
{
|
||||
"jsonFile" : "codemodel-v2-a8c048656fcb1fb7324c.json",
|
||||
"jsonFile" : "codemodel-v2-47532c44014cf30e75ae.json",
|
||||
"kind" : "codemodel",
|
||||
"version" :
|
||||
{
|
|
@ -11,6 +11,7 @@
|
|||
"commands" :
|
||||
[
|
||||
"add_executable",
|
||||
"target_link_libraries",
|
||||
"include_directories"
|
||||
],
|
||||
"files" :
|
||||
|
@ -31,23 +32,29 @@
|
|||
{
|
||||
"command" : 1,
|
||||
"file" : 0,
|
||||
"line" : 31,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 2,
|
||||
"file" : 0,
|
||||
"line" : 6,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 1,
|
||||
"command" : 2,
|
||||
"file" : 0,
|
||||
"line" : 7,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 1,
|
||||
"command" : 2,
|
||||
"file" : 0,
|
||||
"line" : 8,
|
||||
"parent" : 0
|
||||
},
|
||||
{
|
||||
"command" : 1,
|
||||
"command" : 2,
|
||||
"file" : 0,
|
||||
"line" : 9,
|
||||
"parent" : 0
|
||||
|
@ -69,19 +76,19 @@
|
|||
"includes" :
|
||||
[
|
||||
{
|
||||
"backtrace" : 2,
|
||||
"backtrace" : 3,
|
||||
"path" : "/home/anas/suckless_utils/yo-dwm/."
|
||||
},
|
||||
{
|
||||
"backtrace" : 3,
|
||||
"backtrace" : 4,
|
||||
"path" : "/home/anas/suckless_utils/yo-dwm/src"
|
||||
},
|
||||
{
|
||||
"backtrace" : 4,
|
||||
"backtrace" : 5,
|
||||
"path" : "/home/anas/suckless_utils/yo-dwm/src/keys"
|
||||
},
|
||||
{
|
||||
"backtrace" : 5,
|
||||
"backtrace" : 6,
|
||||
"path" : "/home/anas/suckless_utils/yo-dwm/src/layouts"
|
||||
}
|
||||
],
|
||||
|
@ -106,7 +113,8 @@
|
|||
13,
|
||||
14,
|
||||
15,
|
||||
16
|
||||
16,
|
||||
18
|
||||
]
|
||||
}
|
||||
],
|
||||
|
@ -122,6 +130,21 @@
|
|||
{
|
||||
"fragment" : "",
|
||||
"role" : "flags"
|
||||
},
|
||||
{
|
||||
"backtrace" : 2,
|
||||
"fragment" : "-lX11",
|
||||
"role" : "libraries"
|
||||
},
|
||||
{
|
||||
"backtrace" : 2,
|
||||
"fragment" : "-lXft",
|
||||
"role" : "libraries"
|
||||
},
|
||||
{
|
||||
"backtrace" : 2,
|
||||
"fragment" : "-lXinerama",
|
||||
"role" : "libraries"
|
||||
}
|
||||
],
|
||||
"language" : "C"
|
||||
|
@ -149,7 +172,8 @@
|
|||
13,
|
||||
14,
|
||||
15,
|
||||
16
|
||||
16,
|
||||
18
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -162,7 +186,10 @@
|
|||
9,
|
||||
10,
|
||||
12,
|
||||
17
|
||||
17,
|
||||
19,
|
||||
20,
|
||||
21
|
||||
]
|
||||
}
|
||||
],
|
||||
|
@ -268,6 +295,27 @@
|
|||
"backtrace" : 1,
|
||||
"path" : "src/util.h",
|
||||
"sourceGroupIndex" : 1
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"compileGroupIndex" : 0,
|
||||
"path" : "src/keys/mouse.c",
|
||||
"sourceGroupIndex" : 0
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"path" : "src/keys/mouse.h",
|
||||
"sourceGroupIndex" : 1
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"path" : "src/keys/functions.h",
|
||||
"sourceGroupIndex" : 1
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"path" : "src/dwm.h",
|
||||
"sourceGroupIndex" : 1
|
||||
}
|
||||
],
|
||||
"type" : "EXECUTABLE"
|
|
@ -1,10 +1,4 @@
|
|||
/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/cmake/linux/bin/cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-1/222.4345.21/bin/ninja/linux/ninja -G Ninja -S /home/anas/suckless_utils/yo-dwm -B /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
||||
-- The C compiler identification is GNU 12.2.0
|
||||
-- Detecting C compiler ABI info
|
||||
-- Detecting C compiler ABI info - done
|
||||
-- Check for working C compiler: /usr/bin/cc - skipped
|
||||
-- Detecting C compile features
|
||||
-- Detecting C compile features - done
|
||||
-- Configuring done
|
||||
-- Generating done
|
||||
-- Build files have been written to: /home/anas/suckless_utils/yo-dwm/cmake-build-debug
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Start testing: Oct 31 07:03 EET
|
||||
Start testing: Oct 31 10:02 EET
|
||||
----------------------------------------------------------
|
||||
End testing: Oct 31 07:03 EET
|
||||
End testing: Oct 31 10:02 EET
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,11 +1,6 @@
|
|||
#ifndef colors_H
|
||||
#define colors_H
|
||||
|
||||
// #define wal "/home/anas/.cache/wal/colors-wal-dwm.h"
|
||||
|
||||
// #if __has_include(wal)
|
||||
// #include wal
|
||||
// #else
|
||||
static const char norm_fg[] = "#e4ded4";
|
||||
static const char norm_bg[] = "#191b1f";
|
||||
static const char norm_border[] = "#282c34";
|
||||
|
@ -24,6 +19,5 @@ static const char *colors[][3] = {
|
|||
[SchemeSel] = {sel_fg, sel_bg, sel_border}, // the focused win
|
||||
[SchemeUrg] = {urg_fg, urg_bg, urg_border},
|
||||
};
|
||||
// #endif
|
||||
|
||||
#endif // !colors.h
|
||||
#endif // colors_H
|
||||
|
|
|
@ -20,9 +20,7 @@ static const char *fonts[] = {"monospace:size=7", "Noto Color Emoji:size=8",
|
|||
static const char dmenufont[] = "monospace:size=8";
|
||||
|
||||
#ifndef STDDEF_H
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#endif
|
||||
|
||||
#include "colors.h"
|
||||
|
|
324
src/dwm.c
324
src/dwm.c
|
@ -44,6 +44,7 @@
|
|||
|
||||
#include "drw.h"
|
||||
#include "util.h"
|
||||
#include "dwm.h"
|
||||
|
||||
/* macros */
|
||||
#define BUTTONMASK (ButtonPressMask|ButtonReleaseMask)
|
||||
|
@ -71,327 +72,6 @@
|
|||
#define VERSION_MINOR 0
|
||||
#define XEMBED_EMBEDDED_VERSION (VERSION_MAJOR << 16) | VERSION_MINOR
|
||||
|
||||
/* enums */
|
||||
enum {
|
||||
CurNormal, CurResize, CurMove, CurLast
|
||||
}; /* cursor */
|
||||
enum {
|
||||
SchemeNorm, SchemeSel, SchemeUrg
|
||||
}; /* color schemes */
|
||||
enum {
|
||||
NetSupported, NetWMName, NetWMState, NetWMCheck,
|
||||
NetSystemTray, NetSystemTrayOP, NetSystemTrayOrientation, NetSystemTrayOrientationHorz,
|
||||
NetWMFullscreen, NetActiveWindow, NetWMWindowType,
|
||||
NetWMWindowTypeDialog, NetClientList, NetLast
|
||||
}; /* EWMH atoms */
|
||||
enum {
|
||||
Manager, Xembed, XembedInfo, XLast
|
||||
}; /* Xembed atoms */
|
||||
enum {
|
||||
WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast
|
||||
}; /* default atoms */
|
||||
enum {
|
||||
ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
|
||||
ClkClientWin, ClkRootWin, ClkLast
|
||||
}; /* clicks */
|
||||
|
||||
typedef union {
|
||||
int i;
|
||||
unsigned int ui;
|
||||
float f;
|
||||
const void *v;
|
||||
} Arg;
|
||||
|
||||
typedef struct {
|
||||
unsigned int click;
|
||||
unsigned int mask;
|
||||
unsigned int button;
|
||||
|
||||
void (*func)(const Arg *arg);
|
||||
|
||||
const Arg arg;
|
||||
} Button;
|
||||
|
||||
typedef struct Monitor Monitor;
|
||||
typedef struct Client Client;
|
||||
struct Client {
|
||||
char name[256];
|
||||
float mina, maxa;
|
||||
int x, y, w, h;
|
||||
int oldx, oldy, oldw, oldh;
|
||||
int basew, baseh, incw, inch, maxw, maxh, minw, minh, hintsvalid;
|
||||
int bw, oldbw;
|
||||
unsigned int tags;
|
||||
int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen, issticky;
|
||||
Client *next;
|
||||
Client *snext;
|
||||
Monitor *mon;
|
||||
Window win;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
unsigned int mod;
|
||||
KeySym chain;
|
||||
KeySym keysym;
|
||||
|
||||
void (*func)(const Arg *);
|
||||
|
||||
const Arg arg;
|
||||
} Key;
|
||||
|
||||
typedef struct {
|
||||
const char *symbol;
|
||||
|
||||
void (*arrange)(Monitor *);
|
||||
} Layout;
|
||||
|
||||
typedef struct Pertag Pertag;
|
||||
struct Monitor {
|
||||
char ltsymbol[16];
|
||||
float mfact;
|
||||
int nmaster;
|
||||
int num;
|
||||
int by; /* bar geometry */
|
||||
int mx, my, mw, mh; /* screen size */
|
||||
int wx, wy, ww, wh; /* window area */
|
||||
unsigned int seltags;
|
||||
unsigned int sellt;
|
||||
unsigned int tagset[2];
|
||||
int showbar;
|
||||
int topbar;
|
||||
Client *clients;
|
||||
Client *sel;
|
||||
Client *stack;
|
||||
Monitor *next;
|
||||
Window barwin;
|
||||
const Layout *lt[2];
|
||||
Pertag *pertag;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
const char *class;
|
||||
const char *instance;
|
||||
const char *title;
|
||||
unsigned int tags;
|
||||
int isfloating;
|
||||
int monitor;
|
||||
} Rule;
|
||||
|
||||
typedef struct Systray Systray;
|
||||
struct Systray {
|
||||
Window win;
|
||||
Client *icons;
|
||||
};
|
||||
|
||||
/* function declarations */
|
||||
static void applyrules(Client *c);
|
||||
|
||||
static int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact);
|
||||
|
||||
static void arrange(Monitor *m);
|
||||
|
||||
static void arrangemon(Monitor *m);
|
||||
|
||||
static void attach(Client *c);
|
||||
|
||||
static void attachstack(Client *c);
|
||||
|
||||
static void buttonpress(XEvent *e);
|
||||
|
||||
static void checkotherwm(void);
|
||||
|
||||
static void cleanup(void);
|
||||
|
||||
static void cleanupmon(Monitor *mon);
|
||||
|
||||
static void clientmessage(XEvent *e);
|
||||
|
||||
static void configure(Client *c);
|
||||
|
||||
static void configurenotify(XEvent *e);
|
||||
|
||||
static void configurerequest(XEvent *e);
|
||||
|
||||
static Monitor *createmon(void);
|
||||
|
||||
static void destroynotify(XEvent *e);
|
||||
|
||||
static void detach(Client *c);
|
||||
|
||||
static void detachstack(Client *c);
|
||||
|
||||
static Monitor *dirtomon(int dir);
|
||||
|
||||
static void drawbar(Monitor *m);
|
||||
|
||||
static void drawbars(void);
|
||||
|
||||
static void enternotify(XEvent *e);
|
||||
|
||||
static void expose(XEvent *e);
|
||||
|
||||
static void focus(Client *c);
|
||||
|
||||
static void focusin(XEvent *e);
|
||||
|
||||
static void focusmon(const Arg *arg);
|
||||
|
||||
static void focusstack(const Arg *arg);
|
||||
|
||||
static Atom getatomprop(Client *c, Atom prop);
|
||||
|
||||
static int getrootptr(int *x, int *y);
|
||||
|
||||
static long getstate(Window w);
|
||||
|
||||
static unsigned int getsystraywidth();
|
||||
|
||||
static int gettextprop(Window w, Atom atom, char *text, unsigned int size);
|
||||
|
||||
static void grabbuttons(Client *c, int focused);
|
||||
|
||||
static void grabkeys(void);
|
||||
|
||||
static void incnmaster(const Arg *arg);
|
||||
|
||||
static void keypress(XEvent *e);
|
||||
|
||||
static void killclient(const Arg *arg);
|
||||
|
||||
static void manage(Window w, XWindowAttributes *wa);
|
||||
|
||||
static void mappingnotify(XEvent *e);
|
||||
|
||||
static void maprequest(XEvent *e);
|
||||
|
||||
static void monocle(Monitor *m);
|
||||
|
||||
static void motionnotify(XEvent *e);
|
||||
|
||||
static void movemouse(const Arg *arg);
|
||||
|
||||
static Client *nexttiled(Client *c);
|
||||
|
||||
static void pop(Client *);
|
||||
|
||||
static void propertynotify(XEvent *e);
|
||||
|
||||
static void quit(const Arg *arg);
|
||||
|
||||
static Monitor *recttomon(int x, int y, int w, int h);
|
||||
|
||||
static void removesystrayicon(Client *i);
|
||||
|
||||
static void resize(Client *c, int x, int y, int w, int h, int interact);
|
||||
|
||||
static void resizebarwin(Monitor *m);
|
||||
|
||||
static void resizeclient(Client *c, int x, int y, int w, int h);
|
||||
|
||||
static void resizemouse(const Arg *arg);
|
||||
|
||||
static void resizerequest(XEvent *e);
|
||||
|
||||
static void restack(Monitor *m);
|
||||
|
||||
static void run(void);
|
||||
|
||||
static void scan(void);
|
||||
|
||||
static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4);
|
||||
|
||||
static void sendmon(Client *c, Monitor *m);
|
||||
|
||||
static void setclientstate(Client *c, long state);
|
||||
|
||||
static void setfocus(Client *c);
|
||||
|
||||
static void setfullscreen(Client *c, int fullscreen);
|
||||
|
||||
static void fullscreen(const Arg *arg);
|
||||
|
||||
static void setlayout(const Arg *arg);
|
||||
|
||||
static void setmfact(const Arg *arg);
|
||||
|
||||
static void setup(void);
|
||||
|
||||
static void seturgent(Client *c, int urg);
|
||||
|
||||
static void showhide(Client *c);
|
||||
|
||||
static void sigchld(int unused);
|
||||
|
||||
static void spawn(const Arg *arg);
|
||||
|
||||
static Monitor *systraytomon(Monitor *m);
|
||||
|
||||
static void tag(const Arg *arg);
|
||||
|
||||
static void tagmon(const Arg *arg);
|
||||
|
||||
static void tile(Monitor *);
|
||||
|
||||
static void togglebar(const Arg *arg);
|
||||
|
||||
static void togglefloating(const Arg *arg);
|
||||
|
||||
static void togglesticky(const Arg *arg);
|
||||
|
||||
static void toggletag(const Arg *arg);
|
||||
|
||||
static void toggleview(const Arg *arg);
|
||||
|
||||
static void unfocus(Client *c, int setfocus);
|
||||
|
||||
static void unmanage(Client *c, int destroyed);
|
||||
|
||||
static void unmapnotify(XEvent *e);
|
||||
|
||||
static void updatebarpos(Monitor *m);
|
||||
|
||||
static void updatebars(void);
|
||||
|
||||
static void updateclientlist(void);
|
||||
|
||||
static int updategeom(void);
|
||||
|
||||
static void updatenumlockmask(void);
|
||||
|
||||
static void updatesizehints(Client *c);
|
||||
|
||||
static void updatestatus(void);
|
||||
|
||||
static void updatesystray(void);
|
||||
|
||||
static void updatesystrayicongeom(Client *i, int w, int h);
|
||||
|
||||
static void updatesystrayiconstate(Client *i, XPropertyEvent *ev);
|
||||
|
||||
static void updatetitle(Client *c);
|
||||
|
||||
static void updatewindowtype(Client *c);
|
||||
|
||||
static void updatewmhints(Client *c);
|
||||
|
||||
static void view(const Arg *arg);
|
||||
|
||||
static Client *wintoclient(Window w);
|
||||
|
||||
static Monitor *wintomon(Window w);
|
||||
|
||||
static Client *wintosystrayicon(Window w);
|
||||
|
||||
static int xerror(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static int xerrordummy(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static int xerrorstart(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static void zoom(const Arg *arg);
|
||||
|
||||
static void autostart_exec(void);
|
||||
|
||||
/* variables */
|
||||
static Systray *systray = NULL;
|
||||
static const char broken[] = "broken";
|
||||
|
@ -440,6 +120,8 @@ static KeySym keychain = -1;
|
|||
#include "movestack.c"
|
||||
/* Keys bindings */
|
||||
#include "keys/keys.h"
|
||||
/* Mouse bindings */
|
||||
#include "keys/mouse.h"
|
||||
|
||||
struct Pertag {
|
||||
unsigned int curtag, prevtag; /* current and previous tag */
|
||||
|
|
272
src/dwm.h
Normal file
272
src/dwm.h
Normal file
|
@ -0,0 +1,272 @@
|
|||
//
|
||||
// Created by anas on 10/31/22.
|
||||
//
|
||||
|
||||
#ifndef DWM_H
|
||||
#define DWM_H
|
||||
|
||||
/* enums */
|
||||
enum {
|
||||
CurNormal, CurResize, CurMove, CurLast
|
||||
}; /* cursor */
|
||||
enum {
|
||||
SchemeNorm, SchemeSel, SchemeUrg
|
||||
}; /* color schemes */
|
||||
enum {
|
||||
NetSupported, NetWMName, NetWMState, NetWMCheck,
|
||||
NetSystemTray, NetSystemTrayOP, NetSystemTrayOrientation, NetSystemTrayOrientationHorz,
|
||||
NetWMFullscreen, NetActiveWindow, NetWMWindowType,
|
||||
NetWMWindowTypeDialog, NetClientList, NetLast
|
||||
}; /* EWMH atoms */
|
||||
enum {
|
||||
Manager, Xembed, XembedInfo, XLast
|
||||
}; /* Xembed atoms */
|
||||
enum {
|
||||
WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast
|
||||
}; /* default atoms */
|
||||
|
||||
typedef union {
|
||||
int i;
|
||||
unsigned int ui;
|
||||
float f;
|
||||
const void *v;
|
||||
} Arg;
|
||||
|
||||
typedef struct Monitor Monitor;
|
||||
typedef struct Client Client;
|
||||
struct Client {
|
||||
char name[256];
|
||||
float mina, maxa;
|
||||
int x, y, w, h;
|
||||
int oldx, oldy, oldw, oldh;
|
||||
int basew, baseh, incw, inch, maxw, maxh, minw, minh, hintsvalid;
|
||||
int bw, oldbw;
|
||||
unsigned int tags;
|
||||
int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen, issticky;
|
||||
Client *next;
|
||||
Client *snext;
|
||||
Monitor *mon;
|
||||
Window win;
|
||||
};
|
||||
|
||||
|
||||
typedef struct {
|
||||
const char *symbol;
|
||||
|
||||
void (*arrange)(Monitor *);
|
||||
} Layout;
|
||||
|
||||
typedef struct Pertag Pertag;
|
||||
struct Monitor {
|
||||
char ltsymbol[16];
|
||||
float mfact;
|
||||
int nmaster;
|
||||
int num;
|
||||
int by; /* bar geometry */
|
||||
int mx, my, mw, mh; /* screen size */
|
||||
int wx, wy, ww, wh; /* window area */
|
||||
unsigned int seltags;
|
||||
unsigned int sellt;
|
||||
unsigned int tagset[2];
|
||||
int showbar;
|
||||
int topbar;
|
||||
Client *clients;
|
||||
Client *sel;
|
||||
Client *stack;
|
||||
Monitor *next;
|
||||
Window barwin;
|
||||
const Layout *lt[2];
|
||||
Pertag *pertag;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
const char *class;
|
||||
const char *instance;
|
||||
const char *title;
|
||||
unsigned int tags;
|
||||
int isfloating;
|
||||
int monitor;
|
||||
} Rule;
|
||||
|
||||
typedef struct Systray Systray;
|
||||
struct Systray {
|
||||
Window win;
|
||||
Client *icons;
|
||||
};
|
||||
|
||||
/* function declarations */
|
||||
static void applyrules(Client *c);
|
||||
|
||||
static int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact);
|
||||
|
||||
static void arrange(Monitor *m);
|
||||
|
||||
static void arrangemon(Monitor *m);
|
||||
|
||||
static void attach(Client *c);
|
||||
|
||||
static void attachstack(Client *c);
|
||||
|
||||
static void buttonpress(XEvent *e);
|
||||
|
||||
static void checkotherwm(void);
|
||||
|
||||
static void cleanup(void);
|
||||
|
||||
static void cleanupmon(Monitor *mon);
|
||||
|
||||
static void clientmessage(XEvent *e);
|
||||
|
||||
static void configure(Client *c);
|
||||
|
||||
static void configurenotify(XEvent *e);
|
||||
|
||||
static void configurerequest(XEvent *e);
|
||||
|
||||
static Monitor *createmon(void);
|
||||
|
||||
static void destroynotify(XEvent *e);
|
||||
|
||||
static void detach(Client *c);
|
||||
|
||||
static void detachstack(Client *c);
|
||||
|
||||
static Monitor *dirtomon(int dir);
|
||||
|
||||
static void drawbar(Monitor *m);
|
||||
|
||||
static void drawbars(void);
|
||||
|
||||
static void enternotify(XEvent *e);
|
||||
|
||||
static void expose(XEvent *e);
|
||||
|
||||
static void focus(Client *c);
|
||||
|
||||
static void focusin(XEvent *e);
|
||||
|
||||
static Atom getatomprop(Client *c, Atom prop);
|
||||
|
||||
static int getrootptr(int *x, int *y);
|
||||
|
||||
static long getstate(Window w);
|
||||
|
||||
static unsigned int getsystraywidth();
|
||||
|
||||
static int gettextprop(Window w, Atom atom, char *text, unsigned int size);
|
||||
|
||||
static void grabbuttons(Client *c, int focused);
|
||||
|
||||
static void grabkeys(void);
|
||||
|
||||
static void keypress(XEvent *e);
|
||||
|
||||
static void manage(Window w, XWindowAttributes *wa);
|
||||
|
||||
static void mappingnotify(XEvent *e);
|
||||
|
||||
static void maprequest(XEvent *e);
|
||||
|
||||
static void monocle(Monitor *m);
|
||||
|
||||
static void motionnotify(XEvent *e);
|
||||
|
||||
static Client *nexttiled(Client *c);
|
||||
|
||||
static void pop(Client *);
|
||||
|
||||
static void propertynotify(XEvent *e);
|
||||
|
||||
static Monitor *recttomon(int x, int y, int w, int h);
|
||||
|
||||
static void removesystrayicon(Client *i);
|
||||
|
||||
static void resize(Client *c, int x, int y, int w, int h, int interact);
|
||||
|
||||
static void resizebarwin(Monitor *m);
|
||||
|
||||
static void resizeclient(Client *c, int x, int y, int w, int h);
|
||||
|
||||
static void resizemouse(const Arg *arg);
|
||||
|
||||
static void resizerequest(XEvent *e);
|
||||
|
||||
static void restack(Monitor *m);
|
||||
|
||||
static void run(void);
|
||||
|
||||
static void scan(void);
|
||||
|
||||
static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4);
|
||||
|
||||
static void sendmon(Client *c, Monitor *m);
|
||||
|
||||
static void setclientstate(Client *c, long state);
|
||||
|
||||
static void setfocus(Client *c);
|
||||
|
||||
static void setfullscreen(Client *c, int fullscreen);
|
||||
|
||||
static void setup(void);
|
||||
|
||||
static void seturgent(Client *c, int urg);
|
||||
|
||||
static void showhide(Client *c);
|
||||
|
||||
static void sigchld(int unused);
|
||||
|
||||
static Monitor *systraytomon(Monitor *m);
|
||||
|
||||
static void tile(Monitor *);
|
||||
|
||||
static void toggletag(const Arg *arg);
|
||||
|
||||
static void toggleview(const Arg *arg);
|
||||
|
||||
static void unfocus(Client *c, int setfocus);
|
||||
|
||||
static void unmanage(Client *c, int destroyed);
|
||||
|
||||
static void unmapnotify(XEvent *e);
|
||||
|
||||
static void updatebarpos(Monitor *m);
|
||||
|
||||
static void updatebars(void);
|
||||
|
||||
static void updateclientlist(void);
|
||||
|
||||
static int updategeom(void);
|
||||
|
||||
static void updatenumlockmask(void);
|
||||
|
||||
static void updatesizehints(Client *c);
|
||||
|
||||
static void updatestatus(void);
|
||||
|
||||
static void updatesystray(void);
|
||||
|
||||
static void updatesystrayicongeom(Client *i, int w, int h);
|
||||
|
||||
static void updatesystrayiconstate(Client *i, XPropertyEvent *ev);
|
||||
|
||||
static void updatetitle(Client *c);
|
||||
|
||||
static void updatewindowtype(Client *c);
|
||||
|
||||
static void updatewmhints(Client *c);
|
||||
|
||||
static Client *wintoclient(Window w);
|
||||
|
||||
static Monitor *wintomon(Window w);
|
||||
|
||||
static Client *wintosystrayicon(Window w);
|
||||
|
||||
static int xerror(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static int xerrordummy(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static int xerrorstart(Display *dpy, XErrorEvent *ee);
|
||||
|
||||
static void autostart_exec(void);
|
||||
|
||||
#endif //DWM_H
|
46
src/keys/functions.h
Normal file
46
src/keys/functions.h
Normal file
|
@ -0,0 +1,46 @@
|
|||
//
|
||||
// Created by anas on 10/31/22.
|
||||
//
|
||||
|
||||
#ifndef FUNCTIONS_H
|
||||
#define FUNCTIONS_H
|
||||
|
||||
#include "../dwm.h"
|
||||
|
||||
static void spawn(const Arg *arg);
|
||||
|
||||
static void focusmon(const Arg *arg);
|
||||
|
||||
static void fullscreen(const Arg *arg);
|
||||
|
||||
static void focusstack(const Arg *arg);
|
||||
|
||||
static void tagmon(const Arg *arg);
|
||||
|
||||
static void incnmaster(const Arg *arg);
|
||||
|
||||
static void killclient(const Arg *arg);
|
||||
|
||||
static void movemouse(const Arg *arg);
|
||||
|
||||
static void togglebar(const Arg *arg);
|
||||
|
||||
static void togglesticky(const Arg *arg);
|
||||
|
||||
static void togglefloating(const Arg *arg);
|
||||
|
||||
static void setmfact(const Arg *arg);
|
||||
|
||||
static void view(const Arg *arg);
|
||||
|
||||
static void movestack(const Arg *arg);
|
||||
|
||||
static void setlayout(const Arg *arg);
|
||||
|
||||
static void tag(const Arg *arg);
|
||||
|
||||
static void zoom(const Arg *arg);
|
||||
|
||||
static void quit(const Arg *arg);
|
||||
|
||||
#endif //FUNCTIONS_H
|
|
@ -1,15 +1,11 @@
|
|||
#include "../config.h"
|
||||
#include "keys.h"
|
||||
#include "functions.h"
|
||||
#include "../layouts/layouts.h"
|
||||
// X11 keysym definitions
|
||||
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
||||
|
||||
/* key definitions */
|
||||
#define MODKEY Mod4Mask // win/super key
|
||||
|
||||
#define TAGKEYS(CHAIN, KEY, TAG) \
|
||||
{ MODKEY, CHAIN, KEY, view, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask, CHAIN, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ShiftMask, CHAIN, KEY, tag, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, CHAIN, KEY, toggletag, {.ui = 1 << TAG} },
|
||||
|
||||
#include <X11/keysym.h>
|
||||
|
||||
static Key keys[] = {
|
||||
/* modifier chain key key function argument */
|
||||
|
@ -84,8 +80,8 @@ static Key keys[] = {
|
|||
{MODKEY, -1, XK_i, incnmaster, {.i = +1}},
|
||||
{MODKEY, -1, XK_d, incnmaster, {.i = -1}},
|
||||
// Change the focus window size (in the tile mode)
|
||||
{MODKEY, -1, XK_h, setmfact, {.f = -0.05}},
|
||||
{MODKEY, -1, XK_l, setmfact, {.f = +0.05}},
|
||||
{MODKEY, -1, XK_h, setmfact, {.f = -0.05f}},
|
||||
{MODKEY, -1, XK_l, setmfact, {.f = +0.05f}},
|
||||
// { MODKEY, XK_Return, zoom, {0} },
|
||||
{MODKEY, -1, XK_Tab, view, {0}},
|
||||
|
||||
|
@ -171,20 +167,4 @@ static Key keys[] = {
|
|||
// { MODKEY|ShiftMask|Mod1Mask, -1, XK_q, quit, {0} },
|
||||
};
|
||||
|
||||
/* button definitions */
|
||||
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
||||
static Button buttons[] = {
|
||||
/* click event mask button function argument */
|
||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||
{ClkWinTitle, 0, Button2, zoom, {0}},
|
||||
{ClkStatusText, 0, Button2, spawn, {.v = termcmd}},
|
||||
{ClkClientWin, MODKEY, Button1, movemouse, {0}},
|
||||
{ClkClientWin, MODKEY, Button2, togglefloating, {0}},
|
||||
{ClkClientWin, MODKEY, Button3, resizemouse, {0}},
|
||||
{ClkTagBar, 0, Button1, view, {0}},
|
||||
{ClkTagBar, 0, Button3, toggleview, {0}},
|
||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||
};
|
||||
|
||||
|
|
|
@ -1,442 +0,0 @@
|
|||
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
|
||||
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
|
||||
|
||||
/* commands */
|
||||
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
|
||||
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", norm_bg,
|
||||
"-nf", norm_fg, "-sb", sel_bg, "-sf", sel_fg, NULL };
|
||||
static const char *termcmd[] = { TERMINAL, NULL };
|
||||
|
||||
/* key definitions */
|
||||
#define MODKEY Mod4Mask // win/super key
|
||||
|
||||
#define TAGKEYS(KEY,TAG) \
|
||||
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
|
||||
|
||||
// X11 keysym definitions
|
||||
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
||||
static Key keys[] = {
|
||||
/* modifier key function argument */
|
||||
/* ---------------------------------- Apps Keys ---------------------------------- */
|
||||
// Dmenu (launcher)
|
||||
{ MODKEY|ShiftMask, XK_d, spawn, {.v = dmenucmd } },
|
||||
// Rofi launcher (small)
|
||||
{ MODKEY|ShiftMask|ControlMask, XK_d, spawn, SHCMD("rofi -show drun") },
|
||||
// Start the main terminal
|
||||
{ MODKEY, XK_Return, spawn, {.v = termcmd } },
|
||||
// Start the alacritty terminal
|
||||
<<<<<<< HEAD
|
||||
// {2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
||||
// // Start the alacritty terminal with tmux
|
||||
// {2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
||||
// // kitty
|
||||
// {2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
||||
// // kitty with tmux
|
||||
// {2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
||||
// /************************************* File browsers *************************************/
|
||||
// // GUI filebrowser (pcmanfm)
|
||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
||||
// // Rofi file browser (small)
|
||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
||||
// // ranger
|
||||
// {2, {{MODKEY|ShiftMask, XK_f}, {0, XK_r}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
||||
// /************************************* Start the web browers *************************************/
|
||||
// // Google chrome stable
|
||||
// {2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
||||
// // Tor brower
|
||||
// {2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
||||
// /************************************* Start the caht/email/\* apps *************************************/
|
||||
// // Discord
|
||||
// {2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
||||
// // Obsidian
|
||||
// {2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
||||
// /************************************* Start the dev apps *************************************/
|
||||
// // Jetbrains toolbox
|
||||
// {2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
||||
// // NeoVim
|
||||
// {2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
||||
// // Vim
|
||||
// {2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
||||
// // emacs
|
||||
// {2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
||||
// /************************************* Start personalize apps *************************************/
|
||||
// // nitrogen
|
||||
// {2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
||||
// // nm-connection-editor
|
||||
// {2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
||||
// /************************************* Start multi media apps *************************************/
|
||||
// // cmus
|
||||
// {2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
||||
// // vlc
|
||||
// {2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
||||
// // vlc in the main terminal
|
||||
// {2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
||||
// /************************************* Start the emoji piker apps *************************************/
|
||||
// // Emoji selector (rofi)
|
||||
// {1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofi -show emoji") },
|
||||
// /************************************* dwm keys *************************************/
|
||||
// // Full screen mode
|
||||
// {1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
||||
// // Toggle the slstatus bar (hide/show)
|
||||
// {1, {{MODKEY, XK_b}}, togglebar, {0} },
|
||||
// // Change the focus
|
||||
// {1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
||||
// {1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
||||
// // Change the stack layout (horizontal/virtecal)
|
||||
// {1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
||||
// {1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
||||
// // Change the focus window size (in the tile mode)
|
||||
// {1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
||||
// {1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
||||
// // { MODKEY, XK_Return, zoom, {0} },
|
||||
// {1, {{MODKEY, XK_Tab}}, view, {0} },
|
||||
//
|
||||
// {1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
||||
// {1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
||||
// // Toogle styky mode
|
||||
// {1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
||||
//
|
||||
// // Quit from the foucsed window (kill)
|
||||
// {2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
||||
// /************************* Switch between layouts *************************/
|
||||
// // Tiled layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
||||
// // Floating layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
||||
// // Monocle layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
||||
// // Grid layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
||||
// // Spiral layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
||||
// // Dwindle layout
|
||||
// {2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
||||
// // Centerd master layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
||||
// // Centerd floating master layout
|
||||
// {2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
||||
//
|
||||
// // Toggle between current layout and tile layout
|
||||
// {2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
||||
// // Toggle floating window
|
||||
// {1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
||||
// // View all tags
|
||||
// {1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
||||
// // Mirror the current tagg in all tags
|
||||
// {1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
||||
// // I don't know
|
||||
// {1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
||||
// {1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
||||
// {1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
||||
// {1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
||||
||||||| 95139f7
|
||||
{2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
||||
// Start the alacritty terminal with tmux
|
||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
||||
// kitty
|
||||
{2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
||||
// kitty with tmux
|
||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
||||
/************************************* File browsers *************************************/
|
||||
// GUI filebrowser (pcmanfm)
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
||||
// Rofi file browser (small)
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
||||
// ranger
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_r}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
||||
/************************************* Start the web browers *************************************/
|
||||
// Google chrome stable
|
||||
{2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
||||
// Tor brower
|
||||
{2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
||||
/************************************* Start the caht/email/\* apps *************************************/
|
||||
// Discord
|
||||
{2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
||||
// Obsidian
|
||||
{2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
||||
/************************************* Start the dev apps *************************************/
|
||||
// Jetbrains toolbox
|
||||
{2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
||||
// NeoVim
|
||||
{2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
||||
// Vim
|
||||
{2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
||||
// emacs
|
||||
{2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
||||
/************************************* Start personalize apps *************************************/
|
||||
// nitrogen
|
||||
{2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
||||
// nm-connection-editor
|
||||
{2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
||||
/************************************* Start multi media apps *************************************/
|
||||
// cmus
|
||||
{2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
||||
// vlc
|
||||
{2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
||||
// vlc in the main terminal
|
||||
{2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
||||
/************************************* Start the emoji piker apps *************************************/
|
||||
// Emoji selector (rofi)
|
||||
{1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofi -show emoji") },
|
||||
/************************************* dwm keys *************************************/
|
||||
// Full screen mode
|
||||
{1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
||||
// Toggle the slstatus bar (hide/show)
|
||||
{1, {{MODKEY, XK_b}}, togglebar, {0} },
|
||||
// Change the focus
|
||||
{1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
||||
{1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
||||
// Change the stack layout (horizontal/virtecal)
|
||||
{1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
||||
{1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
||||
// Change the focus window size (in the tile mode)
|
||||
{1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
||||
{1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
||||
// { MODKEY, XK_Return, zoom, {0} },
|
||||
{1, {{MODKEY, XK_Tab}}, view, {0} },
|
||||
|
||||
{1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
||||
// Toogle styky mode
|
||||
{1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
||||
|
||||
// Quit from the foucsed window (kill)
|
||||
{2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
||||
/************************* Switch between layouts *************************/
|
||||
// Tiled layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
||||
// Floating layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
||||
// Monocle layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
||||
// Grid layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
||||
// Spiral layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
||||
// Dwindle layout
|
||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
||||
// Centerd master layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
||||
// Centerd floating master layout
|
||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
||||
|
||||
// Toggle between current layout and tile layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
||||
// Toggle floating window
|
||||
{1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
||||
// View all tags
|
||||
{1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
||||
// Mirror the current tagg in all tags
|
||||
{1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
||||
// I don't know
|
||||
{1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
||||
{1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
||||
=======
|
||||
{2, {{MODKEY, XK_t}, {0, XK_a}}, spawn, SHCMD("alacritty") },
|
||||
// Start the alacritty terminal with tmux
|
||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_a}}, spawn, SHCMD("alacritty -e tmux") },
|
||||
// kitty
|
||||
{2, {{MODKEY, XK_t}, {0, XK_k}}, spawn, SHCMD("kitty") },
|
||||
// kitty with tmux
|
||||
{2, {{MODKEY, XK_t}, {ShiftMask, XK_k}}, spawn, SHCMD("kitty -e tmux") },
|
||||
/************************************* File browsers *************************************/
|
||||
// GUI filebrowser (pcmanfm)
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_g}}, spawn, SHCMD(GUI_FILEMANAGER) },
|
||||
// Rofi file browser (small)
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_f}}, spawn, SHCMD("rofi -show filebrowser") },
|
||||
// Terminal file manager (ranger)
|
||||
{2, {{MODKEY|ShiftMask, XK_f}, {0, XK_t}}, spawn, SHCMD(TERMINAL " -e ranger") },
|
||||
/************************************* Start the web browers *************************************/
|
||||
// Google chrome stable
|
||||
{2, {{MODKEY, XK_w}, {0, XK_g}}, spawn, SHCMD(WEBBROWSER) },
|
||||
// Tor brower
|
||||
{2, {{MODKEY, XK_w}, {0, XK_t}}, spawn, SHCMD("tor-browser") },
|
||||
/************************************* Start the caht/email/\* apps *************************************/
|
||||
// Discord
|
||||
{2, {{MODKEY, XK_c}, {0, XK_d}}, spawn, SHCMD("discord") },
|
||||
// Obsidian
|
||||
{2, {{MODKEY, XK_c}, {0, XK_o}}, spawn, SHCMD("obsidian") },
|
||||
/************************************* Start the dev apps *************************************/
|
||||
// Jetbrains toolbox
|
||||
{2, {{MODKEY, XK_a}, {0, XK_j}}, spawn, SHCMD("jetbrains-toolbox") },
|
||||
// NeoVim
|
||||
{2, {{MODKEY, XK_a}, {0, XK_n}}, spawn, SHCMD(TERMINAL " -e nvim") },
|
||||
// Vim
|
||||
{2, {{MODKEY, XK_a}, {0, XK_v}}, spawn, SHCMD(TERMINAL " -e vim") },
|
||||
// emacs
|
||||
{2, {{MODKEY, XK_a}, {0, XK_e}}, spawn, SHCMD("emacs") },
|
||||
/************************************* Start personalize apps *************************************/
|
||||
// nitrogen
|
||||
{2, {{MODKEY, XK_p}, {0, XK_b}}, spawn, SHCMD("nitrogen") },
|
||||
// nm-connection-editor
|
||||
{2, {{MODKEY, XK_p}, {0, XK_n}}, spawn, SHCMD("nm-connection-editor") },
|
||||
/************************************* Start multi media apps *************************************/
|
||||
// cmus
|
||||
{2, {{MODKEY, XK_m}, {0, XK_c}}, spawn, SHCMD("sh -c \"" TERMINAL " -e cmus\" & sh -c \"cmus-rpc --link\"") },
|
||||
// vlc
|
||||
{2, {{MODKEY, XK_m}, {0, XK_v}}, spawn, SHCMD("vlc") },
|
||||
// vlc in the main terminal
|
||||
{2, {{MODKEY, XK_m}, {ShiftMask, XK_v}}, spawn, SHCMD(TERMINAL "nvlc") },
|
||||
/************************************* Start the emoji piker apps *************************************/
|
||||
// Emoji selector (rofi)
|
||||
{1, {{Mod4Mask, XK_e}}, spawn, SHCMD("rofimoji") },
|
||||
/************************************* dwm keys *************************************/
|
||||
// Full screen mode
|
||||
{1, {{MODKEY, XK_f}}, fullscreen, {0} },
|
||||
// Toggle the slstatus bar (hide/show)
|
||||
{1, {{MODKEY, XK_b}}, togglebar, {0} },
|
||||
// Change the focus
|
||||
{1, {{MODKEY, XK_j}}, focusstack, {.i = +1 } },
|
||||
{1, {{MODKEY, XK_k}}, focusstack, {.i = -1 } },
|
||||
// Change the stack layout (horizontal/virtecal)
|
||||
{1, {{MODKEY, XK_i}}, incnmaster, {.i = +1 } },
|
||||
{1, {{MODKEY, XK_d}}, incnmaster, {.i = -1 } },
|
||||
// Change the focus window size (in the tile mode)
|
||||
{1, {{MODKEY, XK_h}}, setmfact, {.f = -0.05} },
|
||||
{1, {{MODKEY, XK_l}}, setmfact, {.f = +0.05} },
|
||||
// { MODKEY, XK_Return, zoom, {0} },
|
||||
{1, {{MODKEY, XK_Tab}}, view, {0} },
|
||||
|
||||
{1, {{MODKEY|ShiftMask, XK_j}}, movestack, {.i = +1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_k}}, movestack, {.i = -1 } },
|
||||
// Toogle styky mode
|
||||
{1, {{MODKEY|ShiftMask, XK_s}}, togglesticky, {0} },
|
||||
|
||||
// Quit from the foucsed window (kill)
|
||||
{2, {{MODKEY, XK_q}, {0, XK_q}}, killclient, {0} },
|
||||
/************************* Switch between layouts *************************/
|
||||
// Tiled layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_t}}, setlayout, {.v = &layouts[0]} },
|
||||
// Floating layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_f}}, setlayout, {.v = &layouts[1]} },
|
||||
// Monocle layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_m}}, setlayout, {.v = &layouts[2]} },
|
||||
// Grid layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_g}}, setlayout, {.v = &layouts[3]} },
|
||||
// Spiral layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_r}}, setlayout, {.v = &layouts[4]} },
|
||||
// Dwindle layout
|
||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_r}}, setlayout, {.v = &layouts[5]} },
|
||||
// Centerd master layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_c}}, setlayout, {.v = &layouts[6]} },
|
||||
// Centerd floating master layout
|
||||
{2, {{MODKEY, XK_s}, {ShiftMask, XK_c}}, setlayout, {.v = &layouts[7]} },
|
||||
|
||||
// Toggle between current layout and tile layout
|
||||
{2, {{MODKEY, XK_s}, {0, XK_space}}, setlayout, {0} },
|
||||
// Toggle floating window
|
||||
{1, {{MODKEY|Mod1Mask, XK_f}}, togglefloating, {0} },
|
||||
// View all tags
|
||||
{1, {{MODKEY, XK_0}}, view, {.ui = ~0 } },
|
||||
// Mirror the current tagg in all tags
|
||||
{1, {{MODKEY|ShiftMask, XK_0}}, tag, {.ui = ~0 } },
|
||||
// I don't know
|
||||
{1, {{MODKEY, XK_comma}}, focusmon, {.i = -1 } },
|
||||
{1, {{MODKEY, XK_period}}, focusmon, {.i = +1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_comma}}, tagmon, {.i = -1 } },
|
||||
{1, {{MODKEY|ShiftMask, XK_period}}, tagmon, {.i = +1 } },
|
||||
>>>>>>> update-stuff
|
||||
/************************* Tag keys *************************/
|
||||
TAGKEYS( XK_1, 0)
|
||||
TAGKEYS( XK_2, 1)
|
||||
TAGKEYS( XK_3, 2)
|
||||
TAGKEYS( XK_4, 3)
|
||||
TAGKEYS( XK_5, 4)
|
||||
TAGKEYS( XK_6, 5)
|
||||
TAGKEYS( XK_7, 6)
|
||||
TAGKEYS( XK_8, 7)
|
||||
TAGKEYS( XK_9, 8)
|
||||
TAGKEYS( XK_semicolon, 9)
|
||||
/* ---------------------------------- Control Keys ---------------------------------- */
|
||||
<<<<<<< HEAD
|
||||
// // Brightness controllers (requires xbacklight)
|
||||
// {1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
||||
// {1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
||||
// // Sound controllers (requires pamixer)
|
||||
// {1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
||||
// {1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
||||
// {1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
||||
// // Media controls (requires playerctl)
|
||||
// {1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
||||
// {1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
||||
// {1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
||||
// {1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
||||
// // Mute and unmute mic
|
||||
// {1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
||||
// // Take a screenshot
|
||||
// {1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
||||
// /* ---------------------------------- lock Keys ---------------------------------- */
|
||||
// // Lock the screen
|
||||
// {1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
||||
// // Kill dwm (super + shift + alt + q)
|
||||
// {1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
||||
||||||| 95139f7
|
||||
// Brightness controllers (requires xbacklight)
|
||||
{1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
||||
{1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
||||
// Sound controllers (requires pamixer)
|
||||
{1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
||||
{1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
||||
{1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
||||
// Media controls (requires playerctl)
|
||||
{1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
||||
{1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
||||
{1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
||||
{1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
||||
// Mute and unmute mic
|
||||
{1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
||||
// Take a screenshot
|
||||
{1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
||||
/* ---------------------------------- lock Keys ---------------------------------- */
|
||||
// Lock the screen
|
||||
{1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
||||
// Kill dwm (super + shift + alt + q)
|
||||
{1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
||||
=======
|
||||
// Brightness controllers (requires xbacklight)
|
||||
{1, {{0, XF86XK_MonBrightnessUp}}, spawn, SHCMD("xbacklight -inc 5") },
|
||||
{1, {{0, XF86XK_MonBrightnessDown}}, spawn, SHCMD("xbacklight -dec 5") },
|
||||
// Sound controllers (requires pamixer)
|
||||
{1, {{0, XF86XK_AudioRaiseVolume}}, spawn, SHCMD("pamixer --allow-boost -i 4") },
|
||||
{1, {{0, XF86XK_AudioLowerVolume}}, spawn, SHCMD("pamixer --allow-boost -d 4") },
|
||||
{1, {{0, XF86XK_AudioMute}}, spawn, SHCMD("pamixer -t") },
|
||||
// Media controls (requires playerctl)
|
||||
{1, {{0, XF86XK_AudioPlay}}, spawn, SHCMD("playerctl play-pause") },
|
||||
{1, {{0, XF86XK_AudioStop}}, spawn, SHCMD("playerctl stop") },
|
||||
{1, {{0, XF86XK_AudioNext}}, spawn, SHCMD("playerctl next") },
|
||||
{1, {{0, XF86XK_AudioPrev}}, spawn, SHCMD("playerctl previous") },
|
||||
// Mute and unmute mic
|
||||
{1, {{0, XF86XK_AudioMicMute}}, spawn, SHCMD("pactl set-source-mute @DEFAULT_SOURCE@ toggle") },
|
||||
// Take a screenshot
|
||||
{1, {{0, XK_Print}}, spawn, SHCMD(SCREENSHOT) },
|
||||
/* ---------------------------------- lock Keys ---------------------------------- */
|
||||
// Lock the screen
|
||||
{1, {{MODKEY|ShiftMask, XK_x}}, spawn, SHCMD("betterlockscreen -l dim") },
|
||||
{1, {{0, XF86XK_Suspend}}, spawn, SHCMD("betterlockscreen -l dim") },
|
||||
// Kill dwm (super + shift + alt + q)
|
||||
// {1, {{MODKEY|ShiftMask|Mod1Mask, XK_q}}, quit, {0} },
|
||||
>>>>>>> update-stuff
|
||||
};
|
||||
|
||||
/* button definitions */
|
||||
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
||||
static Button buttons[] = {
|
||||
/* click event mask button function argument */
|
||||
{ ClkTagBar, MODKEY, Button1, tag, {0} },
|
||||
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
|
||||
{ ClkWinTitle, 0, Button2, zoom, {0} },
|
||||
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
|
||||
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
|
||||
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
|
||||
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
|
||||
{ ClkTagBar, 0, Button1, view, {0} },
|
||||
{ ClkTagBar, 0, Button3, toggleview, {0} },
|
||||
{ ClkTagBar, MODKEY, Button1, tag, {0} },
|
||||
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
|
||||
};
|
||||
|
|
@ -1,12 +1,31 @@
|
|||
#ifndef keys_H
|
||||
#define keys_H
|
||||
#ifndef KEYS_H
|
||||
#define KEYS_H
|
||||
|
||||
// X11 keysym definitions
|
||||
#include <X11/XF86keysym.h> // req (libxinerama1 and libxinerama-dev)
|
||||
|
||||
#include <X11/keysym.h>
|
||||
#include <X11/X.h>
|
||||
#include "../dwm.h"
|
||||
|
||||
typedef struct {
|
||||
unsigned int mod;
|
||||
KeySym chain;
|
||||
KeySym keysym;
|
||||
|
||||
void (*func)(const Arg *);
|
||||
|
||||
const Arg arg;
|
||||
} Key;
|
||||
|
||||
/* key definitions */
|
||||
#define MODKEY Mod4Mask // win/super key
|
||||
|
||||
#define TAGKEYS(CHAIN, KEY, TAG) \
|
||||
{ MODKEY, CHAIN, KEY, view, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask, CHAIN, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ShiftMask, CHAIN, KEY, tag, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, CHAIN, KEY, toggletag, {.ui = 1 << TAG} },
|
||||
|
||||
// Include all the key bindings
|
||||
#ifndef KEYS_C
|
||||
#include "keys.c"
|
||||
#endif
|
||||
|
||||
#endif // keys_H
|
||||
|
|
23
src/keys/mouse.c
Normal file
23
src/keys/mouse.c
Normal file
|
@ -0,0 +1,23 @@
|
|||
//
|
||||
// Created by anas on 10/31/22.
|
||||
//
|
||||
|
||||
#include "mouse.h"
|
||||
#include "keys.h"
|
||||
|
||||
/* button definitions */
|
||||
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
||||
static Button buttons[] = {
|
||||
/* click event mask button function argument */
|
||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||
{ClkWinTitle, 0, Button2, zoom, {0}},
|
||||
{ClkStatusText, 0, Button2, spawn, {.v = termcmd}},
|
||||
{ClkClientWin, MODKEY, Button1, movemouse, {0}},
|
||||
{ClkClientWin, MODKEY, Button2, togglefloating, {0}},
|
||||
{ClkClientWin, MODKEY, Button3, resizemouse, {0}},
|
||||
{ClkTagBar, 0, Button1, view, {0}},
|
||||
{ClkTagBar, 0, Button3, toggleview, {0}},
|
||||
{ClkTagBar, MODKEY, Button1, tag, {0}},
|
||||
{ClkTagBar, MODKEY, Button3, toggletag, {0}},
|
||||
};
|
29
src/keys/mouse.h
Normal file
29
src/keys/mouse.h
Normal file
|
@ -0,0 +1,29 @@
|
|||
//
|
||||
// Created by anas on 10/31/22.
|
||||
//
|
||||
|
||||
#ifndef MOUSE_H
|
||||
#define MOUSE_H
|
||||
|
||||
#include <X11/X.h>
|
||||
|
||||
typedef struct {
|
||||
unsigned int click;
|
||||
unsigned int mask;
|
||||
unsigned int button;
|
||||
|
||||
void (*func)(const Arg *arg);
|
||||
|
||||
const Arg arg;
|
||||
} Button;
|
||||
|
||||
enum {
|
||||
ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
|
||||
ClkClientWin, ClkRootWin, ClkLast
|
||||
}; /* clicks */
|
||||
|
||||
#ifndef MOUSE_C
|
||||
#include "mouse.c"
|
||||
#endif
|
||||
|
||||
#endif //MOUSE_H
|
|
@ -21,4 +21,4 @@ static const Layout layouts[] = {
|
|||
{">M>", centeredfloatingmaster}, // 7
|
||||
};
|
||||
|
||||
#endif // !layouts.h
|
||||
#endif // layouts_H
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
void
|
||||
static void
|
||||
movestack(const Arg *arg) {
|
||||
Client *c = NULL, *p = NULL, *pc = NULL, *i;
|
||||
|
||||
|
|
Loading…
Reference in a new issue