added trimSortingMeta for minui.elf
This commit is contained in:
parent
ae3e1e5eba
commit
116e994fbe
2 changed files with 22 additions and 3 deletions
|
|
@ -43,9 +43,12 @@ void getDisplayName(const char* in_name, char* out_name) {
|
|||
tmp = strrchr(work_name, '/');
|
||||
if (tmp) strcpy(out_name, tmp+1);
|
||||
|
||||
// remove extension
|
||||
tmp = strrchr(out_name, '.');
|
||||
if (tmp && strlen(tmp)<=4) tmp[0] = '\0'; // 3 letter extension plus dot
|
||||
// remove extension(s), eg. .p8.png
|
||||
while ((tmp = strrchr(out_name, '.'))!=NULL) {
|
||||
int len = strlen(tmp);
|
||||
if (len>2 && len<=4) tmp[0] = '\0'; // 3 letter extension plus dot
|
||||
else break;
|
||||
}
|
||||
|
||||
// remove trailing parens (round and square)
|
||||
strcpy(work_name, out_name);
|
||||
|
|
@ -99,6 +102,21 @@ void trimTrailingNewlines(char* line) {
|
|||
len -= 1;
|
||||
}
|
||||
}
|
||||
void trimSortingMeta(char** str) { // eg. `001) `
|
||||
// TODO: this code is suss
|
||||
char* safe = *str;
|
||||
while(isdigit(**str)) *str += 1; // ignore leading numbers
|
||||
|
||||
if (*str[0]==')') { // then match a closing parenthesis
|
||||
*str += 1;
|
||||
}
|
||||
else { // or bail, restoring the string to its original value
|
||||
*str = safe;
|
||||
return;
|
||||
}
|
||||
|
||||
while(isblank(**str)) *str += 1; // ignore leading space
|
||||
}
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ void getEmuName(const char* in_name, char* out_name);
|
|||
|
||||
void normalizeNewline(char* line);
|
||||
void trimTrailingNewlines(char* line);
|
||||
void trimSortingMeta(char** str);
|
||||
|
||||
int exists(char* path);
|
||||
void touch(char* path);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue