Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
173 commits
Select commit Hold shift + click to select a range
0c9cdd7
fix: preserve multiline edits and unsaved tab contents (#75, #107, #108)
jonaraphael Oct 17, 2026
b74f488
fix: preserve source formatting during paste and reorder (#83)
jonaraphael Oct 17, 2026
7ae53cd
Fix clipboard fidelity and native text shortcuts (#81, #95, #105)
jonaraphael Oct 17, 2026
9550664
Support save-event integration in clipboard test host
jonaraphael Oct 17, 2026
a164b23
Await clipboard write start in deferred cut regression
jonaraphael Oct 17, 2026
0c3ec94
fix: preserve editor lifecycle and text navigation handoffs
jonaraphael Oct 17, 2026
2dadc9c
Make multiline and manual column widths predictable (#87, #98, #101)
jonaraphael Oct 17, 2026
ec65f0f
fix: guide explicit source encoding and respect cancelled reopen (#76)
jonaraphael Oct 17, 2026
27f74a6
Run CI for stacked pull requests
jonaraphael Oct 17, 2026
a227f75
Merge branch 'codex/ci-stacked-prs' into codex/fix-edit-integrity
jonaraphael Oct 17, 2026
c2d454b
Merge branch 'codex/fix-edit-integrity' into codex/fix-clipboard-fide…
jonaraphael Oct 17, 2026
e8247c0
docs: explain privacy and omit cell values from edit logs (#82)
jonaraphael Oct 17, 2026
b3696cd
Merge branch 'codex/fix-clipboard-fidelity' into codex/fix-column-sizing
jonaraphael Oct 17, 2026
72a32f3
Merge branch 'codex/fix-edit-integrity' into codex/fix-editor-navigation
jonaraphael Oct 17, 2026
20049b3
Merge branch 'codex/fix-edit-integrity' into codex/fix-source-formatting
jonaraphael Oct 17, 2026
cf4737a
Merge branch 'codex/fix-edit-integrity' into codex/fix-encoding-guidance
jonaraphael Oct 17, 2026
e906bba
docs: scope document handling to editable views
jonaraphael Oct 17, 2026
63e40a5
Verify source preservation with clipboard and sizing
jonaraphael Oct 17, 2026
ac27670
Verify privacy logging with the editor fixes
jonaraphael Oct 17, 2026
b4e0e95
fix: handle encoding action rejection and disposed views
jonaraphael Oct 17, 2026
4d6ad39
Restore readability in high-contrast themes (#92)
jonaraphael Oct 17, 2026
7a91fc5
Switch theme colors without reloading active cell drafts
jonaraphael Oct 17, 2026
1a3d74d
Keep chrome colors coherent across live theme transitions
jonaraphael Oct 17, 2026
fd2029c
Add persistent frozen leading rows and columns (#79)
jonaraphael Oct 17, 2026
735cca9
Merge branch 'codex/ci-stacked-prs' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
c24ca3a
Add inherited defaults for hiding leading metadata rows (#99)
jonaraphael Oct 17, 2026
d657c59
feat: add bounded read-only preview for large CSV files (#80)
jonaraphael Oct 17, 2026
98bda23
fix: reject unsupported automatic preview separator detection
jonaraphael Oct 17, 2026
c09b18c
Add a safe table and text view switch (#84)
jonaraphael Oct 17, 2026
1c4bddd
Merge branch 'codex/fix-column-sizing' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
4b50cdc
Merge branch 'codex/fix-high-contrast' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
0728edf
Merge branch 'codex/fix-high-contrast' into codex/csv-current-integra…
jonaraphael Oct 17, 2026
897c6d8
Merge branch 'codex/feat-frozen-panes' into codex/feat-hidden-row-def…
jonaraphael Oct 17, 2026
576fdd1
Merge branch 'codex/fix-encoding-guidance' into codex/csv-current-int…
jonaraphael Oct 17, 2026
31ef5d2
Merge branch 'codex/feat-hidden-row-defaults' into codex/csv-current-…
jonaraphael Oct 17, 2026
04391c9
Merge branch 'codex/large-file-preview' into codex/csv-current-integr…
jonaraphael Oct 17, 2026
c19fb7b
Implement full-source column filtering with source row identities
jonaraphael Oct 17, 2026
4cdd149
Merge branch 'codex/feat-hidden-row-defaults' into codex/feat-column-…
jonaraphael Oct 17, 2026
9b87590
Merge branch 'codex/switch-table-text' into codex/csv-current-integra…
jonaraphael Oct 17, 2026
511bfc6
Clarify filtered operation scopes and preserve native control focus
jonaraphael Oct 17, 2026
acad064
Merge branch 'codex/fix-source-formatting' into codex/feat-column-fil…
jonaraphael Oct 17, 2026
7422abc
Support unsaved CSV and TSV document ownership
jonaraphael Oct 17, 2026
da47884
Preserve hidden source formatting during filtered mutations
jonaraphael Oct 17, 2026
d2ac357
Merge branch 'codex/docs-privacy' into codex/feat-column-filters
jonaraphael Oct 17, 2026
39124f9
Merge branch 'codex/fix-edit-integrity' into codex/edit-untitled-csv
jonaraphael Oct 17, 2026
800e6e0
Validate filter controls and retain source row numbering
jonaraphael Oct 17, 2026
68bac72
Merge branch 'codex/feat-column-filters' into codex/csv-current-integ…
jonaraphael Oct 17, 2026
e0ed224
Preserve untitled drafts through disable and native Save As
jonaraphael Oct 17, 2026
bbe4aae
Add readonly CSV table comparison (#67, #86)
jonaraphael Oct 17, 2026
6f4ca6c
Merge branch 'codex/csv-table-compare' into codex/csv-current-integra…
jonaraphael Oct 17, 2026
2ceb421
Keep focused comparison rows below sticky headers
jonaraphael Oct 17, 2026
d437021
Merge branch 'codex/csv-table-compare' into codex/csv-current-integra…
jonaraphael Oct 17, 2026
c5bb6fe
Preserve untitled drafts across language changes and expose Save As
jonaraphael Oct 17, 2026
f356e6e
Merge branch 'codex/edit-untitled-csv' into codex/csv-current-integra…
jonaraphael Oct 17, 2026
0e76938
Prepare 1.4.0 integration candidate
jonaraphael Oct 17, 2026
16531e5
Keep ordinary copied cell text unquoted
jonaraphael Oct 17, 2026
9b4cc25
Merge branch 'codex/fix-clipboard-fidelity' into codex/fix-column-sizing
jonaraphael Oct 17, 2026
7c5041b
Merge branch 'codex/fix-column-sizing' into codex/fix-high-contrast
jonaraphael Oct 17, 2026
1d10c71
Merge branch 'codex/fix-high-contrast' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
0109ed0
Merge branch 'codex/feat-frozen-panes' into codex/feat-hidden-row-def…
jonaraphael Oct 17, 2026
a520a88
Merge branch 'codex/feat-hidden-row-defaults' into codex/feat-column-…
jonaraphael Oct 17, 2026
f3e15c4
Merge branch 'codex/feat-column-filters' into codex/csv-current-integ…
jonaraphael Oct 17, 2026
7be04cd
Add first-row header toggle to cell context menu
jonaraphael Oct 17, 2026
2854f63
Add visual evidence for header context actions
jonaraphael Oct 17, 2026
a6e78f3
Merge branch 'codex/header-context-menu' into codex/csv-current-integ…
jonaraphael Oct 17, 2026
ddaebf4
Merge branch 'codex/header-context-menu' into codex/csv-current-integ…
jonaraphael Oct 17, 2026
60e49fe
Restrict header context action to the first row
jonaraphael Oct 17, 2026
bdc280b
Merge branch 'codex/header-context-menu' into codex/csv-current-integ…
jonaraphael Oct 17, 2026
b5c4c6c
Extend selections with Cmd/Ctrl+Shift+Arrow
jonaraphael Oct 17, 2026
9a8fb8e
Merge range selection fix into integration candidate
jonaraphael Oct 17, 2026
bf09710
Merge branch 'codex/fix-edit-integrity' into codex/switch-table-text
jonaraphael Oct 17, 2026
5cb6a6c
Replace table and text views while preserving unsaved edits
jonaraphael Oct 17, 2026
3a4b263
Commit untitled drafts before switching to text
jonaraphael Oct 17, 2026
5d69beb
Merge branch 'codex/switch-table-text' into codex/edit-untitled-csv
jonaraphael Oct 17, 2026
da26604
Preserve rebind recovery through draft commit waiters
jonaraphael Oct 17, 2026
3da0673
Preserve newer cell drafts during failed edit recovery
jonaraphael Oct 17, 2026
e01d316
Merge draft recovery safeguards into untitled switching
jonaraphael Oct 17, 2026
e612bda
Make native Save As cancellation smoke deterministic
jonaraphael Oct 17, 2026
9534315
Integrate table and text replacement with draft safeguards
jonaraphael Oct 17, 2026
b39a906
Use deterministic native cancellation verification
jonaraphael Oct 17, 2026
dd72638
Keep failed cell drafts recoverable when disabling table view
jonaraphael Oct 17, 2026
96383f8
Retain failed drafts while disabling CSV
jonaraphael Oct 17, 2026
dfd2fe2
Integrate failed cell draft disable protection
jonaraphael Oct 17, 2026
506b937
Validate visible text target in its editor group
jonaraphael Oct 17, 2026
f51d17b
Route untitled switches from the active editor group
jonaraphael Oct 17, 2026
5815275
Validate visible text targets in the switching group
jonaraphael Oct 17, 2026
6521a5b
Integrate safe split-group table and text switching
jonaraphael Oct 17, 2026
a19ec24
Find the untitled owner in the active editor group
jonaraphael Oct 17, 2026
0bf097f
Use the visible untitled owner when switching groups
jonaraphael Oct 17, 2026
cd05843
Fix narrow column resize boundaries and drag sizing
jonaraphael Oct 17, 2026
cde9648
Integrate precise resize handles and narrow-column editing
jonaraphael Oct 17, 2026
0120c2a
Handle partially covered frozen resize boundaries
jonaraphael Oct 17, 2026
6edca2f
Preserve resize boundaries around partially covered frozen columns
jonaraphael Oct 17, 2026
a98ea99
Merge branch 'codex/fix-column-sizing' into codex/fix-high-contrast
jonaraphael Oct 17, 2026
f69d774
Merge branch 'codex/fix-high-contrast' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
8e5475c
Add narrow-column resize verification screenshot
jonaraphael Oct 17, 2026
1b87e75
Merge branch 'codex/feat-frozen-panes' into codex/feat-hidden-row-def…
jonaraphael Oct 17, 2026
9a08db5
Merge branch 'codex/feat-hidden-row-defaults' into codex/feat-column-…
jonaraphael Oct 17, 2026
da9b67f
Include resize interaction verification screenshot
jonaraphael Oct 17, 2026
c48ddc0
Merge branch 'codex/fix-column-sizing' into codex/fix-high-contrast
jonaraphael Oct 17, 2026
cf65796
Merge branch 'codex/fix-high-contrast' into codex/feat-frozen-panes
jonaraphael Oct 17, 2026
c0bdd68
Merge branch 'codex/feat-frozen-panes' into codex/feat-hidden-row-def…
jonaraphael Oct 17, 2026
493f44b
Merge branch 'codex/feat-hidden-row-defaults' into codex/feat-column-…
jonaraphael Oct 17, 2026
0b42f94
Verify resize integration with keyboard selection regressions
jonaraphael Oct 17, 2026
befe630
Synchronize reviewed resize fixes across the feature stack
jonaraphael Oct 17, 2026
28cd79c
Keep context menus readable within the viewport
jonaraphael Oct 17, 2026
70529be
Merge viewport-aware context menus into review candidate
jonaraphael Oct 17, 2026
6ccbfbd
Dismiss context menus when CSV zoom changes
jonaraphael Oct 17, 2026
7a79dcf
Dismiss context menus when CSV zoom changes
jonaraphael Oct 17, 2026
8c9fbd0
Merge branch 'codex/header-context-menu' into codex/fix-range-selection
jonaraphael Oct 17, 2026
0a8c573
Show context menu placement near the editor edge
jonaraphael Oct 17, 2026
11cb938
Check completed menu placement across stacked actions
jonaraphael Oct 17, 2026
82a3d06
Validate complete context menus and include browser evidence
jonaraphael Oct 17, 2026
c064a81
Merge branch 'codex/header-context-menu' into codex/fix-range-selection
jonaraphael Oct 17, 2026
e569bbf
Document readable context menus in the 1.4.0 candidate
jonaraphael Oct 17, 2026
ad33b37
Fix frozen row top-edge paint seam
jonaraphael Oct 17, 2026
81ba047
Merge frozen-row top-edge coverage correction
jonaraphael Oct 17, 2026
e017682
Add verified frozen top-edge screenshot
jonaraphael Oct 17, 2026
9a2ec63
Include frozen-header top-edge browser verification
jonaraphael Oct 17, 2026
e3eb139
Document frozen header edge coverage in review candidate
jonaraphael Oct 17, 2026
61e59bf
Merge branch 'codex/feat-frozen-panes' into codex/feat-hidden-row-def…
jonaraphael Oct 17, 2026
c58e7a5
Merge branch 'codex/feat-hidden-row-defaults' into codex/feat-column-…
jonaraphael Oct 17, 2026
b673136
Hide the serial index from its context menu
jonaraphael Oct 17, 2026
f573ac8
Merge serial-index context menu action
jonaraphael Oct 17, 2026
bd1f62b
Show the serial index context action
jonaraphael Oct 17, 2026
9b29e79
Preserve drafts when changing serial-index visibility
jonaraphael Oct 17, 2026
6a662cb
Include serial-index context menu browser verification
jonaraphael Oct 17, 2026
d29d574
Merge commit 'bd1f62b5bb7ee11afb7611c569aea299036f804c' into codex/fi…
jonaraphael Oct 17, 2026
dba0659
Add datatype-aware column filter operators
jonaraphael Oct 17, 2026
6150481
Integrate datatype-aware column filtering
jonaraphael Oct 17, 2026
6186388
Include typed filter browser verification
jonaraphael Oct 17, 2026
81781fe
Include typed filter browser verification
jonaraphael Oct 17, 2026
a99936a
Keep held-arrow selections in the viewport
jonaraphael Oct 17, 2026
4f2d643
Integrate held-arrow viewport scrolling
jonaraphael Oct 17, 2026
82b12ea
Include held-arrow scrolling browser verification
jonaraphael Oct 17, 2026
a2b9670
Include held-arrow scrolling verification
jonaraphael Oct 17, 2026
bb3ea2d
Document held-arrow viewport correction
jonaraphael Oct 17, 2026
66c7d53
Preserve datatype palettes and limit accessibility styles to high con…
jonaraphael Oct 17, 2026
6164e0f
Integrate narrowed high-contrast support into frozen panes
jonaraphael Oct 17, 2026
f6d33cd
Integrate narrowed high-contrast support into hidden-row defaults
jonaraphael Oct 17, 2026
f5f8623
Integrate narrowed high-contrast support into column filters
jonaraphael Oct 17, 2026
8b2860e
Integrate palette-preserving high-contrast support into review candidate
jonaraphael Oct 17, 2026
7c641b9
Paint opaque divider seams on every frozen row
jonaraphael Oct 17, 2026
97e1e66
Integrate frozen row divider paint into hidden row defaults
jonaraphael Oct 17, 2026
2886fa7
Integrate frozen row divider paint into column filters
jonaraphael Oct 17, 2026
d800392
Integrate divider paint for every frozen row
jonaraphael Oct 17, 2026
4128584
Edit live AND filters in the table details row
jonaraphael Oct 17, 2026
09e9663
Preserve live filter drafts through safe view refreshes
jonaraphael Oct 17, 2026
2f43410
Integrate inline live AND filters into review candidate
jonaraphael Oct 17, 2026
68bb81f
Select cells immediately on mouse-down
jonaraphael Oct 17, 2026
5d301ba
Apply immediate mouse selection to the integration build
jonaraphael Oct 17, 2026
3687c06
Fix per-cell clipboard quotes and omit the append row
jonaraphael Oct 17, 2026
7135e82
Keep header context clipboard behavior aligned
jonaraphael Oct 17, 2026
dbe1175
Refine header clicks and preserve global search shortcuts
jonaraphael Oct 17, 2026
2e1f5bd
Refine clipboard, header clicks and native search shortcuts
jonaraphael Oct 17, 2026
96ba332
Route disabled CSV searches directly to native text
jonaraphael Oct 17, 2026
9c97e36
Preserve native search routing and draft-safe disable handoffs
jonaraphael Oct 17, 2026
e388548
Merge clipboard updates into header context actions
jonaraphael Oct 17, 2026
75829cd
Merge header context updates into selection fixes
jonaraphael Oct 17, 2026
d491c68
Keep explicit text views for native search results (#104)
jonaraphael Oct 17, 2026
ec450a7
Support reversible per-file Text editor routing
jonaraphael Oct 17, 2026
763fe0d
Wait for native tab replacement before restoring routing
jonaraphael Oct 17, 2026
4a73426
Merge editor routing into saved table switching
jonaraphael Oct 17, 2026
5abb7ad
Merge saved editor routing into untitled document support
jonaraphael Oct 17, 2026
eb65df0
Merge reviewed filter history with integrated draft guards
jonaraphael Oct 17, 2026
47cbb1b
Merge selection history while preserving filtered row identities
jonaraphael Oct 17, 2026
2abb82b
Merge editor histories with the unified filter and draft protocol
jonaraphael Oct 17, 2026
76a5842
Prepare version 1.4.2 marketplace packaging
jonaraphael Oct 17, 2026
9870563
Clarify CSV workflows and refresh marketplace screenshots
jonaraphael Oct 17, 2026
9d0c484
Merge reviewed release documentation and captures
jonaraphael Oct 17, 2026
c190fad
Preserve active document and fresh drafts during CSV mode changes
jonaraphael Oct 17, 2026
6be749f
Merge reviewed editor ownership and handoff fixes
jonaraphael Oct 17, 2026
3acbdc4
Document re-enable focus and queued draft preservation
jonaraphael Oct 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,15 @@ on:
push:
branches: [ main, work ]
pull_request:
branches: [ main ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version: 18
node-version: 20
- run: npm ci
- run: npm run lint
- run: npm test
10 changes: 10 additions & 0 deletions .vscodeignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,13 @@ vsc-extension-quickstart.md
**/*.map
**/*.ts
**/.vscode-test.*

dist/**
out/test/**
.github/**
.agents/**
.codex/**
.mcp.json
AGENTS.md
scripts/**
images/*-*.jpg
28 changes: 26 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,32 @@
# Changelog

All notable changes to the "CSV" extension will be documented in this file.
## [1.4.2] - 2026-10-17

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
This release combines the editing, navigation, and table tools developed since the public 1.3 release.

### Editing and file integrity

- Preserve multiline drafts through repeated line breaks, blur, saves, tab changes, and table/text switches. Failed edits remain available for retry or explicit discard.
- Preserve existing CSV quoting and line endings during cell edits, structural paste, and row/column moves. Copy and Cut quote each value only when necessary, retain real empty fields, and exclude the extra append row.
- Add saved-file table/text replacement with unsaved-edit preservation and explicit Save As support for untitled CSV/TSV tables that retain their native owner.
- Keep native Find in Files destinations in text after an explicit local-file Text choice, including restart and Off/On. Restore only owned routing preferences on return to Table and preserve intervening user choices.
- Preserve the active document through multi-file Off/On changes. Serialize native handoffs and request a fresh acknowledgment for cell or filter activity made while waiting.
- Improve encoding guidance without guessing or silently changing the source encoding.

### Table navigation and views

- Add contextual first-row header and serial-index actions, frozen leading rows/columns, remembered manual widths, and a configurable default for hidden leading metadata.
- Fix column resize hit testing at fractional borders and frozen seams, retain usable narrow-column centers, and make dragged widths follow the pointer. Automatic sizing accounts for multiline values.
- Show selection immediately on mouse-down. Support a second separate header click for header-only selection, anchored Ctrl/Cmd+Shift+Arrow ranges, and viewport following during held-arrow navigation.
- Keep modified native Find/Replace shortcuts outside the table overlay. Position context menus using available viewport space, with scrolling in small panes.
- Paint frozen-row divider seams without changing row geometry. Preserve the chosen datatype palette or theme foreground mode across light, dark, and high-contrast themes.

### Filtering, preview, and comparison

- Add inline live column filters with multiple AND conditions, including repeated conditions on one column; inferred number/date/boolean comparisons; Does Not Contain; and RE2 regular expressions. Preserve input focus, invalid drafts, source row identities, and the full source when saving.
- Add a bounded, paginated read-only preview for large saved UTF-8 files. The direct Explorer/command path avoids opening a full text document first; malformed or oversized records produce errors instead of truncation.
- Add explicit read-only table comparison with record alignment, changed-cell highlighting, synchronized panes, change navigation, and bounded display/alignment work. Native Git/PR custom-editor diff remains a separate limitation.
- Document privacy and data handling, including remote extension hosts, clipboard/link actions, diagnostic logs, and saved filter values.

## [1.2.1] - 2025-08-20
- Fixed: Scrolling freeze at 1000 rows when header was enabled by making chunking consistent across modes and using a safe JSON transport to the webview.
Expand Down
33 changes: 33 additions & 0 deletions PRIVACY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Privacy and data handling

CSV does not implement an upload service, analytics client, or extension-specific telemetry collection. Normal editable views parse, search, sort, and edit files through the VS Code document and the extension's bundled code. No account or external processing service is required by CSV.

## Where processing happens

Normal editable CSV views receive the file's decoded text from VS Code. The extension parses that text with the bundled Papa Parse library, sends table content to its VS Code webview, and applies edits through VS Code's document APIs. Saving in these views uses VS Code's normal file-saving behavior and the selected file encoding.

The read-only large-file preview supports host-local UTF-8 files and reads bounded blocks directly from the saved file. It does not write the saved file.

For a normal local workspace, these operations run on your computer. In Remote SSH, WSL, Dev Containers, or another remote workspace, the extension host and files can be on that remote environment. File contents travel through your existing VS Code connection to display and edit them in the webview. “No external processing service” does not mean that a remote workspace's data stays on your local computer.

The font picker uses the bundled `font-list` package to enumerate fonts available to the extension host through operating-system helpers. It does not use an online font service.

## Actions that share information outside the table

- **Clipboard:** Copying writes the selected contents to the system clipboard; pasting reads clipboard contents supplied by the editor. Other applications, clipboard managers, and operating-system clipboard synchronization may have access to that clipboard.
- **Links:** Ctrl/Cmd+click on a recognized link asks VS Code to open its URL using your configured browser or application. Supported schemes include HTTP, HTTPS, FTP, and email links. The destination receives the URL, including any information in its path or query, according to that application's behavior. CSV does not fetch a link merely to render its text. You can disable link interaction with `csv.clickableLinks`.
- **Support:** If you attach a file, screenshot, or log to a GitHub issue, you are sharing it with that issue's audience. CSV does not submit these materials automatically.

VS Code's Marketplace connections, updates, Settings Sync, remote services, other extensions, and the browser or application used for links have their own data-handling behavior. They are separate from CSV's runtime processing.

## Logs and stored state

The extension writes diagnostic messages to the extension host's console. Routine messages include file paths/URIs, row counts, and the row/column coordinates of an edit; routine edit messages omit the cell value. Errors can still contain document or operation details, and a failed external-link operation can log its URL. Treat extension host logs as potentially containing sensitive information, especially before sharing them for support. The log location and retention are controlled by VS Code and may be in a remote environment.

CSV's code does not send those logs or cell contents to a telemetry endpoint. This statement does not describe or override VS Code's own telemetry, logging, crash reporting, or another extension's behavior. Consult your editor's privacy policy and settings for those services.

CSV stores per-file view preferences in VS Code workspace state on the extension host, keyed by the file URI: header mode, serial-index visibility, separator overrides, hidden leading rows, manual column widths, frozen rows/columns, and column filters. Valid filter conditions are saved as you type in the filter details row and may contain sensitive CSV values; incomplete or invalid drafts are not saved. Clear all filters removes the saved conditions for that file. Its webview state remembers scroll/selection positions, column widths, row heights, and zoom. View preferences and saved state can themselves contain sensitive data and metadata; they are not intended as full-document backups. VS Code independently manages the document, undo history, unsaved-file backups, autosave, and any platform synchronization you enable.

## Scope of these statements

These statements describe this repository's extension and webview implementation. The main data paths are in [`src/CsvEditorProvider.ts`](src/CsvEditorProvider.ts), [`media/main.js`](media/main.js), [`src/commands.ts`](src/commands.ts), and [`src/extension.ts`](src/extension.ts); runtime dependencies are declared in [`package.json`](package.json). They are not a promise about every VS Code component, remote host, dependency version, or installed extension. Review the version you use and your environment's policies when deciding whether it fits your data requirements.
Loading
Loading