{"id":17245638,"url":"https://github.com/jbms/jmswm","last_synced_at":"2025-07-28T14:40:30.927Z","repository":{"id":146533767,"uuid":"57332940","full_name":"jbms/jmswm","owner":"jbms","description":"Dynamic tiling window manager","archived":false,"fork":false,"pushed_at":"2020-07-13T20:17:39.000Z","size":1024,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-31T06:44:40.571Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jbms.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-28T20:50:52.000Z","updated_at":"2020-07-13T20:17:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"f90fa1de-326e-43e4-92f6-d0d9d8d7b5b5","html_url":"https://github.com/jbms/jmswm","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbms%2Fjmswm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbms%2Fjmswm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbms%2Fjmswm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbms%2Fjmswm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jbms","download_url":"https://codeload.github.com/jbms/jmswm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245591625,"owners_count":20640692,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T06:30:01.807Z","updated_at":"2025-03-26T05:09:18.207Z","avatar_url":"https://github.com/jbms.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"Dynamic tiling window manager, inspired by Ion, wmii.\n\nDependencies:\n=============\n\n- Boost (Ubuntu: `libboost-dev`)\n- X11 (Ubuntu: `libx11-dev`)\n- xrandr (Ubuntu: `libxrandr-dev`)\n- Pango (Ubuntu: `libpango1.0-dev`)\n- libasound (Ubuntu: `libasound2-dev`)\n- libiw (Ubuntu: `libiw-dev`)\n- libevent (Ubuntu: `libevent-dev`)\n\nBuilding:\n=========\n\n    mkdir build\n    cd build\n    cmake ..\n    make -j8\n\nKey command configuration:\n==========================\n\nModify src/wm/main.cpp to contain the correct paths to your terminal\nemulator, browser, etc. and to change key bindings as desired.\n\nStyle configuration:\n====================\n\nThe style configuration is stored in the file:\n\n    ~/.jmswm/style\n\nCopy config/style to that location.\n\nPer-window working directory:\n=============================\n\n`src/wm/extra/cwd.{h,c}pp` implements the concept of a per-window working\ndirectory.  This allows, for example, the key binding for opening a new terminal\nto start that terminal with the same working directory as the current window,\nwhich is usually what is desired.\n\nBecause X itself doesn't have any standard way of exposing this information,\nindividual programs have to be configured to expose their current directory in\nsome manner, and corresponding code has to be added to `src/wm/extra/cwd.cpp` to\naccess it.\n\nThe easiest way to do this tends to be to encode in the window title (WM_NAME X\nwindow property) both the intended user-visible title as well as the working\ndirectory, since many programs already support changing the window title.  For\nzsh support, see:\n\n    config/zshrc.example\n  \nThe modified window title is enabled only if the environment variable JMSWM is\nset; you can arrange for your `~/.xsession` file to set it.\n\nFor Emacs support, see:\n\n    config/emacs.example.el\n\nLicense:\n========\n\nCopyright 2006--2016 Jeremy Maitin-Shepard.\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, version 3.\n\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\nGeneral Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjbms%2Fjmswm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjbms%2Fjmswm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjbms%2Fjmswm/lists"}