mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2024-05-11 05:55:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			40 lines
		
	
	
		
			814 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			814 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #compdef dnote
 | |
| 
 | |
| local -a _1st_arguments
 | |
| 
 | |
| _1st_arguments=(
 | |
|   'add:add a new note'
 | |
|   'view:list books, notes, or view a content'
 | |
|   'edit:edit a note or a book'
 | |
|   'remove:remove a note or a book'
 | |
|   'find:find notes by keywords'
 | |
|   'sync:sync data with the server'
 | |
|   'login:login to the dnote server'
 | |
|   'logout:logout from the dnote server'
 | |
|   'version:print the current version'
 | |
|   'help:get help about any command'
 | |
| )
 | |
| 
 | |
| get_booknames() {
 | |
|   local names=$(dnote view --name-only)
 | |
|   local -a ret
 | |
| 
 | |
|   while read -r line; do
 | |
|     ret+=("${line}")
 | |
|   done <<< "$names"
 | |
| 
 | |
|   echo "$ret"
 | |
| }
 | |
| 
 | |
| if (( CURRENT == 2 )); then
 | |
|   _describe -t commands "dnote subcommand" _1st_arguments
 | |
|   return
 | |
| elif (( CURRENT == 3 )); then
 | |
|   case "$words[2]" in
 | |
|     v|view|a|add)
 | |
|       _alternative \
 | |
|         "names:book names:($(get_booknames))"
 | |
|   esac
 | |
| fi
 | |
| 
 |