{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":739268212,"defaultBranch":"main","name":"ed","ownerLogin":"thimc","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-01-05T06:49:21.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/41735402?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1704463289.0","currentOid":""},"activityList":{"items":[{"before":"d64d7b34ebf8d075568f6fe0a5174f490618267f","after":"64faebc7a0d1b3cea5dc0343c6cfcfc2b3f3708b","ref":"refs/heads/main","pushedAt":"2024-07-11T22:25:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"refactor writing or appending to files\n\nand clean up some of the comments","shortMessageHtmlLink":"refactor writing or appending to files"}},{"before":"6afd8f755148eb84db05e5758bb5fc18730cb3d4","after":"d64d7b34ebf8d075568f6fe0a5174f490618267f","ref":"refs/heads/main","pushedAt":"2024-07-11T22:07:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"rework signal handling\n\nAccording to the OpenBSD manual the insertion, append or change\nmode can be cancelled by SIGINT. If SIGHUP is caught should write\nthe file if it's dirty.","shortMessageHtmlLink":"rework signal handling"}},{"before":"429e4cc2e1439a237df095e84c4454b8f6c7fcbb","after":"6afd8f755148eb84db05e5758bb5fc18730cb3d4","ref":"refs/heads/main","pushedAt":"2024-07-11T22:07:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"rework signal handling\n\nAccording to the OpenBSD manual the insertion, append or change\nmode can be cancelled by SIGINT. If SIGHUP is caught should write\nthe file if it's dirty.","shortMessageHtmlLink":"rework signal handling"}},{"before":"76a3d00f3a989a1e0ea0780e341f111e0b933529","after":"429e4cc2e1439a237df095e84c4454b8f6c7fcbb","ref":"refs/heads/main","pushedAt":"2024-07-11T22:05:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"rework signal handling\n\nAccording to the OpenBSD manual the insertion, append or change\nmode can be cancelled by SIGINT. If SIGHUP is caught should write\nthe file if it's dirty.","shortMessageHtmlLink":"rework signal handling"}},{"before":"0d411c577ff6d5537bcb3105fa50ff9100bc8668","after":"76a3d00f3a989a1e0ea0780e341f111e0b933529","ref":"refs/heads/main","pushedAt":"2024-07-11T18:31:51.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix signal handlers","shortMessageHtmlLink":"fix signal handlers"}},{"before":"082722633fb2b68bdfa282342308b402da0a725d","after":"0d411c577ff6d5537bcb3105fa50ff9100bc8668","ref":"refs/heads/main","pushedAt":"2024-07-11T16:47:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"add docs","shortMessageHtmlLink":"add docs"}},{"before":"f6e776f069f10b9b605af18373b7efb2e2aa39ea","after":"082722633fb2b68bdfa282342308b402da0a725d","ref":"refs/heads/main","pushedAt":"2024-07-11T16:37:54.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"add docs","shortMessageHtmlLink":"add docs"}},{"before":"da7ff2dcf28082c9908c2f67077f0fc2f0d3c000","after":"f6e776f069f10b9b605af18373b7efb2e2aa39ea","ref":"refs/heads/main","pushedAt":"2024-07-11T09:54:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"refactor, split the doCommand function","shortMessageHtmlLink":"refactor, split the doCommand function"}},{"before":"0796eacc70fe85738aebe14dda6f5f81c7d96736","after":"da7ff2dcf28082c9908c2f67077f0fc2f0d3c000","ref":"refs/heads/main","pushedAt":"2024-02-03T11:08:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"staticcheck'd","shortMessageHtmlLink":"staticcheck'd"}},{"before":"2c23404beb408284a188593dbe1416602ade5187","after":"0796eacc70fe85738aebe14dda6f5f81c7d96736","ref":"refs/heads/main","pushedAt":"2024-01-20T17:10:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix: return if dot is out of bounds","shortMessageHtmlLink":"fix: return if dot is out of bounds"}},{"before":"61b3bb58511cfd7a09e18d12c6f6f89fdefe8c6c","after":"2c23404beb408284a188593dbe1416602ade5187","ref":"refs/heads/main","pushedAt":"2024-01-20T17:05:33.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix: consume 'p' when checking for print flags","shortMessageHtmlLink":"fix: consume 'p' when checking for print flags"}},{"before":"b4302ffe3827e7c68512b64558b8a93b694bb880","after":"61b3bb58511cfd7a09e18d12c6f6f89fdefe8c6c","ref":"refs/heads/main","pushedAt":"2024-01-20T07:52:39.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"refactor: cleanup","shortMessageHtmlLink":"refactor: cleanup"}},{"before":"f55ca2e51a7486dca900150ebe18fbda5a86529c","after":"b4302ffe3827e7c68512b64558b8a93b694bb880","ref":"refs/heads/main","pushedAt":"2024-01-15T08:46:15.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"feat: make global commands undoable and prevent them from being nested","shortMessageHtmlLink":"feat: make global commands undoable and prevent them from being nested"}},{"before":"951347e6398834a0fa48d35f1115f0549aa338ec","after":"f55ca2e51a7486dca900150ebe18fbda5a86529c","ref":"refs/heads/main","pushedAt":"2024-01-14T16:14:15.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"tests: add undo tests","shortMessageHtmlLink":"tests: add undo tests"}},{"before":"6830033a926722a24517089759a580ecaec95926","after":"951347e6398834a0fa48d35f1115f0549aa338ec","ref":"refs/heads/main","pushedAt":"2024-01-14T14:38:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"feat: make the substitution (s) command undoable\n\nalso drop random debug messages I used and also introduce a flag\nfor knowing if the command is executed by global, nothing is currently\nsetting this so it defaults to false.","shortMessageHtmlLink":"feat: make the substitution (s) command undoable"}},{"before":"117b0fee74a2fe858e4fa45710b15ffa2220a27f","after":"6830033a926722a24517089759a580ecaec95926","ref":"refs/heads/main","pushedAt":"2024-01-14T13:22:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"feat: implement a basic undo system\n\nThe way it works is for every supported command it will record a\ntiny operation of that command in to an array. So deleting 5 lines\nwill record 5 sub tasks of inserting the line. When the command is\nconsidered \"done\" and has finished executing it'll push that array\nto an internal array. Executing the \"u\" command after to undo the\nprevious action will traverse the internal array and execute each\n\"sub task\" in a reverse order. The following commands are supported\nand therefore undo-able: a, c, d, i, j, m, r and t. I am missing\nundo actions for the global commands (g, v, G and V). Executing an\nundo command will not create a redo task.","shortMessageHtmlLink":"feat: implement a basic undo system"}},{"before":"dae7decb7ea6a608d002c0ac39775c9a9e90b0e0","after":"117b0fee74a2fe858e4fa45710b15ffa2220a27f","ref":"refs/heads/main","pushedAt":"2024-01-14T09:07:05.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix: proper interactive global mode","shortMessageHtmlLink":"fix: proper interactive global mode"}},{"before":"472f96bde829da9b689efd1d9cce3bde7bdc8fce","after":"dae7decb7ea6a608d002c0ac39775c9a9e90b0e0","ref":"refs/heads/main","pushedAt":"2024-01-13T14:57:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"docs: update","shortMessageHtmlLink":"docs: update"}},{"before":"34546991b116dcebb6613d6652e6660620244acc","after":"472f96bde829da9b689efd1d9cce3bde7bdc8fce","ref":"refs/heads/main","pushedAt":"2024-01-13T10:04:32.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"feat: let the user specify the flag (defaults to *)\n\nalso drop the helper functions ed.token() and ed.nextToken() because\nthey serve no real purpose.","shortMessageHtmlLink":"feat: let the user specify the flag (defaults to *)"}},{"before":"27c931fe5c5b00f1a681cff93bea314472e0ec05","after":"34546991b116dcebb6613d6652e6660620244acc","ref":"refs/heads/main","pushedAt":"2024-01-12T14:05:02.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix: when checking the change, skip some of the commands that do not need it\n\ncommands such as write, edit and quit don't rely on the start and end position\nbeing valid so there is no point of checking that the range is valid.\n\nfix: don't print the file size when writing or reading if the suppress\ndiagnostics flag is enabled.\n\nwhile here, add docs to the missing functions","shortMessageHtmlLink":"fix: when checking the change, skip some of the commands that do not …"}},{"before":"a3a0be9d3a1daec5ce9ad28e5ee6b4d6d683bc10","after":"27c931fe5c5b00f1a681cff93bea314472e0ec05","ref":"refs/heads/main","pushedAt":"2024-01-11T12:49:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"test: cleanup after writing to a file","shortMessageHtmlLink":"test: cleanup after writing to a file"}},{"before":"96099fcfefef61872b58f82206132669856156c6","after":"a3a0be9d3a1daec5ce9ad28e5ee6b4d6d683bc10","ref":"refs/heads/main","pushedAt":"2024-01-11T12:48:36.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"tests: add tests for read and write commands","shortMessageHtmlLink":"tests: add tests for read and write commands"}},{"before":"fb91952a1910128485806634599d3146c385b93c","after":"96099fcfefef61872b58f82206132669856156c6","ref":"refs/heads/main","pushedAt":"2024-01-11T11:27:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"test: drop comment","shortMessageHtmlLink":"test: drop comment"}},{"before":"aff7bb85e6ec0b0ed65483f95a564837ad370843","after":"fb91952a1910128485806634599d3146c385b93c","ref":"refs/heads/main","pushedAt":"2024-01-11T11:27:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"test: drop comment","shortMessageHtmlLink":"test: drop comment"}},{"before":"91760af2d56306015ec2287f0829f512ebb476d7","after":"aff7bb85e6ec0b0ed65483f95a564837ad370843","ref":"refs/heads/main","pushedAt":"2024-01-11T11:27:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"test: add test for the file (f) command","shortMessageHtmlLink":"test: add test for the file (f) command"}},{"before":"9af83c9f3cbec37bc25a8ba8c7522e2d7f4baa89","after":"91760af2d56306015ec2287f0829f512ebb476d7","ref":"refs/heads/main","pushedAt":"2024-01-11T11:13:40.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"refactor: ReadFile will not print the file size if the -s flag is not set\n\n-s suppresses diagnostics and should be used by \"ed scripts\".","shortMessageHtmlLink":"refactor: ReadFile will not print the file size if the -s flag is not…"}},{"before":"ac111e79f6650278cb17efac8d953fa977c52198","after":"9af83c9f3cbec37bc25a8ba8c7522e2d7f4baa89","ref":"refs/heads/main","pushedAt":"2024-01-11T10:39:42.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"chore: drop debug messages","shortMessageHtmlLink":"chore: drop debug messages"}},{"before":"2f8400bf97f909b6b55560c3045986cc5b9420c7","after":"ac111e79f6650278cb17efac8d953fa977c52198","ref":"refs/heads/main","pushedAt":"2024-01-10T20:10:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"docs: one cannot simply comprehend how many tests an editor needs","shortMessageHtmlLink":"docs: one cannot simply comprehend how many tests an editor needs"}},{"before":"65637b8a21b555c114890902140190aa8e0a76a6","after":"2f8400bf97f909b6b55560c3045986cc5b9420c7","ref":"refs/heads/main","pushedAt":"2024-01-10T20:09:09.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"test: update tests and add stubs for the unimplemented commands\n\nI have disabled some of the tests because some rely on the dot as\na fallback if the command fails and I haven't added this functionality\nyet.","shortMessageHtmlLink":"test: update tests and add stubs for the unimplemented commands"}},{"before":"28fee0bd3f013a4198c78b1bac26a6f00efd4d61","after":"65637b8a21b555c114890902140190aa8e0a76a6","ref":"refs/heads/main","pushedAt":"2024-01-10T19:00:15.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"thimc","name":"Thim Cederlund","path":"/thimc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41735402?s=80&v=4"},"commit":{"message":"fix: append to the local variable, not the structs slice","shortMessageHtmlLink":"fix: append to the local variable, not the structs slice"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEfU4B5AA","startCursor":null,"endCursor":null}},"title":"Activity · thimc/ed"}