diff --git a/tagstudio/src/core/ts_core.py b/tagstudio/src/core/ts_core.py index cc5418bd..05acb62a 100644 --- a/tagstudio/src/core/ts_core.py +++ b/tagstudio/src/core/ts_core.py @@ -28,7 +28,8 @@ AUDIO_TYPES: list[str] = ['mp3', 'mp4', 'mpeg4', 'm4a', 'aac', 'wav', 'flac', 'alac', 'wma', 'ogg', 'aiff'] DOC_TYPES: list[str] = ['txt', 'rtf', 'md', 'doc', 'docx', 'pdf', 'tex', 'odt', 'pages'] -PLAINTEXT_TYPES: list[str] = ['txt', 'md', 'css', 'html', 'xml', 'json', 'js', 'ts'] +PLAINTEXT_TYPES: list[str] = ['txt', 'md', 'css', 'html', 'xml', 'json', 'js', + 'ts', 'ini', 'htm', 'csv', 'php', 'sh', 'bat'] SPREADSHEET_TYPES: list[str] = ['csv', 'xls', 'xlsx', 'numbers', 'ods'] PRESENTATION_TYPES: list[str] = ['ppt', 'pptx', 'key', 'odp'] ARCHIVE_TYPES: list[str] = ['zip', 'rar', 'tar', 'tar.gz', 'tgz', '7z'] diff --git a/tagstudio/src/qt/ts_qt.py b/tagstudio/src/qt/ts_qt.py index 48f6b920..bfb90ec5 100644 --- a/tagstudio/src/qt/ts_qt.py +++ b/tagstudio/src/qt/ts_qt.py @@ -3425,14 +3425,17 @@ class ThumbRenderer(QObject): image = Image.fromarray(frame) # Plain Text =================================================== - elif extension in ['txt', 'md']: - text: str = extension - with open(filepath, 'r', encoding='utf-8') as text_file: - text = text_file.read() - bg = Image.new('RGB',(256,256), color='#222222') - draw = ImageDraw.Draw(bg) - draw.text((16,16), text, file=(255,255,255)) - image = bg + elif extension in PLAINTEXT_TYPES: + try: + text: str = extension + with open(filepath, 'r', encoding='utf-8') as text_file: + text = text_file.read(256) + bg = Image.new('RGB',(256,256), color='#222222') + draw = ImageDraw.Draw(bg) + draw.text((16,16), text, file=(255,255,255)) + image = bg + except: + logging.info(f'[ThumbRenderer][ERROR]: Coulnd\'t render thumbnail for {filepath}') # No Rendered Thumbnail ======================================== else: image = ThumbRenderer.thumb_file_default_512.resize( @@ -3581,13 +3584,16 @@ class ThumbRenderer(QObject): image = Image.fromarray(frame) # Plain Text =================================================== elif extension in PLAINTEXT_TYPES: - text: str = extension - with open(filepath, 'r', encoding='utf-8') as text_file: - text = text_file.read() - bg = Image.new('RGB',(256,256), color='#222222') - draw = ImageDraw.Draw(bg) - draw.text((16,16), text, file=(255,255,255)) - image = bg + try: + text: str = extension + with open(filepath, 'r', encoding='utf-8') as text_file: + text = text_file.read(256) + bg = Image.new('RGB',(256,256), color='#222222') + draw = ImageDraw.Draw(bg) + draw.text((16,16), text, file=(255,255,255)) + image = bg + except: + logging.info(f'[ThumbRenderer][ERROR]: Coulnd\'t render thumbnail for {filepath}') # No Rendered Thumbnail ======================================== else: image = ThumbRenderer.thumb_file_default_512.resize(