Add ~ home dir shortcut

This commit is contained in:
Maxwell Jeffress 2025-01-16 07:00:43 +11:00
parent d6607306ed
commit cbb9576778

View File

@ -5,6 +5,8 @@
#include <filesystem>
#include <unistd.h>
#include <sys/wait.h>
#include <sys/types.h>
#include <pwd.h>
#include <cstring>
using namespace std;
@ -47,6 +49,12 @@ string findExecutable(string executable) {
return output;
}
string getHomeDir() {
struct passwd* pw = getpwuid(getuid());
if (pw && pw->pw_dir) return string(pw->pw_dir);
return "";
}
vector<string> tokenise(string input) {
vector<string> output;
string currentArg;
@ -54,6 +62,8 @@ vector<string> tokenise(string input) {
if (input[i] == ' ' && !currentArg.empty()) {
output.push_back(currentArg);
currentArg.clear();
} else if (input[i] == '~') {
currentArg += getHomeDir();
} else {
currentArg += input[i];
}