Commit graph

550 commits

Author SHA1 Message Date
3827ab066d fix: one factory per buffer, create on attach 2023-04-12 00:32:39 +02:00
1eec71f3b2 fix: callbacks local to buffer, local bufnr + path 2023-04-12 00:31:59 +02:00
8e2f41a1c8 chore: made OperationFactory async and mutexless 2023-04-11 22:35:37 +02:00
0a464296cd feat: added Join/Share commands 2023-04-11 22:35:27 +02:00
b891c0d2f0 feat: added sync rpc 2023-04-11 22:35:10 +02:00
228f6a54f0 fix: catch some edge cases 2023-04-11 17:12:22 +02:00
de153c798c fix: retain ending chars 2023-04-11 14:24:53 +02:00
ca4f68c5ec feat: added delete fn, handle CR and BS 2023-04-11 14:24:40 +02:00
532de6639f feat: pass back stderr 2023-04-11 14:02:45 +02:00
f1f65aafdb chore: cleanup nvim main 2023-04-11 14:01:55 +02:00
b12b6dc68f feat: added reference client in lib 2023-04-11 14:01:27 +02:00
2472164350 chore: removed cli client 2023-04-11 14:00:49 +02:00
4f43573aa0 feat: basic nvim RPC client 2023-04-11 06:20:40 +02:00
9bf12b8bc3 feat: add user to msgs, pass msgs directly 2023-04-10 20:24:11 +02:00
14e9a1e86e feat: added Operation Factory struct 2023-04-10 01:41:22 +02:00
ebbca24a99 chore: dramatically simplified everything
working on this was really hard, so i'm making simple things first.
removed almost everything except bare buffer changes, and not even done
in a smart way, but should be a working PoC? now trying to make a
working client to test it out and actually work on a real prototype
2023-04-07 03:10:45 +02:00
5ff2166fa2 chore: warnings be gone 2022-10-18 02:28:16 +02:00
9bbd30a5f8 feat: super barebones synched cursor across clients 2022-10-18 02:22:04 +02:00
60e53b4a94 feat: made them all UUIDs because I hate myself 2022-10-18 02:20:31 +02:00
f596df73c4 chore: moved stuff into a common library 2022-10-18 02:19:15 +02:00
e9500afd55 feat: did some plumbing for events and cursors channels 2022-09-24 01:14:12 +02:00
7f4696f164 feat: initial work on auth interceptors 2022-09-17 21:46:40 +02:00
711c7ce7c6 chore: mark unused variables to suppress warnings 2022-09-08 00:19:01 +02:00
57dc0b25e9 fix: removed useless mut 2022-09-08 00:18:48 +02:00
911ed4e212 chore: added events to modules, added some docs 2022-08-29 02:50:14 +02:00
1f32834572 fix: send buffer events 2022-08-29 02:49:24 +02:00
851781b041 feat: made statemanager more friendly in its usage
basically removed the need to manually compose messages and added
methods to handle it.
2022-08-29 02:48:09 +02:00
824cb62933 chore: moved responsabilites around again 2022-08-28 23:41:11 +02:00
6fd0ab4944 feat: reworked workspace and workspaceview
now there are handy methods that hide the underlying message passing
2022-08-28 23:40:15 +02:00
692c3f4977 fix: some tweaks to make rust-analyzer happy
stuff used to make sense but I changed some things below. Now I need to
redo my plumbing, but I don't want my language server going crazy.
2022-08-28 23:38:45 +02:00
5bb535385b feat: added events struct
there's also quite some commented out code. I first approached the
problem in a OOP way, but that's not the right way for rust. Keeping
that code just to remember my vision.
2022-08-28 23:36:46 +02:00
18d86020c0 fix: add getter to state workspaces, imports fix 2022-08-03 18:51:56 +02:00
e030b9a48f feat: added some getters to state obj, implemented /buffers 2022-08-03 15:09:15 +02:00
7a4e69377d fix: some temporary fixes to make it compile 2022-07-31 13:47:55 +02:00
f854b902a1 feat: split services in subdir and separate files
Having them all in main.rs was becoming unmanageable
2022-07-31 13:47:18 +02:00
8316439a3e feat: moved state managers under 'actor' dir
Since we're building (sort of) around the actor model, might
as well sort stuff that way.
2022-07-31 13:46:21 +02:00
2287793cd9 feat: added tracing, added buffer_worker 2022-07-30 03:02:38 +02:00
60e6f4640c feat: added buffer object, reworked objects with internal worker 2022-07-30 03:02:04 +02:00
97e9b1f737 feat: initial work on Workspace buffer edit proto
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-21 10:40:43 +02:00
89588d7a8c chore: imports 2022-07-16 03:46:16 +02:00
ede7a7758c feat: made nvim client a feature (for now, enabled by default) 2022-07-16 03:46:02 +02:00
2195cb28b8 feat: implemented basic create/sync client 2022-07-16 03:45:32 +02:00
420ca3e224 feat: implemented basic session flow on server
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-13 01:58:34 +02:00
7272879180 feat: state manager with message passing
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-13 01:58:01 +02:00
773a90b94f feat: reworked operation matching with enum
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-13 01:55:31 +02:00
934917ffa2 fix: remove print, answer with command
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-13 01:55:04 +02:00
3425c57177 fix: neovim rcp call and notify, added test buffer command 2022-07-11 02:08:37 +02:00
c213536c3b feat: implemented connection and state managers
Co-authored-by: f-tlm <f-tlm@users.noreply.github.com>
2022-07-10 23:47:14 +02:00
6e26282faf
build: finished following tonic tutorial 2022-07-10 20:44:43 +02:00
65300edf90
build: initial commit with tonic stubs 2022-07-10 19:01:56 +02:00