Use std functions
This commit is contained in:
parent
3e36697b06
commit
b6141fd238
@ -33,16 +33,6 @@ std::string getSource(const std::string &url) {
|
|||||||
return source;
|
return source;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string absolutePath(const std::string &path) {
|
|
||||||
char *buff = static_cast<char*>(malloc(PATH_MAX));
|
|
||||||
char *ptr = realpath(path.c_str(), buff);
|
|
||||||
if( ptr == nullptr )
|
|
||||||
return "";
|
|
||||||
std::string abs_path(buff);
|
|
||||||
free(buff);
|
|
||||||
return abs_path;
|
|
||||||
}
|
|
||||||
|
|
||||||
void findSeason(std::set<std::experimental::filesystem::path> &files, int season, const std::string &path) {
|
void findSeason(std::set<std::experimental::filesystem::path> &files, int season, const std::string &path) {
|
||||||
namespace fs = std::experimental::filesystem;
|
namespace fs = std::experimental::filesystem;
|
||||||
std::smatch match;
|
std::smatch match;
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
#include <experimental/filesystem>
|
#include <experimental/filesystem>
|
||||||
|
|
||||||
std::string getSource(const std::string &url);
|
std::string getSource(const std::string &url);
|
||||||
std::string absolutePath(const std::string &path);
|
|
||||||
std::string getDefUrl( const std::string &show, const std::string &language );
|
std::string getDefUrl( const std::string &show, const std::string &language );
|
||||||
void findSeason(std::set<std::experimental::filesystem::path> &files, int season, const std::string &path);
|
void findSeason(std::set<std::experimental::filesystem::path> &files, int season, const std::string &path);
|
||||||
void iterateFS(std::set<int> &seasons, const std::string &path);
|
void iterateFS(std::set<int> &seasons, const std::string &path);
|
||||||
|
@ -17,6 +17,7 @@ bool trust{false};
|
|||||||
bool linux{false};
|
bool linux{false};
|
||||||
|
|
||||||
int main(int argc, char** argv) {
|
int main(int argc, char** argv) {
|
||||||
|
namespace fs = std::experimental::filesystem;
|
||||||
std::map<std::string, std::string> languages{
|
std::map<std::string, std::string> languages{
|
||||||
{"en", "English"}, {"sv", "Svenska"}, {"no", "Norsk"}, {"da", "Dansk"}, {"fi", "Suomeksi"},
|
{"en", "English"}, {"sv", "Svenska"}, {"no", "Norsk"}, {"da", "Dansk"}, {"fi", "Suomeksi"},
|
||||||
{"nl", "Nederlands"}, {"de", "Deutsch"}, {"it", "Italiano"}, {"es", "Español"}, {"fr", "Français"},
|
{"nl", "Nederlands"}, {"de", "Deutsch"}, {"it", "Italiano"}, {"es", "Español"}, {"fr", "Français"},
|
||||||
@ -43,10 +44,8 @@ int main(int argc, char** argv) {
|
|||||||
change_dir = false;
|
change_dir = false;
|
||||||
} else if ( !(strcmp("-sp", argv[x]) && strcmp("--show-path", argv[x])) ) {
|
} else if ( !(strcmp("-sp", argv[x]) && strcmp("--show-path", argv[x])) ) {
|
||||||
path = std::string(argv[x+1]);
|
path = std::string(argv[x+1]);
|
||||||
if ( path[0] != '/' && path[0] != '.' )
|
|
||||||
path = "./" + path;
|
|
||||||
x++;
|
x++;
|
||||||
if( absolutePath(path).empty() )
|
if( !fs::exists(fs::absolute(path)) )
|
||||||
change_dir = true;
|
change_dir = true;
|
||||||
} else if ( !(strcmp("-t", argv[x]) && strcmp("--trust", argv[x])) ) {
|
} else if ( !(strcmp("-t", argv[x]) && strcmp("--trust", argv[x])) ) {
|
||||||
trust = true;
|
trust = true;
|
||||||
@ -73,13 +72,13 @@ int main(int argc, char** argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
while( change_dir ) {
|
while( change_dir ) {
|
||||||
auto abs = absolutePath(path);
|
auto abs = fs::absolute(path);
|
||||||
if( abs.empty() ) {
|
if( !fs::exists(abs) ) {
|
||||||
std::cout << "This directory doesn't exist, please insert a correct path: " << std::endl;
|
std::cout << "This directory doesn't exist, please insert a correct path: " << std::endl;
|
||||||
std::getline(std::cin, path);
|
std::getline(std::cin, path);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
std::cout << "Is this the right directory? " << absolutePath(path) << std::endl;
|
std::cout << "Is this the right directory? " << fs::canonical(abs) << std::endl;
|
||||||
std::string response;
|
std::string response;
|
||||||
std::cin >> response;
|
std::cin >> response;
|
||||||
std::cin.ignore(1,'\n');
|
std::cin.ignore(1,'\n');
|
||||||
@ -89,12 +88,10 @@ int main(int argc, char** argv) {
|
|||||||
} else {
|
} else {
|
||||||
std::cout << "Insert correct path:" << std::endl;
|
std::cout << "Insert correct path:" << std::endl;
|
||||||
std::getline(std::cin, path);
|
std::getline(std::cin, path);
|
||||||
if ( path[0] != '/' && path[0] != '.' )
|
|
||||||
path = "./" + path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
path = absolutePath(path);
|
path = fs::absolute(path);
|
||||||
|
|
||||||
if( show.empty() ) {
|
if( show.empty() ) {
|
||||||
show = std::regex_replace(path, std::regex(".*/"), "");
|
show = std::regex_replace(path, std::regex(".*/"), "");
|
||||||
@ -180,6 +177,7 @@ void singleSeason( const std::string &path, const std::string &show, int season,
|
|||||||
name = std::regex_replace(name, std::regex("[\\?\"\\\\|\\*]"), "");
|
name = std::regex_replace(name, std::regex("[\\?\"\\\\|\\*]"), "");
|
||||||
name = std::regex_replace(name, std::regex("<"), "is less than");
|
name = std::regex_replace(name, std::regex("<"), "is less than");
|
||||||
name = std::regex_replace(name, std::regex(">"), "is more than");
|
name = std::regex_replace(name, std::regex(">"), "is more than");
|
||||||
|
name = std::regex_replace(name, std::regex(":"), " -");
|
||||||
}
|
}
|
||||||
renamed_files.insert(dir + name);
|
renamed_files.insert(dir + name);
|
||||||
renamed_episodes[num] = name;
|
renamed_episodes[num] = name;
|
||||||
|
Loading…
Reference in New Issue
Block a user