{"id":13573088,"url":"https://github.com/susam/uncap","last_synced_at":"2025-04-12T15:43:00.057Z","repository":{"id":38863419,"uuid":"42393652","full_name":"susam/uncap","owner":"susam","description":"Map Caps Lock to Escape or any key to any key","archived":false,"fork":false,"pushed_at":"2023-01-01T23:38:33.000Z","size":69,"stargazers_count":1091,"open_issues_count":11,"forks_count":44,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-04-03T16:13:12.663Z","etag":null,"topics":["c","caps-lock","control","emacs","escape","keyboard","minimalist","vim","windows"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/susam.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"custom":["https://www.buymeacoffee.com/susam"]}},"created_at":"2015-09-13T11:38:39.000Z","updated_at":"2025-04-02T09:40:23.000Z","dependencies_parsed_at":"2023-02-01T01:15:31.107Z","dependency_job_id":null,"html_url":"https://github.com/susam/uncap","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/susam%2Funcap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/susam%2Funcap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/susam%2Funcap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/susam%2Funcap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/susam","download_url":"https://codeload.github.com/susam/uncap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248590933,"owners_count":21129916,"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":["c","caps-lock","control","emacs","escape","keyboard","minimalist","vim","windows"],"created_at":"2024-08-01T15:00:29.224Z","updated_at":"2025-04-12T15:43:00.037Z","avatar_url":"https://github.com/susam.png","language":"C","readme":"Uncap\r\n=====\r\n\r\nMap Caps Lock key to Escape key, or any to any key, on Windows systems.\r\n\r\n[![Download][Download SVG]][Download URL]\r\n[![MIT License][License Badge]][L]\r\n[![Twitter][Twitter SVG]][Twitter URL]\r\n\r\nApart from documenting how Uncap works on Windows, this README contains\r\ndetailed documentation about how to remap keys on Linux and Mac as well.\r\n\r\n[Download SVG]: https://img.shields.io/badge/download-uncap.exe-brightgreen.svg\r\n[Download URL]: https://github.com/susam/uncap/releases/download/0.3.0/uncap.exe\r\n[License Badge]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[Twitter SVG]: https://img.shields.io/badge/twitter-%40susam-%231da1f2\r\n[Twitter URL]: https://twitter.com/susam\r\n\r\n\r\nContents\r\n--------\r\n\r\n* [Features](#features)\r\n* [Get Started](#get-started)\r\n* [Custom Mapping](#custom-mapping)\r\n* [Usage](#usage)\r\n* [Known Issue with Microsoft Edge on Windows 10](#known-issue-with-microsoft-edge-on-windows-10)\r\n* [Alternatives](#alternatives)\r\n  * [Windows: Scancode Map Registry Value](#windows-scancode-map-registry-value)\r\n  * [Windows: AutoHotkey](#windows-autohotkey)\r\n  * [Linux: setxkbmap](#linux-setxkbmap)\r\n  * [Linux: xmodmap](#linux-xmodmap)\r\n  * [Linux: loadkeys](#linux-loadkeys)\r\n  * [Mac: System Preferences](#mac-system-preferences)\r\n  * [Mac: Seil](#mac-seil)\r\n* [Resources](#resources)\r\n* [License](#license)\r\n* [Support](#support)\r\n\r\n\r\nFeatures\r\n--------\r\n\r\nThe following list briefly describes some of the features of Uncap.\r\n\r\n 1. Map Caps Lock key to Escape key on a new Windows system with almost\r\n    no effort. Just download and double-click. This is the primary\r\n    reason why Uncap was written. This tool was written for users of\r\n    vi/Vim editor who like to map their Caps Lock key to Escape key for\r\n    convenience.\r\n 2. Map any key to any key, multiple keys to other keys, or disable\r\n    keys using command line arguments. No additional file or script is\r\n    required.\r\n 3. Enable, disable or modify key mappings without having to reboot the\r\n    Windows system.\r\n 4. Disable key mappings easily by stopping Uncap.\r\n 5. It is a single-file executable. It is very lightweight. The\r\n    executable is only about 100 KB in size. It occupies less than 1 MB\r\n    of memory and negligible CPU while running.\r\n\r\nThere are several other methods and tools available on Windows to map\r\none key to another. But none of them seem to have all five features\r\nenumerated above. For example, editing [Scancode\r\nMap](#windows-scancode-map-registry-value) registry value requires the\r\nWindows system to be rebooted after every change. On the other hand\r\n[AutoHotkey](#windows-autohotkey) requires an additional script file to\r\nbe written. Therefore, Uncap was written to support all five features\r\ndescribed above.\r\n\r\n\r\nGet Started\r\n------------\r\n\r\nUncap is a single-file executable: [`uncap.exe`][Download URL].\r\n\r\nThe simplest way to run it is to download it and double-click it. No\r\noutput window is displayed. It runs in background. Once it is running,\r\nwhenever Caps Lock key is pressed, it is translated to the Escape key by\r\nUncap.\r\n\r\n\r\nCustom Mapping\r\n--------------\r\n\r\nIt is possible to override the default mapping of Caps Lock key to\r\nEscape key by specifying a custom mapping, however to do so, Uncap must\r\nbe run with arguments either from Command Prompt or from Windows Run\r\ndialog box. The following steps show how uncap.exe may be used to map\r\nCaps Lock key to Left Control key.\r\n\r\n 1. Copy `uncap.exe` to a directory specified in the Windows `PATH`\r\n    variable. `C:\\Windows` is a very convenient location to copy this\r\n    file to.\r\n\r\n 2. Launch Windows Run dialog box by pressing `Windows Logo Key` + `R`.\r\n\r\n 3. Enter the following command.\r\n\r\n        uncap 0x14:0xa2\r\n\r\n 4. Press OK button. This would launch Uncap. No output window would be\r\n    displayed. Uncap would run in background. Whenever Caps Lock key is\r\n    pressed now, Uncap would translate it to Left Control key.\r\n\r\n 5. To terminate Uncap, run the following command.\r\n\r\n        uncap -k\r\n\r\nIn the above steps, Caps Lock key is mapped to Left Control key by\r\nspecifying `0x14:0xa2` as an argument to Uncap. The virtual-key code of\r\nCaps Lock is `0x14` and the virtual-key code of Control key is `0xa2`.\r\nTherefore, the argument `0x14:0xa2` maps Caps Lock key to Control key.\r\n\r\nThe list of virtual-key codes for every key can be found at\r\n\u003chttps://msdn.microsoft.com/library/windows/desktop/dd375731.aspx\u003e.\r\n\r\n\r\nUsage\r\n-----\r\n\r\nWhen Uncap is run without any arguments, it maps Caps Lock key to Escape\r\nkey. It may be run with arguments to map Caps Lock key to any key, any\r\nkey to any key, or disable any key.\r\n\r\nEach argument is a colon separated pair of virtual-key codes from\r\n\u003chttps://msdn.microsoft.com/library/windows/desktop/dd375731.aspx\u003e.\r\n\r\nThe virtual-key code may be specified either as hexadecimal integer as\r\nmentioned in the above URL or its equivalent decimal notation. These\r\ndetails are illustrated in the list of examples below.\r\n\r\n 1. Map Caps Lock key to Escape key.\r\n\r\n        uncap\r\n\r\n 2. Swap Caps Lock key with Escape key.\r\n\r\n        uncap 0x1b:0x14\r\n\r\n    Caps Lock key is already mapped to Escape key by default. The above\r\n    command maps Escape key to Caps Lock key, thus effectively swapping\r\n    both keys.\r\n\r\n 3. The hexadecimal integer is case-insensitive, so the following\r\n    command is equivalent to the previous command.\r\n\r\n        uncap 0x1B:0x14\r\n\r\n 4. The virtual-key codes may be specified in decimal notation, so the\r\n    following command is equivalent to the previous command.\r\n\r\n        uncap 27:20\r\n\r\n 5. Map Caps Lock key to Left Control key.\r\n\r\n        uncap 0x14:0xa2\r\n\r\n 6. Swap Caps Lock key and Left Control key.\r\n\r\n        uncap 0x14:0xa2 0xa2:0x14\r\n\r\n    This example shows that it is possible to specify more than one\r\n    argument to map multiple keys to other keys.\r\n\r\n 7. Here is another example that maps multiple keys to other keys. The\r\n    following command maps Caps Lock key to Left Control key, Left\r\n    Control key to Escape key and Escape key to Caps Lock key.\r\n\r\n        uncap 0x14:0xa2 0xa2:0x1b 0x1b:0x14\r\n\r\n 8. If a key is mapped to itself, then no mapping occurs for it. This\r\n    may be used to override default behaviour of mapping Caps Lock key\r\n    to Escape key and leave it unmapped while mapping another key to\r\n    some key. Here is an example that unmaps Caps Lock key and maps F1\r\n    key to escape key.\r\n\r\n        uncap 0x14:0x14 0x70:0x1b\r\n\r\n    When a key is mapped to another key, and that key is pressed, Uncap\r\n    translates it to the key it is mapped to by synthesizing a new\r\n    keystroke and injecting it into the system. But when a key is\r\n    mapped to itself, and that key is pressed, it is ignored, thus no\r\n    translation or synthesis of a new keystroke occurs.\r\n\r\n 9. If a key is mapped to 0, then the key is disabled. Here is an\r\n    example that disables Caps Lock key completely.\r\n\r\n        uncap 0x14:0\r\n\r\n10. Uncap runs without displaying a console by default. To terminate\r\n    another instance of Uncap that may be running, use the `-k` or\r\n    `--kill` option.\r\n\r\n        uncap -k\r\n\r\n    The above command kills all other instances of Uncap that are\r\n    running with or without a console.\r\n\r\n11. To run Uncap with a console, use the `-c` or `--console` option.\r\n\r\n        uncap -c\r\n\r\n    When Uncap is running in a console like this, it may be terminated\r\n    by pressing `Ctrl` + `C`.\r\n\r\n12. To run Uncap in debug mode, use the `-d` or `--debug` option.\r\n\r\n        uncap -d\r\n\r\n    The debug output contains one line of output with details about\r\n    every press of a key or release of a key.\r\n\r\n13. To log the keystroke details to a file, use the `-f` or `--file`\r\n    option.\r\n\r\n        uncap -f C:\\keys.txt\r\n\r\n    With this option alone, Uncap runs in background and logs the\r\n    keystroke details to the specified file. This option may be\r\n    combined with `-c` or `-d` to run Uncap in a console or print\r\n    debug output on the console, respectively.\r\n\r\n14. See the complete usage details along with options supported.\r\n\r\n        uncap -h\r\n\r\n\r\nKnown Issue with Microsoft Edge on Windows 10\r\n---------------------------------------------\r\n\r\nWhen Uncap is downloaded using the Microsoft Edge web browser on Windows\r\n10, it sometimes fails to map keys.\r\n\r\nThe following measures have found to be *unsuccessful* in resolving the\r\nissue:\r\n\r\n  - Right clicking `uncap.exe`, then selecting *Properties*, then\r\n    selecting *Unblock*, and then clicking *OK* does not resolve the\r\n    issue.\r\n\r\n  - Right clicking `uncap.exe`, then selecting *Properties*, then going\r\n    to *Security* tab, then clicking *Edit*, and then removing the\r\n    following two accounts does not resolve the issue:\r\n\r\n        Unknown Account(S-1-15-2-3624051433-2125758914-1423191267-1740899205-1073925389-3782572162-737981194)\r\n        Unknown Account(S-1-15-3-3624051433-2125758914-1423191267-1740899205-1073925389-3782572162-737981194)\r\n\r\n    These accounts are added automatically to files downloaded with\r\n    Microsoft Edge.\r\n\r\nThe following workarounds have been found to resolve the issue\r\nsuccessfully:\r\n\r\n  - Copy `uncap.exe` to a new file in the same directory. The new file\r\n    when run remaps keys successfully. Finally, delete the downloaded\r\n    `uncap.exe`, then rename the new file to `uncap.exe`, and use it\r\n    normally.\r\n\r\n  - Copy `uncap.exe` to some other directory. The new copied file when\r\n    run remaps keys successfully.\r\n\r\nThis issue was observed with Microsoft Edge Microsoft Edge 44.17763.1.0\r\non Windows 10 Pro.\r\n\r\n\r\nAlternatives\r\n------------\r\n\r\nThere are other tools and methods available to map one key to another on\r\nWindows, Linux and Mac. This section describes a few such tools and methods.\r\n\r\n\r\n### Windows: Scancode Map registry value ###\r\n\r\nOne way to map a key to another key in Windows without using any\r\nadditional software is by editing the registry to add a value called\r\n\"Scancode Map\" in \"HKLM\\SYSTEM\\CurrentControlSet\\Control\\Keyboard\r\nLayout\" registry key.\r\n\r\nFor example, to map Caps Lock key to Escape key, create a registration\r\nentries file, i.e. a file with reg as its extension, say uncap.reg, with\r\nthe following content.\r\n\r\n    REGEDIT4\r\n    [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Keyboard Layout]\r\n    \"Scancode Map\"=hex:00,00,00,00,00,00,00,00,02,00,00,00,01,00,3a,00,00,00,00,00\r\n\r\nThen save the file. Then double-click this file to add it to Windows\r\nregistry. Then reboot the Windows system. After rebooting, whenever Caps\r\nLock key is pressed, it would function like Escape key.\r\n\r\nThe same registry value may be added by running the following command in\r\nCommand Prompt.\r\n\r\n    reg add \"HKLM\\SYSTEM\\CurrentControlSet\\Control\\Keyboard Layout\" /v \"Scancode Map\" /t REG_BINARY /d 00000000000000000200000001003a0000000000\r\n\r\nThe hexadecimal code in the registry value is the scan code map. The\r\nformat of the scan code map is described in detail at\r\n\u003chttps://msdn.microsoft.com/library/windows/hardware/jj128267.aspx#scan_code_mapper_for_keyboards\u003e.\r\n\r\nThe following command may be used to view this registry value.\r\n\r\n    reg query \"HKLM\\SYSTEM\\CurrentControlSet\\Control\\Keyboard Layout\" /v \"Scancode Map\"\r\n\r\nThe following command may be used to remove this registry value.\r\n\r\n    reg delete \"HKLM\\SYSTEM\\CurrentControlSet\\Control\\Keyboard Layout\" /v \"Scancode Map\"\r\n\r\nWhile this method has an advantage that it requires no additional\r\nsoftware, a disadvantage of this method is that it requires the system\r\nto be rebooted after every change in the registry.\r\n\r\nThere is a tool called [SharpKeys][] that comes with graphical user\r\ninterface to manage this registry value. However a reboot is still\r\nrequired after every change made with SharpKeys.\r\n\r\n[SharpKeys]: https://sharpkeys.codeplex.com/\r\n\r\n\r\n### Windows: AutoHotkey ###\r\n\r\nThere is a fairly sophisticated scripting language for Windows called\r\n[AutoHotkey][] that can be used to map one key to another, among many\r\nother things.\r\n\r\nIt is quite simple to map one key to another using AutoHotkey. For\r\nexample, after installing AutoHotkey, to map Caps Lock key to Escape\r\nkey, create an AutoHotkey script, i.e. a file with ahk as its extension,\r\nsay uncap.ahk, with the following content.\r\n\r\n    CapsLock::Esc\r\n\r\nThen save the file. Then double-click this file to run AutoHotkey with\r\nthis script. Once this is done, whenever Caps Lock key is pressed, it is\r\ntranslated to Escape key. An AutoHotkey icon appears in the notification\r\narea (system tray). To stop it, right click on the icon and select\r\n'Exit'.\r\n\r\nThis method has an advantage that it does not require the system to be\r\nrebooted. However, AutoHotkey is a scripting language that can be used\r\nto do a number of other things such as defining hotkeys (shortcut keys),\r\nhotstrings (auto-replace), macros (scripted actions), etc. This may feel\r\nakin to killing a fly with a sledgehammer if one just wants to map a key\r\nto another key.\r\n\r\n[AutoHotkey]: http://www.autohotkey.com/\r\n\r\n\r\n### Linux: setxkbmap ###\r\n\r\nOn Linux, the `setxkbmap` command may be used to map one key to another\r\nkey in the X Window System. For example, the following command maps Caps\r\nLock key to Escape key.\r\n\r\n    setxkbmap -option caps:escape\r\n\r\nThe list of options along with a short description for each can be found\r\nat /usr/share/X11/xkb/rules in a .lst file with the same name as the\r\ncurrent XKB rule. The current XKB rule as well as the current mapping\r\noptions can be found in the output of this command.\r\n\r\n    setxkbmap -query\r\n\r\nFor example, if 'evdev' is displayed as the current rules, then see\r\n/usr/share/X11/xkb/rules/evdev.lst for the list of available options\r\nalong with a short description for each option.\r\n\r\nIn the output of the above command, the line that begins with 'rules:'\r\nin the output of the above command shows the current XKB rules. The key\r\nmapping option is displayed in the line that begins with 'option:' in\r\nthe output of the above command. If there is no such line, then no key\r\nmapping option is set.\r\n\r\nThe following command removes any key mapping option.\r\n\r\n    setxkbmap -option\r\n\r\n\r\n### Linux: xmodmap ###\r\n\r\nOn Linux, there is another command called `xmodmap` that may be used to\r\nmap one key to another in the X Window System. However this command is\r\nnow considered obsolescent. It is also a little clumsy to use,\r\nespecially while removing a key mapping. The `setxkbmap` command\r\ndescribed in the previous section is the preferred way of mapping keys\r\nin the X Window System. However, this section describes how to use\r\n`xmodmap` to map one key to another because this method is still in use\r\nalthough its use is gradually fading away. As an example, this section\r\ndescribes how to map Caps Lock key to Escape key.\r\n\r\nBefore performing the key mapping, one needs to find the key code of\r\nCaps Lock key in the X Window System. This is useful while reverting the\r\nkey mapping. Here is the command to get the key code for Caps Lock key.\r\n\r\n    xmodmap -pke | grep Caps_Lock\r\n\r\nFor PC keyboards, the key code is usually `66`.\r\n\r\nThe following command maps Caps Lock key to Escape key.\r\n\r\n    xmodmap -e \"remove Lock = Caps_Lock\" -e \"keysym Caps_Lock = Escape\"\r\n\r\nHere is another command that also maps Caps Lock key to Escape key\r\nif the key code for Caps Lock is 66. This command makes use of `keycode`\r\ninstead of `keysym`.\r\n\r\n    xmodmap -e \"remove Lock = Caps_Lock\" -e \"keycode 66 = Escape\"\r\n\r\nThe following two commands display the current details.\r\n\r\n    xmodmap -pm -pke\r\n\r\nThe following command undoes the mapping.\r\n\r\n    xmodmap -e \"keycode 66 = Caps_Lock\" -e \"add Lock = Caps_Lock\"\r\n\r\nNote that `keycode` is used in the above command. If `keysym Escape =\r\nCaps_Lock` is used instead in the above command, then along with\r\nreverting the Caps Lock key to function like Caps Lock, it would also\r\nchange the behaviour of the Escape key to function like Caps Lock. Using\r\n`keycode 66 = Caps_Lock` ensures that only the behaviour of Caps Lock\r\nkey only is restored.\r\n\r\n\r\n### Linux: loadkeys\r\n\r\nOn Linux, the `loadKeys` command may be used to map one key to another\r\nin console. This section describes how to map Caps Lock key to Escape\r\nkey. All commands in this section must be run as root or superuser.\r\n\r\nBefore performing the key mapping, one needs to find the key code of\r\nCaps Lock key in the console. This is also going to be useful while\r\nreverting the key mapping.\r\n\r\nHere is a quick way to find the key code of Caps Lock key in console.\r\n\r\n    dumpkeys | grep -E \"CtrlL_Lock|Caps_Lock\"\r\n\r\nIn this section, we assume that the key code for Caps Lock key is `58`\r\nand it is mapped to `Caps_Lock` key, which is indeed true on most\r\nsystems. On Debian based systems, the key code `58` may be mapped to\r\n`CtrlL_Lock` to work around Debian bug [514464][] and kernel bug\r\n[7746][].\r\n\r\nThe following command maps Caps Lock key to Escape key.\r\n\r\n    (dumpkeys | grep keymaps; echo keycode 58 = Escape) | loadkeys\r\n\r\nThe following command undoes the mapping.\r\n\r\n    (dumpkeys | grep keymaps; echo keycode 58 = Caps_Lock) | loadkeys\r\n\r\n[514464]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=514464\r\n[7746]: https://bugzilla.kernel.org/show_bug.cgi?id=7746\r\n\r\n\r\n### Mac: System Preferences\r\n\r\nSince macOS Sierra Version 10.12.1, it is easy to map Caps Lock to Escape via\r\n*System Preferences*. Perform the following steps to do so.\r\n\r\n 1. Go to the Apple menu \u003e *System Preferences* \u003e *Keyboard*.\r\n 2. Click *Modifier Keys*.\r\n 3. Set *Caps Lock Key* to *Escape*.\r\n 4. Click *OK*.\r\n\r\n\r\n### Mac: Seil\r\n\r\nIn OS X, the mapping options available via *System Preferences* are very\r\nlimited. For example, it does not allow Caps Lock to be mapped to Escape.\r\nTherefore in general, it becomes necessary to install additional software to\r\nmap keys in OS X.\r\n\r\nA popular tool for mapping one key to another on OS X is [Seil][].  Here is an\r\narticle by my beautiful girlfriend and wife that describes how to map Caps Lock\r\nto Escape on OS X using Seil:\r\n\u003chttp://sunainapai.in/blog/map-caps-lock-to-escape-on-mac-os-x/\u003e.\r\n\r\n[Seil]: https://pqrs.org/osx/karabiner/seil.html\r\n\r\n\r\nResources\r\n---------\r\n\r\nHere is a list of useful links about this project.\r\n\r\n- [Download][Download URL]\r\n- [Source code](https://github.com/susam/uncap)\r\n- [Issue tracker](https://github.com/susam/uncap/issues)\r\n- [Changelog](https://github.com/susam/uncap/blob/master/CHANGES.md)\r\n\r\n\r\nLicense\r\n-------\r\n\r\nThis is free and open source software. You can use, copy, modify,\r\nmerge, publish, distribute, sublicense, and/or sell copies of it,\r\nunder the terms of the MIT License. See [LICENSE.md][L] for details.\r\n\r\nThis software is provided \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\r\nexpress or implied. See [LICENSE.md][L] for details.\r\n\r\n[L]: LICENSE.md\r\n\r\n\r\nSupport\r\n-------\r\n\r\nTo report bugs, suggest improvements, or ask questions, please visit\r\n\u003chttps://github.com/susam/uncap/issues\u003e.\r\n","funding_links":["https://www.buymeacoffee.com/susam"],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsusam%2Funcap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsusam%2Funcap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsusam%2Funcap/lists"}