Timothy Jaeryang Baek
c40f26946f
feat: add Shiki syntax highlighting, video, and audio previews in FileNav
...
- Add Shiki-powered syntax highlighting for code files with dual
light/dark themes (github-light/github-dark), line numbers, and
source/preview toggle
- Add native <video> player for mp4, webm, mov, ogv, avi, mkv
- Add native <audio> player for mp3, wav, ogg, flac, m4a, aac, opus
- New utility: src/lib/utils/codeHighlight.ts with extension-to-lang
mapping using Shiki's bundled language registry
2026-03-04 16:04:47 -06:00
Timothy Jaeryang Baek
f962bae983
feat: improve XLSX preview + add code syntax highlighting
...
XLSX QoL:
- Custom table renderer (excelToTable.ts) with column letters,
row numbers, right-aligned numbers, empty cell handling
- Monospace font, sticky headers + row nums, cell cursor
- Sheet tabs moved to bottom bar (like PPTX navigation)
- Unified styles between FileNav and FileItemModal
Code highlighting:
- Shiki-based syntax highlighting for code files in FileNav
- Line numbers, dark/light theme support
- Source/Preview toggle for code files
2026-03-04 15:59:55 -06:00
Timothy Jaeryang Baek
890949abe6
feat: add DOCX/XLSX/PPTX file preview
...
- DOCX: mammoth converts to semantic HTML (prose preview)
- XLSX: xlsx library extended to FileNav with sheet tabs at bottom
- PPTX: custom canvas renderer produces PNG images per slide
with panzoom zoom/pan and slide navigation
Changes:
- New: src/lib/utils/pptxToHtml.ts (canvas-based PPTX renderer)
- FileNav.svelte: office format detection, blob download, conversion
- FilePreview.svelte: office rendering branches, sheet tabs, slide viewer
- FileItemModal.svelte: DOCX/PPTX preview tabs
- package.json: added mammoth dependency
2026-03-04 15:50:37 -06:00
Timothy Jaeryang Baek
10baa6e781
chore: format
2026-03-02 17:07:53 -06:00
Timothy Jaeryang Baek
b5c3395f79
refac
2026-03-02 16:41:32 -06:00
Timothy Jaeryang Baek
4f6cb771f1
enh: open terminal
2026-03-02 14:49:02 -06:00
Timothy Jaeryang Baek
933a3bbbd3
refac
2026-03-02 12:49:51 -06:00
Timothy Jaeryang Baek
3909b62ffc
enh: file nav html rendering
2026-03-02 12:45:50 -06:00
Timothy Jaeryang Baek
11487d66fc
refac
2026-03-02 12:09:49 -06:00
Timothy Jaeryang Baek
395098c6f1
refac
2026-03-02 12:07:55 -06:00
Timothy Jaeryang Baek
72951324df
refac
2026-03-02 12:05:19 -06:00
Timothy Jaeryang Baek
0c42cd2c01
enh: ot move
2026-03-02 12:03:23 -06:00
Timothy Jaeryang Baek
5645d5bccc
refac
2026-03-01 14:38:10 -06:00
Timothy Jaeryang Baek
201b93bfcc
refac
2026-03-01 14:18:57 -06:00
Timothy Jaeryang Baek
18865a9fef
refac
2026-03-01 12:30:03 -06:00
Timothy Jaeryang Baek
769ef856bc
chore: format
2026-03-01 03:05:47 -06:00
Timothy Jaeryang Baek
d2b38127d0
refac
2026-03-01 02:37:21 -06:00
Timothy Jaeryang Baek
3d535db304
refac
2026-03-01 02:29:37 -06:00
Timothy Jaeryang Baek
234306ff57
refac
2026-03-01 02:08:41 -06:00
Timothy Jaeryang Baek
f5bf2a2ed7
refac
2026-02-28 00:41:10 -06:00
Timothy Jaeryang Baek
f60d386b74
refac
2026-02-27 16:21:27 -06:00
Timothy Jaeryang Baek
179a4ad9ea
refac
2026-02-27 16:01:57 -06:00
Timothy Jaeryang Baek
4737e1f118
feat: open terminal integration
2026-02-27 13:08:59 -06:00
Timothy Jaeryang Baek
eca9b405eb
refac
2026-02-25 19:58:50 -06:00
Timothy Jaeryang Baek
c303388296
refac
2026-02-25 19:02:52 -06:00
Timothy Jaeryang Baek
819ea0d9be
refac
2026-02-25 18:30:53 -06:00
Timothy Jaeryang Baek
1f77691b01
refac
2026-02-25 18:16:20 -06:00
Timothy Jaeryang Baek
50e6a19957
refac
2026-02-25 18:06:09 -06:00
Timothy Jaeryang Baek
3271a5277c
refac
2026-02-25 16:56:32 -06:00
Timothy Jaeryang Baek
8b2160f2f7
refac
2026-02-25 16:13:18 -06:00
Timothy Jaeryang Baek
64ff15a536
refac
2026-02-25 15:52:12 -06:00
Timothy Jaeryang Baek
636ab99ad8
feat: experimental open terminal integration
2026-02-25 15:15:53 -06:00