PrasertKana Excel and Word Sidekick
Read-only viewer for Word (.docx, .doc) and Excel (.xlsx, .xls) files inside VS Code.
- Docx: rendered as clean, readable HTML (mammoth.js) with images and tables, matching your editor theme.
- Xlsx: virtualized grid that stays responsive on 100k+ row sheets, with sheet tabs, merged cells, Excel number formats, basic cell styling, column drag-resize, and Excel-style auto-fit (double-click a column header edge, or run PK: Auto-fit All Columns). Click a row or column header to highlight it (Shift+click for a range, Ctrl+click to toggle individual lines, Ctrl+Shift+click to add a range; Escape or a grid click clears). Turn on Focus Cell to tint the active cell's entire row and column while leaving the active cell's original background unchanged. Freeze panes saved in the workbook are honored. To define your own split, select a cell and click Freeze panes: selecting B3, for example, freezes rows 1–2 and column A. The setting is remembered separately for each sheet until the viewer closes.
Legacy Office 97–2003 formats are also supported:
- Xls: converted to the modern format in memory (SheetJS) and shown in the same grid — values, number formats, merged cells, and column widths are preserved; rich cell styling may be limited.
- Doc: text-only — paragraph text is extracted (word-extractor) and shown with a notice; formatting, images, and tables are not preserved.
Both viewers auto-reload when the file is saved from Excel/Word, keeping your place. With rows or columns selected, Ctrl+C copies them as TSV, and PK: Export Active Sheet as CSV saves the current sheet. Workbook parsing runs in a worker thread, so even huge files never freeze VS Code.
Files are never modified. Use Open With… → Text Editor to see the raw file instead.
Development
Install the locked dependencies and build the extension:
npm ci
npm run build
Open this folder in VS Code and press F5 to build and launch an Extension
Development Host. Use npm run watch during active development, npm test for
the Node test suite, and npm run test:integration for the VS Code integration
suite. Create an installable package with npm run package.
Source files are under src/; generated files under dist/ should not be
edited directly.