mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	Use buffer version instead of changedtick for edits
This commit is contained in:
		 Jesse Bakker
					Jesse Bakker
				
			
				
					committed by
					
						 Jesse Bakker
						Jesse Bakker
					
				
			
			
				
	
			
			
			 Jesse Bakker
						Jesse Bakker
					
				
			
						parent
						
							ff1730373c
						
					
				
				
					commit
					1fe01b36de
				
			| @@ -613,6 +613,8 @@ do | ||||
|     if tbl_isempty(all_buffer_active_clients[bufnr] or {}) then | ||||
|       return | ||||
|     end | ||||
|  | ||||
|     util.buf_versions[bufnr] = changedtick | ||||
|     -- Lazy initialize these because clients may not even need them. | ||||
|     local incremental_changes = once(function(client) | ||||
|       local size_index = encoding_index[client.offset_encoding] | ||||
|   | ||||
| @@ -135,7 +135,7 @@ function M.apply_text_document_edit(text_document_edit) | ||||
|   local text_document = text_document_edit.textDocument | ||||
|   local bufnr = vim.uri_to_bufnr(text_document.uri) | ||||
|   -- TODO(ashkan) check this is correct. | ||||
|   if api.nvim_buf_get_changedtick(bufnr) > text_document.version then | ||||
|   if (M.buf_versions[bufnr] or 0) > text_document.version then | ||||
|     print("Buffer ", text_document.uri, " newer than edits.") | ||||
|     return | ||||
|   end | ||||
| @@ -868,5 +868,7 @@ function M.character_offset(buf, row, col) | ||||
|   return str_utfindex(line, col) | ||||
| end | ||||
|  | ||||
| M.buf_versions = {} | ||||
|  | ||||
| return M | ||||
| -- vim:sw=2 ts=2 et | ||||
|   | ||||
		Reference in New Issue
	
	Block a user