Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #202 change EOV to 0xFE #204

Closed
wants to merge 2 commits into from
Closed

Fix #202 change EOV to 0xFE #204

wants to merge 2 commits into from

Conversation

Shougo
Copy link
Owner

@Shougo Shougo commented Aug 20, 2015

I created it for #202.
@k-takata @foxundermoon Please test it.

@k-takata
Copy link
Collaborator

Changing EOV value breaks binary compatibility. So, it might be a chance to change the data format.
IIRC, we cannot send EOV value itself. How about prepending data size before each data?

+------------+--------+------------+--------+-----+------------+--------+-----+
| datasize 1 | data 1 | datasize 2 | data 2 | ... | datasize N | data N | NUL | 
+------------+--------+------------+--------+-----+------------+--------+-----+

(Data size should be encoded so that it doesn't contain NUL bytes.)

@Shougo
Copy link
Owner Author

Shougo commented Aug 22, 2015

Changing EOV value breaks binary compatibility. So, it might be a chance to change the data format.
IIRC, we cannot send EOV value itself. How about prepending data size before each data?

OK. Can you implement it?

@k-takata
Copy link
Collaborator

Concept model of the new data encoder/decoder in Vim script:
https://gist.github.com/k-takata/37dd48139aff9dfdc4bd

@Shougo
Copy link
Owner Author

Shougo commented Aug 24, 2015

@k-takata Wow! It is great.

k-takata added a commit to k-takata/vimproc.vim that referenced this pull request Aug 25, 2015
Each value consists of DataSize, Data, and EOV. DataSize is a 32-bit
integer encoded into a 5-byte string.

This data format can contain all binary data except NUL byte.
Parsing might be faster than the old format.

Related: Shougo#202, Shougo#204
@k-takata k-takata mentioned this pull request Aug 25, 2015
k-takata added a commit to k-takata/vimproc.vim that referenced this pull request Aug 29, 2015
Each value consists of DataSize, Data, and EOV. DataSize is a 32-bit
integer encoded into a 5-byte string.

This data format can contain all binary data except NUL byte.
Parsing might be faster than the old format.

Related: Shougo#202, Shougo#204
@Shougo
Copy link
Owner Author

Shougo commented Sep 7, 2015

Closing by #206.

@Shougo Shougo closed this Sep 7, 2015
@Shougo Shougo deleted the eov branch September 7, 2015 14:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants