{"action":"created","issue":{"url":"https://api.github.com/repos/noctuid/lispyville/issues/51","repository_url":"https://api.github.com/repos/noctuid/lispyville","labels_url":"https://api.github.com/repos/noctuid/lispyville/issues/51/labels{/name}","comments_url":"https://api.github.com/repos/noctuid/lispyville/issues/51/comments","events_url":"https://api.github.com/repos/noctuid/lispyville/issues/51/events","html_url":"https://github.com/noctuid/lispyville/pull/51","id":380817535,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMwOTI3NDY2","number":51,"title":"Safe versions of evil-join and comment-or-uncomment","user":{"login":"yuhan0","id":22216124,"node_id":"MDQ6VXNlcjIyMjE2MTI0","avatar_url":"https://avatars0.githubusercontent.com/u/22216124?v=4","gravatar_id":"","url":"https://api.github.com/users/yuhan0","html_url":"https://github.com/yuhan0","followers_url":"https://api.github.com/users/yuhan0/followers","following_url":"https://api.github.com/users/yuhan0/following{/other_user}","gists_url":"https://api.github.com/users/yuhan0/gists{/gist_id}","starred_url":"https://api.github.com/users/yuhan0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yuhan0/subscriptions","organizations_url":"https://api.github.com/users/yuhan0/orgs","repos_url":"https://api.github.com/users/yuhan0/repos","events_url":"https://api.github.com/users/yuhan0/events{/privacy}","received_events_url":"https://api.github.com/users/yuhan0/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-11-14T17:55:04Z","updated_at":"2018-11-23T12:14:29Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/noctuid/lispyville/pulls/51","html_url":"https://github.com/noctuid/lispyville/pull/51","diff_url":"https://github.com/noctuid/lispyville/pull/51.diff","patch_url":"https://github.com/noctuid/lispyville/pull/51.patch"},"body":"Here are two evil operators I've written that make regular commenting and joining operations behave in a way that preserves balanced lisp structure, like the rest of lispyville. :)\r\nThese gifs should do a good job of explaining what they do:\r\n![join-operator](https://user-images.githubusercontent.com/22216124/48501862-31dc2d00-e879-11e8-8c89-867a85edef36.gif)\r\n![comment-or-uncomment-operator](https://user-images.githubusercontent.com/22216124/48501859-30126980-e879-11e8-972b-fa6b8d57db0d.gif)\r\n\r\n\r\nI realise there should be proper ERT tests written like for the rest of the commands, but still haven't figured out yet how to set them up..\r\n"},"comment":{"url":"https://api.github.com/repos/noctuid/lispyville/issues/comments/441226506","html_url":"https://github.com/noctuid/lispyville/pull/51#issuecomment-441226506","issue_url":"https://api.github.com/repos/noctuid/lispyville/issues/51","id":441226506,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MTIyNjUwNg==","user":{"login":"yuhan0","id":22216124,"node_id":"MDQ6VXNlcjIyMjE2MTI0","avatar_url":"https://avatars0.githubusercontent.com/u/22216124?v=4","gravatar_id":"","url":"https://api.github.com/users/yuhan0","html_url":"https://github.com/yuhan0","followers_url":"https://api.github.com/users/yuhan0/followers","following_url":"https://api.github.com/users/yuhan0/following{/other_user}","gists_url":"https://api.github.com/users/yuhan0/gists{/gist_id}","starred_url":"https://api.github.com/users/yuhan0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yuhan0/subscriptions","organizations_url":"https://api.github.com/users/yuhan0/orgs","repos_url":"https://api.github.com/users/yuhan0/repos","events_url":"https://api.github.com/users/yuhan0/events{/privacy}","received_events_url":"https://api.github.com/users/yuhan0/received_events","type":"User","site_admin":false},"created_at":"2018-11-23T12:14:29Z","updated_at":"2018-11-23T12:14:29Z","author_association":"NONE","body":"Also I took the liberty of writing a simple syntax transformation macro for the tests which allows for writing this \r\n\r\n```elisp\r\n(should (string= (lispyville-with \"((\\n  ~|(a b)))\"\r\n                                  \"D\")\r\n                 \"|(())\"))\r\n```\r\n\r\nin a more readable form with \"before\" and \"after\" strings vertically aligned:  \r\n\r\n```elisp\r\n(lispyville-should (\"D\")\r\n  \"((\\n  ~|(a b)))\"\r\n  \"|(())\")\r\n```\r\n"}}
{"actor":{"display_login":"yuhan0"}}