{"id":15391975,"url":"https://github.com/dhleong/vim-wildwildws","last_synced_at":"2025-04-15T23:27:17.205Z","repository":{"id":142683070,"uuid":"130923844","full_name":"dhleong/vim-wildwildws","owner":"dhleong","description":"A better way to wrangle websockets","archived":false,"fork":false,"pushed_at":"2019-06-24T17:10:30.000Z","size":14,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-07T13:37:15.786Z","etag":null,"topics":["vim","websocket-client","websockets"],"latest_commit_sha":null,"homepage":null,"language":"Vim script","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/dhleong.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":"2018-04-24T23:14:32.000Z","updated_at":"2024-11-28T01:06:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"44c2bec4-d286-49f4-ae1f-0f50240de3d2","html_url":"https://github.com/dhleong/vim-wildwildws","commit_stats":{"total_commits":14,"total_committers":1,"mean_commits":14.0,"dds":0.0,"last_synced_commit":"e693ab70566194ce23a813ffa80171966a8818f4"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhleong%2Fvim-wildwildws","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhleong%2Fvim-wildwildws/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhleong%2Fvim-wildwildws/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dhleong%2Fvim-wildwildws/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dhleong","download_url":"https://codeload.github.com/dhleong/vim-wildwildws/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240351295,"owners_count":19787807,"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":["vim","websocket-client","websockets"],"created_at":"2024-10-01T15:13:39.677Z","updated_at":"2025-02-28T19:30:32.685Z","avatar_url":"https://github.com/dhleong.png","language":"Vim script","funding_links":[],"categories":[],"sub_categories":[],"readme":"wildwildws\n==========\n\n*A better way to wrangle websockets*\n\n## What?\n\nwildwildws (pronounced \"Wild Wild Wess\") is a Vim plugin inspired by\n[vial-http][1] that lets you establish and maintain a Websocket connection\nfrom the comfort of a Vim buffer. wildwildws supports sending HTTP headers\nwith the initial request, and any paragraph in the buffer can be sent as text\nto the connection, with responses echo'd in a separate window.\n\n## How?\n\nFirst, install with your favorite method. You'll also need [wildwildws-d][2],\nwhich is available via npm. I like [vim-plug][3], which can do both:\n\n```vim\nPlug 'dhleong/vim-wildwildws', {'do': 'npm i -g wildwildws-d'}\n```\n\nOnce installed, you can either create a file that ends in `.wwws`, or pass an\nurl to the `:WWWS` command, which will do a tiny bit of setup for you:\n\n```vim\n:WWWS ws://demos.kaazing.com/echo\n```\n\nEither way, your `.wwws` file needs to contain a line that looks like this:\n\n```javascript\nURI: ws://demos.kaazing.com/echo\n```\n\nThis tells wildwildws where to connect. With this in your file, wildwildws by\ndefault will automatically connect for you when you save the file.\n\nOnce connected, simply press the enter key in normal mode to send the\nparagraph under the cursor to the connection. Easy!\n\nOutput from the server is printed in a separate buffer that is opened for you.\nIt's a normal buffer, so you can navigate to it and manipulate its text in all\nthe normal Vim ways.\n\nwildwildws will automatically dispose the output window when you close the\n`.wwws` buffer, and will also disconnect for you. If you need to disconnect\nsooner, a `:Disconnect` command is provided.\n\n### Headers\n\nIf you need to send headers along with your initial HTTP request, you can\njust put them on their own lines, much like the `URI:` directive. For example:\n\n```javascript\nURI: ws://localhost:3000/api/ws\nAuthorization: Token {\"username\":\"Bar\"}\nX-Format: compressed\n```\n\nwill send the `Authorization` and `X-Format` headers. Also easy!\n\n### Commands\n\n`:Send` will send all the arguments as-is to the server as text.\n\n`:Disconnect`\n`:Connect` both do what you'd expect.\n\n### Options\n\nSee [this file][4] for all the options with explanations. Help files to\ncome... eventually.\n\n### Functions\n\nIf you want to write your own mappings, `wwws#conn#Open()` and\n`wwws#conn#Close()` open and close the connection for the current `.wwws`\nbuffer, respectively. `wwws#conn#Send()` accepts a single string and sends it\ndirectly.\n\n[1]: https://github.com/baverman/vial-http\n[2]: https://github.com/dhleong/wildwildws-d\n[3]: https://github.com/junegunn/vim-plug\n[4]: https://github.com/dhleong/vim-wildwildws/blob/master/plugin/wwws.vim\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhleong%2Fvim-wildwildws","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdhleong%2Fvim-wildwildws","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhleong%2Fvim-wildwildws/lists"}