Commit graph

323 commits

Author SHA1 Message Date
35935d88a4 chore: rewrote the codemp client using new traits 2023-04-17 14:56:25 +02:00
eafbc41bd1 chore: split op factory into processor and factory 2023-04-17 14:56:00 +02:00
75e397854b chore!: initial work on refactoring client+factory 2023-04-16 03:24:18 +02:00
44d0b3594c fix: more precise callbacks, catch errors in cbs 2023-04-13 03:23:57 +02:00
a8d0cb0666 fix: don't send noops 2023-04-13 03:23:44 +02:00
eeb72545c6 feat: async opseq queuing and transforming 2023-04-13 02:19:31 +02:00
56db49746d chore: commented out unused stuff for now 2023-04-13 00:54:37 +02:00
07b8e3a517 fix: friendlier conn addr and logging 2023-04-13 00:54:01 +02:00
ftbsc
f7cba63456 feat: allow setting remote debug via vim global 2023-04-12 18:12:50 +02:00
ftbsc
1a0c649845 feat: allow tls 2023-04-12 18:12:38 +02:00
ftbsc
7ae5329ce5 feat: added whole content diff to opseq 2023-04-12 16:58:28 +02:00
ftbsc
0f5e4c7f8d chore: small style tweaks 2023-04-12 16:58:00 +02:00
c3d7889e23 fix: removed some log prints 2023-04-12 05:45:37 +02:00
38bf411d54 fix: comparisons with null, hardcoded path 2023-04-12 05:23:20 +02:00
77eae35bc3 feat: allow to request remote tracing via socket 2023-04-12 05:00:37 +02:00
a872c39d7f fix: properly print logs in nvim 2023-04-12 05:00:18 +02:00
2fde9659db feat: parse CLI args in server too 2023-04-12 04:59:33 +02:00
a52f74d092 fix: move cursor in insert, error if not connected 2023-04-12 04:21:02 +02:00
8ca5128ca9 feat: very crude cursor implementation 2023-04-12 03:29:42 +02:00
e471a6dbc9 chore: return nil 2023-04-12 01:38:47 +02:00
55c4ddb93a feat: improved Lua API for plugin
added commands to connect/disconnect, jobid is kept internally, commands
to hook/unhook callbacks, refactored stuff a little
2023-04-12 01:38:38 +02:00
c1b7073e89 fix: better error handling 2023-04-12 00:33:14 +02:00
dd0acdad2f fix: map errors 2023-04-12 00:32:56 +02:00
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