mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 06:00:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			97 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # Tests for array indexing
 | |
| 
 | |
| %prep
 | |
| 
 | |
|   foo=(a b c d e f g)
 | |
|   mkdir array.tmp
 | |
|   touch array.tmp/{1..9}
 | |
| 
 | |
| %test
 | |
| 
 | |
|   echo .$foo[1].
 | |
| 0:The first element
 | |
| >.a.
 | |
| 
 | |
|   echo .$foo[1,4].
 | |
| 0:Normal multi-item indexing
 | |
| >.a b c d.
 | |
| 
 | |
|   echo .$foo[1,0].
 | |
| 0:This should be empty
 | |
| >..
 | |
| 
 | |
|   echo .$foo[4,1].
 | |
| 0:Another empty slice
 | |
| >..
 | |
| 
 | |
|   echo .$foo[1,-8].
 | |
| 0:An empty slice with a negative end
 | |
| >..
 | |
| 
 | |
|   echo .$foo[0].
 | |
| 0:Treat 0 like 1
 | |
| >.a.
 | |
| 
 | |
|   echo .$foo[0,0].
 | |
| 0:Treat 0,0 like 1,1.
 | |
| >.a.
 | |
| 
 | |
|   echo .$foo[0,1].
 | |
| 0:Another weird way to access the first element
 | |
| >.a.
 | |
| 
 | |
|   echo .$foo[3].
 | |
| 0:An inner element
 | |
| >.c.
 | |
| 
 | |
|   echo .$foo[2,2].
 | |
| 0:Another inner element
 | |
| >.b.
 | |
| 
 | |
|   echo .$foo[2,-4].
 | |
| 0:A slice with a negative end
 | |
| >.b c d.
 | |
| 
 | |
|   echo .$foo[-4,5].
 | |
| 0:A slice with a negative start
 | |
| >.d e.
 | |
| 
 | |
|   echo .$foo[-6,-2].
 | |
| 0:A slice with a negative start and end
 | |
| >.b c d e f.
 | |
| 
 | |
|   setopt ksh_arrays
 | |
|   echo .${foo[1,2]}.
 | |
|   unsetopt ksh_arrays
 | |
| 0:Ksh array indexing
 | |
| >.b c.
 | |
| 
 | |
|   setopt ksh_arrays
 | |
|   echo .${foo[0,1]}.
 | |
|   unsetopt ksh_arrays
 | |
| 0:Ksh array indexing (ii)
 | |
| >.a b.
 | |
| 
 | |
|   setopt ksh_arrays
 | |
|   echo .${foo[1,-1]}.
 | |
|   unsetopt ksh_arrays
 | |
| 0:Ksh array indexing (iii)
 | |
| >.b c d e f g.
 | |
| 
 | |
|   cd array.tmp
 | |
|   echo . ?([3,5]) .
 | |
|   cd ..
 | |
| 0:Glob array indexing
 | |
| >. 3 4 5 .
 | |
| 
 | |
|   cd array.tmp
 | |
|   echo . ?([2,-2]) .
 | |
|   cd ..
 | |
| 0:Glob array indexing (ii)
 | |
| >. 2 3 4 5 6 7 8 .
 | |
| 
 | |
|   cd array.tmp
 | |
|   echo . ?([-6,-4]) .
 | |
|   cd ..
 | |
| 0:Glob array indexing (iii)
 | |
| >. 4 5 6 .
 |