Applying the tab expansion patch from koga.
This commit is contained in:
		
							parent
							
								
									71b09ec4f1
								
							
						
					
					
						commit
						b56a0da283
					
				
							
								
								
									
										22
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								st.c
									
									
									
									
									
								
							| @ -663,9 +663,9 @@ bpress(XEvent *e) { | ||||
| 
 | ||||
| void | ||||
| selcopy(void) { | ||||
| 	char *str, *ptr; | ||||
| 	char *str, *ptr, *p; | ||||
| 	int x, y, bufsize, is_selected = 0, size; | ||||
| 	Glyph *gp; | ||||
| 	Glyph *gp, *last; | ||||
| 
 | ||||
| 	if(sel.bx == -1) { | ||||
| 		str = NULL; | ||||
| @ -675,15 +675,19 @@ selcopy(void) { | ||||
| 
 | ||||
| 		/* append every set & selected glyph to the selection */ | ||||
| 		for(y = 0; y < term.row; y++) { | ||||
| 			for(x = 0; x < term.col; x++) { | ||||
| 				gp = &term.line[y][x]; | ||||
| 			gp = &term.line[y][0]; | ||||
| 			last = gp + term.col; | ||||
| 
 | ||||
| 				if(!(is_selected = selected(x, y)) | ||||
| 						|| !(gp->state & GLYPH_SET)) { | ||||
| 			while(--last >= gp && !(last->state & GLYPH_SET)) | ||||
| 				/* nothing */; | ||||
| 
 | ||||
| 			for(x = 0; gp <= last; x++, ++gp) { | ||||
| 				if(!(is_selected = selected(x, y))) | ||||
| 					continue; | ||||
| 				} | ||||
| 				size = utf8size(gp->c); | ||||
| 				memcpy(ptr, gp->c, size); | ||||
| 
 | ||||
| 				p = (gp->state & GLYPH_SET) ? gp->c : " "; | ||||
| 				size = utf8size(p); | ||||
| 				memcpy(ptr, p, size); | ||||
| 				ptr += size; | ||||
| 			} | ||||
| 			/* \n at the end of every selected line except for the last one */ | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user