Issue 1625 - Option for Windows-compatible filenames

This commit is contained in:
Damian Gołda 2015-01-08 22:08:43 +01:00 committed by Jaroslav Kysela
parent f8de301910
commit 022e8d45a5
4 changed files with 14 additions and 7 deletions

View file

@ -176,10 +176,17 @@
<dd>If checked, insert the episode number before the data and time rather than after (assumes <i>Include date</i>, <i>Include time</i> and <i>Include episode</i> options are set). <dd>If checked, insert the episode number before the data and time rather than after (assumes <i>Include date</i>, <i>Include time</i> and <i>Include episode</i> options are set).
<dt>Remove all unsafe characters from filename <dt>Remove all unsafe characters from filename
<dd>If checked, all characters that could possibly cause problems for filenaming will be removed. <dd>If checked, all characters that could possibly cause problems for filenaming will be replaced with '_'.<br>
Applies to characters:<br>
* not supported by Windows characters: <i>/ : \ < > | * ? ' "</i><br>
* control characters (ASCII code below 32)<br>
* control and national characters (ASCII code above 122)<br>
<dt>Replace whitespace in title with '-' <dt>Replace whitespace in title with '-'
<dd>If checked, all whitespace characters will be replaced with '-'. <dd>If checked, whitespace characters (spaces and tabs) will be replaced with '-'.
<dt>Use Windows-compatible filenames
<dd>If checked, special characters not supported by Windows like: <i>/ : \ < > | * ? ' "</i> will be replaced with '_'.
</dl> </dl>
Changes to any of these settings must be confirmed by pressing the 'Save configuration' button before taking effect. Changes to any of these settings must be confirmed by pressing the 'Save configuration' button before taking effect.

View file

@ -64,7 +64,7 @@ typedef struct dvr_config {
int dvr_subtitle_in_title; int dvr_subtitle_in_title;
int dvr_episode_before_date; int dvr_episode_before_date;
int dvr_episode_duplicate; int dvr_episode_duplicate;
int dvr_clean_samba_unsafe; int dvr_windows_compatible_filenames;
/* Series link support */ /* Series link support */
int dvr_sl_brand_lock; int dvr_sl_brand_lock;

View file

@ -729,9 +729,9 @@ const idclass_t dvr_config_class = {
}, },
{ {
.type = PT_BOOL, .type = PT_BOOL,
.id = "clean-samba-unsafe", .id = "windows-compatible-filenames",
.name = "Replace Samba Unsafe Characters with '_'", .name = "Use Windows-compatible filenames",
.off = offsetof(dvr_config_t, dvr_clean_samba_unsafe), .off = offsetof(dvr_config_t, dvr_windows_compatible_filenames),
.group = 5, .group = 5,
}, },
{} {}

View file

@ -164,7 +164,7 @@ cleanup_filename(char *s, dvr_config_t *cfg)
((s[i] < 32) || (s[i] > 122) || ((s[i] < 32) || (s[i] > 122) ||
(strchr("/:\\<>|*?'\"", s[i]) != NULL))) (strchr("/:\\<>|*?'\"", s[i]) != NULL)))
s[i] = '_'; s[i] = '_';
else if(cfg->dvr_clean_samba_unsafe && else if(cfg->dvr_windows_compatible_filenames &&
(strchr("/:\\<>|*?'\"", s[i]) != NULL)) (strchr("/:\\<>|*?'\"", s[i]) != NULL))
s[i] = '_'; s[i] = '_';
} }