@fresh-editor/fresh-editor 0.1.63 → 0.1.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # Release Notes
2
2
 
3
+ ## 0.1.65
4
+
5
+ ### Features
6
+
7
+ * **Warning Indicators**: Non-intrusive warning notifications in the status bar. Click or use commands to view warnings, with domains for LSP and general warnings.
8
+
9
+ * **Format Buffer Command**: Explicit command to format the current buffer on demand.
10
+
11
+ * **Config Applied on Open**: `line_numbers` and `line_wrap` settings now properly apply when opening new buffers.
12
+
13
+ ### Bug Fixes
14
+
15
+ * **Settings Persistence**: Fixed settings not persisting after save and reopen (#474, #457).
16
+
17
+ * **SaveAs Overwrite Confirmation**: Added confirmation dialog when SaveAs would overwrite an existing file (#476).
18
+
19
+ * **Multi-Byte Character Input**: Fixed panic when editing multi-byte characters in text inputs and prompts (#466).
20
+
21
+ * **TextList Dialog**: Fixed add-new input not rendering in entry dialogs.
22
+
23
+ ---
24
+
25
+ ## 0.1.64
26
+
27
+ * To prevent accidental deletion of files, removed 'd' / delete key bindings from File Explorer, changed the underlying delete to show a prompt and to move files to trash instead of really deleting.
28
+
3
29
  ## 0.1.63
4
30
 
5
31
  ### Features
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fresh-editor/fresh-editor",
3
- "version": "0.1.63",
3
+ "version": "0.1.65",
4
4
  "description": "A modern terminal-based text editor with plugin support",
5
5
  "repository": {
6
6
  "type": "git",
@@ -4,6 +4,13 @@
4
4
  "description": "Main configuration structure",
5
5
  "type": "object",
6
6
  "properties": {
7
+ "version": {
8
+ "description": "Configuration version (for migration support)\nConfigs without this field are treated as version 0",
9
+ "type": "integer",
10
+ "format": "uint32",
11
+ "minimum": 0,
12
+ "default": 0
13
+ },
7
14
  "theme": {
8
15
  "description": "Color theme name",
9
16
  "$ref": "#/$defs/ThemeOptions",
@@ -98,6 +105,13 @@
98
105
  "menu": {
99
106
  "description": "Menu bar configuration",
100
107
  "$ref": "#/$defs/MenuConfig"
108
+ },
109
+ "warnings": {
110
+ "description": "Warning notification settings",
111
+ "$ref": "#/$defs/WarningsConfig",
112
+ "default": {
113
+ "show_status_indicator": true
114
+ }
101
115
  }
102
116
  },
103
117
  "$defs": {
@@ -128,7 +142,7 @@
128
142
  "default": true
129
143
  },
130
144
  "line_numbers": {
131
- "description": "Show line numbers in the gutter",
145
+ "description": "Show line numbers in the gutter (default for new buffers)",
132
146
  "type": "boolean",
133
147
  "default": true
134
148
  },
@@ -150,7 +164,7 @@
150
164
  "default": true
151
165
  },
152
166
  "line_wrap": {
153
- "description": "Wrap long lines to fit the window width",
167
+ "description": "Wrap long lines to fit the window width (default for new views)",
154
168
  "type": "boolean",
155
169
  "default": true
156
170
  },
@@ -456,8 +470,25 @@
456
470
  "minimum": 0,
457
471
  "default": null
458
472
  },
473
+ "formatter": {
474
+ "description": "The formatter for this language (used by format_buffer command)",
475
+ "anyOf": [
476
+ {
477
+ "$ref": "#/$defs/FormatterConfig"
478
+ },
479
+ {
480
+ "type": "null"
481
+ }
482
+ ],
483
+ "default": null
484
+ },
485
+ "format_on_save": {
486
+ "description": "Whether to automatically format on save (uses the formatter above)",
487
+ "type": "boolean",
488
+ "default": false
489
+ },
459
490
  "on_save": {
460
- "description": "Actions to run when a file of this language is saved\nActions are run in order; if any fails (non-zero exit), subsequent actions don't run",
491
+ "description": "Actions to run when a file of this language is saved (linters, etc.)\nActions are run in order; if any fails (non-zero exit), subsequent actions don't run\nNote: Use `formatter` + `format_on_save` for formatting, not on_save",
461
492
  "type": "array",
462
493
  "items": {
463
494
  "$ref": "#/$defs/OnSaveAction"
@@ -487,8 +518,42 @@
487
518
  }
488
519
  ]
489
520
  },
521
+ "FormatterConfig": {
522
+ "description": "Formatter configuration for a language",
523
+ "type": "object",
524
+ "properties": {
525
+ "command": {
526
+ "description": "The formatter command to run (e.g., \"rustfmt\", \"prettier\")",
527
+ "type": "string"
528
+ },
529
+ "args": {
530
+ "description": "Arguments to pass to the formatter\nUse \"$FILE\" to include the file path",
531
+ "type": "array",
532
+ "items": {
533
+ "type": "string"
534
+ },
535
+ "default": []
536
+ },
537
+ "stdin": {
538
+ "description": "Whether to pass buffer content via stdin (default: true)\nMost formatters read from stdin and write to stdout",
539
+ "type": "boolean",
540
+ "default": true
541
+ },
542
+ "timeout_ms": {
543
+ "description": "Timeout in milliseconds (default: 10000)",
544
+ "type": "integer",
545
+ "format": "uint64",
546
+ "minimum": 0,
547
+ "default": 10000
548
+ }
549
+ },
550
+ "required": [
551
+ "command"
552
+ ],
553
+ "x-display-field": "/command"
554
+ },
490
555
  "OnSaveAction": {
491
- "description": "Action to run when a file is saved",
556
+ "description": "Action to run when a file is saved (for linters, etc.)",
492
557
  "type": "object",
493
558
  "properties": {
494
559
  "command": {
@@ -516,11 +581,6 @@
516
581
  "type": "boolean",
517
582
  "default": false
518
583
  },
519
- "replace_buffer": {
520
- "description": "Whether to replace the buffer with the command's stdout\nUseful for formatters",
521
- "type": "boolean",
522
- "default": false
523
- },
524
584
  "timeout_ms": {
525
585
  "description": "Timeout in milliseconds (default: 10000)",
526
586
  "type": "integer",
@@ -528,11 +588,6 @@
528
588
  "minimum": 0,
529
589
  "default": 10000
530
590
  },
531
- "optional": {
532
- "description": "Whether this action is optional (won't error if command not found)\nUseful for default formatters that may not be installed\nWhen true, shows a status message instead of an error if command is missing",
533
- "type": "boolean",
534
- "default": false
535
- },
536
591
  "enabled": {
537
592
  "description": "Whether this action is enabled (default: true)\nSet to false to disable an action without removing it from config",
538
593
  "type": "boolean",
@@ -754,6 +809,17 @@
754
809
  ]
755
810
  }
756
811
  ]
812
+ },
813
+ "WarningsConfig": {
814
+ "description": "Warning notification configuration",
815
+ "type": "object",
816
+ "properties": {
817
+ "show_status_indicator": {
818
+ "description": "Show warning/error indicators in the status bar (default: true)\nWhen enabled, displays a colored indicator for LSP errors and other warnings",
819
+ "type": "boolean",
820
+ "default": true
821
+ }
822
+ }
757
823
  }
758
824
  }
759
825
  }