mirror of
				https://github.com/LDDestroier/CC/
				synced 2025-10-26 04:57:41 +00:00 
			
		
		
		
	Fixed horizontal scrolling, added tab character
This commit is contained in:
		
							
								
								
									
										28
									
								
								eldit.lua
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								eldit.lua
									
									
									
									
									
								
							| @@ -276,6 +276,7 @@ prompt = function(prebuffer) | |||||||
| 	end | 	end | ||||||
|  |  | ||||||
| 	local scrollToCursor = function() | 	local scrollToCursor = function() | ||||||
|  | 		lineNoLen = #tostring(#eldit.buffer) | ||||||
| 		local lowCur, highCur = eldit.cursors[1], eldit.cursors[1] | 		local lowCur, highCur = eldit.cursors[1], eldit.cursors[1] | ||||||
| 		local leftCur, rightCur = eldit.cursors[1], eldit.cursors[1] | 		local leftCur, rightCur = eldit.cursors[1], eldit.cursors[1] | ||||||
| 		for id,cur in pairs(eldit.cursors) do | 		for id,cur in pairs(eldit.cursors) do | ||||||
| @@ -297,8 +298,8 @@ prompt = function(prebuffer) | |||||||
| 		end | 		end | ||||||
| 		if leftCur.x - eldit.scrollX < 1 then | 		if leftCur.x - eldit.scrollX < 1 then | ||||||
| 			eldit.scrollX = rightCur.x - 1 | 			eldit.scrollX = rightCur.x - 1 | ||||||
| 		elseif rightCur.x - eldit.scrollX > eldit.size.width then | 		elseif rightCur.x - eldit.scrollX > eldit.size.width - lineNoLen then | ||||||
| 			eldit.scrollX = leftCur.x - eldit.size.width | 			eldit.scrollX = leftCur.x - (eldit.size.width - lineNoLen) | ||||||
| 		end | 		end | ||||||
| 	end | 	end | ||||||
|  |  | ||||||
| @@ -331,7 +332,7 @@ prompt = function(prebuffer) | |||||||
| 				), | 				), | ||||||
| 				math.max( | 				math.max( | ||||||
| 					0, | 					0, | ||||||
| 					getMaximumWidth() - eldit.size.width + 1 | 					getMaximumWidth() - eldit.size.width + 1 - lineNoLen | ||||||
| 				) | 				) | ||||||
| 			) | 			) | ||||||
| 		end | 		end | ||||||
| @@ -633,11 +634,19 @@ prompt = function(prebuffer) | |||||||
| 			if keysDown[keys.leftCtrl] or keysDown[keys.leftCtrl] then | 			if keysDown[keys.leftCtrl] or keysDown[keys.leftCtrl] then | ||||||
|  |  | ||||||
| 				if evt[2] == keys.backspace then | 				if evt[2] == keys.backspace then | ||||||
|  | 					if #eldit.selections > 0 then | ||||||
|  | 						deleteSelections() | ||||||
|  | 					else | ||||||
| 						deleteText("word", "backward") | 						deleteText("word", "backward") | ||||||
|  | 					end | ||||||
| 					doRender, isCursorBlink = true, false | 					doRender, isCursorBlink = true, false | ||||||
|  |  | ||||||
| 				elseif evt[2] == keys.delete then | 				elseif evt[2] == keys.delete then | ||||||
|  | 					if #eldit.selections > 0 then | ||||||
|  | 						deleteSelections() | ||||||
|  | 					else | ||||||
| 						deleteText("word", "forward") | 						deleteText("word", "forward") | ||||||
|  | 					end | ||||||
| 					doRender, isCursorBlink = true, false | 					doRender, isCursorBlink = true, false | ||||||
|  |  | ||||||
| 				elseif evt[2] == keys.q then | 				elseif evt[2] == keys.q then | ||||||
| @@ -678,7 +687,10 @@ prompt = function(prebuffer) | |||||||
|  |  | ||||||
| 			else | 			else | ||||||
|  |  | ||||||
| 				if evt[2] == keys.insert then | 				if evt[2] == keys.tab then | ||||||
|  | 					placeText("\9") | ||||||
|  | 					doRender = true | ||||||
|  | 				elseif evt[2] == keys.insert then | ||||||
| 					isInsert = not isInsert | 					isInsert = not isInsert | ||||||
| 					doRender, isCursorBlink = true, true | 					doRender, isCursorBlink = true, true | ||||||
|  |  | ||||||
| @@ -713,11 +725,19 @@ prompt = function(prebuffer) | |||||||
| 					doRender = true | 					doRender = true | ||||||
|  |  | ||||||
| 				elseif evt[2] == keys.backspace then | 				elseif evt[2] == keys.backspace then | ||||||
|  | 					if #eldit.selections > 0 then | ||||||
|  | 						deleteSelections() | ||||||
|  | 					else | ||||||
| 						deleteText("single", "backward") | 						deleteText("single", "backward") | ||||||
|  | 					end | ||||||
| 					doRender, isCursorBlink = true, false | 					doRender, isCursorBlink = true, false | ||||||
|  |  | ||||||
| 				elseif evt[2] == keys.delete then | 				elseif evt[2] == keys.delete then | ||||||
|  | 					if #eldit.selections > 0 then | ||||||
|  | 						deleteSelections() | ||||||
|  | 					else | ||||||
| 						deleteText("single", "forward") | 						deleteText("single", "forward") | ||||||
|  | 					end | ||||||
| 					doRender, isCursorBlink = true, false | 					doRender, isCursorBlink = true, false | ||||||
|  |  | ||||||
| 				elseif evt[2] == keys.left then | 				elseif evt[2] == keys.left then | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 LDDestroier
					LDDestroier