mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-26 21:25:59 +01:00
add env keyword to cfg
This commit is contained in:
parent
4abc608bc0
commit
d5093f7af0
2 changed files with 17 additions and 0 deletions
|
@ -1039,6 +1039,20 @@ void CConfigManager::handleBindWS(const std::string& command, const std::string&
|
||||||
boundWorkspaces.push_back({ARGS[0], ARGS[1]});
|
boundWorkspaces.push_back({ARGS[0], ARGS[1]});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CConfigManager::handleEnv(const std::string& command, const std::string& value) {
|
||||||
|
if (!isFirstLaunch)
|
||||||
|
return;
|
||||||
|
|
||||||
|
const auto ARGS = CVarList(value, 2);
|
||||||
|
|
||||||
|
if (ARGS[0].empty()) {
|
||||||
|
parseError = "env empty";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
setenv(ARGS[0].c_str(), ARGS[1].c_str(), 1);
|
||||||
|
}
|
||||||
|
|
||||||
std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::string& VALUE, bool dynamic) {
|
std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::string& VALUE, bool dynamic) {
|
||||||
if (dynamic) {
|
if (dynamic) {
|
||||||
parseError = "";
|
parseError = "";
|
||||||
|
@ -1083,6 +1097,8 @@ std::string CConfigManager::parseKeyword(const std::string& COMMAND, const std::
|
||||||
handleBlurLS(COMMAND, VALUE);
|
handleBlurLS(COMMAND, VALUE);
|
||||||
else if (COMMAND == "wsbind")
|
else if (COMMAND == "wsbind")
|
||||||
handleBindWS(COMMAND, VALUE);
|
handleBindWS(COMMAND, VALUE);
|
||||||
|
else if (COMMAND == "env")
|
||||||
|
handleEnv(COMMAND, VALUE);
|
||||||
else {
|
else {
|
||||||
configSetValueSafe(currentCategory + (currentCategory == "" ? "" : ":") + COMMAND, VALUE);
|
configSetValueSafe(currentCategory + (currentCategory == "" ? "" : ":") + COMMAND, VALUE);
|
||||||
needsLayoutRecalc = 2;
|
needsLayoutRecalc = 2;
|
||||||
|
|
|
@ -244,6 +244,7 @@ class CConfigManager {
|
||||||
void handleSubmap(const std::string&, const std::string&);
|
void handleSubmap(const std::string&, const std::string&);
|
||||||
void handleBlurLS(const std::string&, const std::string&);
|
void handleBlurLS(const std::string&, const std::string&);
|
||||||
void handleBindWS(const std::string&, const std::string&);
|
void handleBindWS(const std::string&, const std::string&);
|
||||||
|
void handleEnv(const std::string&, const std::string&);
|
||||||
};
|
};
|
||||||
|
|
||||||
inline std::unique_ptr<CConfigManager> g_pConfigManager;
|
inline std::unique_ptr<CConfigManager> g_pConfigManager;
|
||||||
|
|
Loading…
Reference in a new issue