Provide a build time default-pager setting
Provide a DEFAULT_PAGER knob so packagers can set the fallback pager to something appropriate during the build. Examples: On (old) solaris systems, /usr/bin/less (typically the first less found) doesn't understand the default arguments (FXRS), which forces users to alter their environment (PATH, GIT_PAGER, LESS, etc) or have a local or global gitconfig before paging works as expected. On Debian systems, by policy packages must fall back to the 'pager' command, so that changing the target of the /usr/bin/pager symlink changes the default pager for all packages at once. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									8f4b576ad1
								
							
						
					
					
						commit
						a3d023d0a3
					
				
							
								
								
									
										11
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										11
									
								
								Makefile
								
								
								
								
							|  | @ -201,6 +201,10 @@ all:: | |||
| # | ||||
| # Define NO_REGEX if you have no or inferior regex support in your C library. | ||||
| # | ||||
| # Define DEFAULT_PAGER to a sensible pager command (defaults to "less") if | ||||
| # you want to use something different.  The value will be interpreted by the | ||||
| # shell at runtime when it is used. | ||||
| # | ||||
| # Define DEFAULT_EDITOR to a sensible editor command (defaults to "vi") if you | ||||
| # want to use something different.  The value will be interpreted by the shell | ||||
| # if necessary when it is used.  Examples: | ||||
|  | @ -1380,6 +1384,13 @@ DEFAULT_EDITOR_CQ_SQ = $(subst ','\'',$(DEFAULT_EDITOR_CQ)) | |||
| BASIC_CFLAGS += -DDEFAULT_EDITOR='$(DEFAULT_EDITOR_CQ_SQ)' | ||||
| endif | ||||
|  | ||||
| ifdef DEFAULT_PAGER | ||||
| DEFAULT_PAGER_CQ = "$(subst ",\",$(subst \,\\,$(DEFAULT_PAGER)))" | ||||
| DEFAULT_PAGER_CQ_SQ = $(subst ','\'',$(DEFAULT_PAGER_CQ)) | ||||
|  | ||||
| BASIC_CFLAGS += -DDEFAULT_PAGER='$(DEFAULT_PAGER_CQ_SQ)' | ||||
| endif | ||||
|  | ||||
| ALL_CFLAGS += $(BASIC_CFLAGS) | ||||
| ALL_LDFLAGS += $(BASIC_LDFLAGS) | ||||
|  | ||||
|  |  | |||
							
								
								
									
										6
									
								
								pager.c
								
								
								
								
							
							
						
						
									
										6
									
								
								pager.c
								
								
								
								
							|  | @ -2,6 +2,10 @@ | |||
| #include "run-command.h" | ||||
| #include "sigchain.h" | ||||
|  | ||||
| #ifndef DEFAULT_PAGER | ||||
| #define DEFAULT_PAGER "less" | ||||
| #endif | ||||
|  | ||||
| /* | ||||
|  * This is split up from the rest of git so that we can do | ||||
|  * something different on Windows. | ||||
|  | @ -60,7 +64,7 @@ const char *git_pager(void) | |||
| 	if (!pager) | ||||
| 		pager = getenv("PAGER"); | ||||
| 	if (!pager) | ||||
| 		pager = "less"; | ||||
| 		pager = DEFAULT_PAGER; | ||||
| 	else if (!*pager || !strcmp(pager, "cat")) | ||||
| 		pager = NULL; | ||||
|  | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Junio C Hamano
						Junio C Hamano