{"id":16612888,"url":"https://github.com/ttys3/my-kitty-config","last_synced_at":"2025-04-08T03:17:33.802Z","repository":{"id":38267027,"uuid":"465801415","full_name":"ttys3/my-kitty-config","owner":"ttys3","description":"my kitty terminal config (the kitty config for tmux users)","archived":false,"fork":false,"pushed_at":"2024-09-26T12:55:11.000Z","size":91,"stargazers_count":189,"open_issues_count":0,"forks_count":39,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-10-13T01:45:11.062Z","etag":null,"topics":["kitty","kitty-config","terminal","tmux"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ttys3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2022-03-03T16:37:20.000Z","updated_at":"2024-10-07T15:38:06.000Z","dependencies_parsed_at":"2024-02-04T07:24:18.168Z","dependency_job_id":"5ecb9b0d-707c-4216-98d4-5c4bf534ea75","html_url":"https://github.com/ttys3/my-kitty-config","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/ttys3%2Fmy-kitty-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Fmy-kitty-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Fmy-kitty-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Fmy-kitty-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ttys3","download_url":"https://codeload.github.com/ttys3/my-kitty-config/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247767237,"owners_count":20992548,"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":["kitty","kitty-config","terminal","tmux"],"created_at":"2024-10-12T01:45:15.130Z","updated_at":"2025-04-08T03:17:33.769Z","avatar_url":"https://github.com/ttys3.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# my-kitty-config\n\nthe kitty config for tmux users\n\nthe shortcuts (key bindings) is heavily inspired by [Oh my tmux!](https://github.com/gpakosz/.tmux#bindings)\n\nmainly used under Linux\n\n## usage\n\n```shell\n# backup your config first\n# mv ~/.config/kitty  ~/.config/kitty.bak\n\ngit clone https://github.com/ttys3/my-kitty-config.git ~/.config/kitty\n```\n\n## suggested shell alias\n\n```shell\nalias icat=\"kitten icat\"\nalias s=\"kitten ssh\"\nalias d=\"kitten diff\"\n```\n\n## Shortcuts\n\nkey name see \u003chttps://github.com/xkbcommon/libxkbcommon/blob/master/include/xkbcommon/xkbcommon-keysyms.h\u003e\n\nor using `kitty --debug-input` to detect keysyms\n\n### config\n\nkeybindings explain:\n\n\u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eR\u003c/kbd\u003e means:\npress `ctrl` + `a` in the same time, release and then, press R (`shift`+`r`)\n\n| key                                       | description   |\n| ----------------------------------------- | ------------- |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eR\u003c/kbd\u003e | reload config |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eE\u003c/kbd\u003e | edit config |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eD\u003c/kbd\u003e | debug config  |\n\n### session\n\n| key                                       | description                         |\n| ----------------------------------------- | ----------------------------------- |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003es\u003c/kbd\u003e | save current layout to session file |\n\n### tab\n\n| key                                           | description        |\n| --------------------------------------------- | ------------------ |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e←\u003c/kbd\u003e | goto previous tab        |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e→\u003c/kbd\u003e | goto next tab           |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e,\u003c/kbd\u003e | move tab backward  |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e.\u003c/kbd\u003e | move tab forward   |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003e,\u003c/kbd\u003e     | change tab title   |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ec\u003c/kbd\u003e     | create new tab     |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ex\u003c/kbd\u003e     | close window / tab |\n\n### os window\n\n| key                          | description       |\n| ---------------------------- | ----------------- |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eq\u003c/kbd\u003e | quit kitty        |\n| \u003ckbd\u003ef11\u003c/kbd\u003e               | toggle fullscreen |\n\n### window\n\n| key                                                         | description                  |\n| ----------------------------------------------------------- | ---------------------------- |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003e-\u003c/kbd\u003e                   | horizontal split with cwd    |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e-\u003c/kbd\u003e  | horizontal split             |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003e\\\\\u003c/kbd\u003e                  | vertial split with cwd       |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e\\\\\u003c/kbd\u003e | vertial split                |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ex\u003c/kbd\u003e                   | close window                 |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ez\u003c/kbd\u003e                   | zoom (maxmize) window        |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003er\u003c/kbd\u003e               | resize window                |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e←\u003c/kbd\u003e                                | goto left window               |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e→\u003c/kbd\u003e                                | goto right window              |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e↑\u003c/kbd\u003e                                | goto up window                 |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e↓\u003c/kbd\u003e                                | goto down window               |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003eh\u003c/kbd\u003e                   | goto left window               |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003el\u003c/kbd\u003e                   | goto right window              |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ek\u003c/kbd\u003e                   | goto up window                 |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ej\u003c/kbd\u003e                   | goto down window               |\n| \u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e←\u003c/kbd\u003e                               | move current window to left  |\n| \u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e→\u003c/kbd\u003e                               | move current window to right |\n| \u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e↑\u003c/kbd\u003e                               | move current window to up    |\n| \u003ckbd\u003eshift\u003c/kbd\u003e+\u003ckbd\u003e↓\u003c/kbd\u003e                               | move current window to down  |\n| \u003ckbd\u003ealt\u003c/kbd\u003e+\u003ckbd\u003en\u003c/kbd\u003e                                 | resize window narrower       |\n| \u003ckbd\u003ealt\u003c/kbd\u003e+\u003ckbd\u003ew\u003c/kbd\u003e                                 | resize window wider          |\n| \u003ckbd\u003ealt\u003c/kbd\u003e+\u003ckbd\u003eu\u003c/kbd\u003e                                 | resize window taller         |\n| \u003ckbd\u003ealt\u003c/kbd\u003e+\u003ckbd\u003ed\u003c/kbd\u003e                                 | resize window shorter        |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ehome\u003c/kbd\u003e                             | resize window reset          |\n\n### font\n\n| key                          | description     |\n| ---------------------------- | --------------- |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e=\u003c/kbd\u003e | font size +     |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e-\u003c/kbd\u003e | font size -     |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003e0\u003c/kbd\u003e | font size reset |\n\n### misc\n\n| key                                                       | description                                                                          |\n| --------------------------------------------------------- | ------------------------------------------------------------------------------------ |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003et\u003c/kbd\u003e                 | kitten themes                                                                        |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003espace\u003c/kbd\u003e             | copy pasting with hints like [tmux-thumbs](https://github.com/fcsonline/tmux-thumbs) |\n| \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e | send real \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e (emacs shortcut \u003ckbd\u003eHome\u003c/kbd\u003e)              |\n\n## session restore\n\n\u003e if you have used \u003ckbd\u003ectrl\u003c/kbd\u003e+\u003ckbd\u003ea\u003c/kbd\u003e\u003e\u003ckbd\u003es\u003c/kbd\u003e generate the session, you do not need this.\n\nyou can create your session file under `~/.config/kitty`, let's say the filename is `session.conf`\n\nchange `startup_session none` to `startup_session session.conf`\n\ncreate `session.conf` like this:\n\n```ini\nnew_tab home\nlayout splits\ncd ~\nlaunch zsh\nfocus\n\nnew_tab work\ncd ~/work\nlaunch zsh\n\nnew_tab nvim\ncd ~/.config/nvim\nlaunch zsh\n\nnew_tab go\ncd ~/repo/go\nlaunch zsh\n\nnew_tab rust\ncd ~/repo/rust\nlaunch zsh\n```\n\n## kitty docs\n\nKeyboard shortcuts \u003chttps://sw.kovidgoyal.net/kitty/conf/#keyboard-shortcuts\u003e\n\nThe launch command syntax reference \u003chttps://sw.kovidgoyal.net/kitty/launch/#syntax-reference\u003e\n\n## troubleshooting\n\nthe behavior of `listen_on` differs from the behavior of `--listen-on` cli flag.\n\nthe cli one is exactly the same.\n\nthe config file one will append a random postfix to the socket name, this is strange logic.\n\nstart kitty:\n```\nkitty -o allow_remote_control=yes --listen-on unix:/run/user/1000/kitty.sock\n```\n\non other terminal:\n\n```\n kitty @ --to unix:/run/user/1000/kitty.sock launch --type=tab --cwd \"/tmp\" --tab-title \"My Tab\" --keep-focus bash\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttys3%2Fmy-kitty-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fttys3%2Fmy-kitty-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttys3%2Fmy-kitty-config/lists"}