[Teton] Add a cd command.
This commit is contained in:
		
							parent
							
								
									ea8598068d
								
							
						
					
					
						commit
						29148c8756
					
				| 
						 | 
					@ -25,10 +25,22 @@ void Terminal::ExecuteCommand(const glcr::String& command) {
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  glcr::StringView cmd = tokens[0];
 | 
					  glcr::StringView cmd = tokens[0];
 | 
				
			||||||
  if (cmd == "help") {
 | 
					  if (cmd == "help") {
 | 
				
			||||||
    console_.WriteString("Available Commands: cwd\n");
 | 
					    console_.WriteString("Available Commands: cwd cd ls\n");
 | 
				
			||||||
  } else if (cmd == "cwd") {
 | 
					  } else if (cmd == "cwd") {
 | 
				
			||||||
    console_.WriteString(cwd_);
 | 
					    console_.WriteString(cwd_);
 | 
				
			||||||
    console_.WriteChar('\n');
 | 
					    console_.WriteChar('\n');
 | 
				
			||||||
 | 
					  } else if (cmd == "cd") {
 | 
				
			||||||
 | 
					    if (tokens.size() != 2) {
 | 
				
			||||||
 | 
					      console_.WriteString("Provide an absolute path.\n>");
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    auto files_or = mmth::ListDirectory(tokens[1]);
 | 
				
			||||||
 | 
					    if (files_or.ok()) {
 | 
				
			||||||
 | 
					      cwd_ = tokens[1];
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      console_.WriteString(glcr::StrFormat("Error: {}\n", files_or.error()));
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  } else if (cmd == "ls") {
 | 
					  } else if (cmd == "ls") {
 | 
				
			||||||
    glcr::StringView directory;
 | 
					    glcr::StringView directory;
 | 
				
			||||||
    if (tokens.size() > 1) {
 | 
					    if (tokens.size() > 1) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue