inmem-memo 1.2.1 → 1.3.1

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.
Files changed (3) hide show
  1. package/README.md +20 -9
  2. package/bin/cli.js +2 -2
  3. package/package.json +6 -1
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # ⚡ InMem Scratchpad
1
+ # ⚡ inmem-memo
2
2
 
3
3
  <div align="center">
4
4
 
5
- <img src="src/assets/icon.png" width="128" height="128" alt="InMem Scratchpad Icon" />
5
+ <img src="src/assets/icon.png" width="128" height="128" alt="inmem-memo Icon" />
6
6
 
7
7
  ### Ultra-Fast, Pure In-Memory Scratchpad Memo Application
8
8
  **Instantly launchable and installable via npm / npx across Windows, macOS, and Linux**
@@ -57,7 +57,7 @@ inmem-memo
57
57
 
58
58
  During development and daily work, we constantly need a temporary place to paste and inspect JSON payloads, perform quick regex string replacements, or jot down transient notes.
59
59
 
60
- InMem Scratchpad eliminates traditional note management overhead—such as title editing, file naming, folder hierarchies, and disk indexing—in favor of **instant startup speed, pure in-memory security, and ultra-low resource usage** powered by **Tauri v2 + Rust**.
60
+ inmem-memo eliminates traditional note management overhead—such as title editing, file naming, folder hierarchies, and disk indexing—in favor of **instant startup speed, pure in-memory security, and ultra-low resource usage** powered by **Tauri v2 + Rust**.
61
61
 
62
62
  ---
63
63
 
@@ -83,7 +83,18 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
83
83
  - "Strip HTML Tags" (`<[^>]+>` ➔ `""`)
84
84
  - "Collapse Multiple Spaces" (`[ \t]+` ➔ `" "`)
85
85
 
86
- ### 3. 🎨 Modern UI & 3 Themes (Midnight / OLED / Clean Light)
86
+ ### 3. 📝 Advanced Lightweight Editor (Line Numbers, Syntax Highlighting & Code Folding)
87
+ - **Line Numbers (ON / OFF Toggle)**:
88
+ - Clean line number gutter along the left edge with active line highlighting. Toggleable anytime in Settings.
89
+ - **Custom Syntax Highlighting (Zero Bloat)**:
90
+ - Native, ultra-light regex-based tokenization for **JSON, YAML, JavaScript, and Markdown** tailored to all 3 themes.
91
+ - Automatic language detection with a real-time status badge (`JSON`, `YAML`, `JS`, `Markdown`, `Plain`) in the status bar.
92
+ - **Inline Code & Block Folding**:
93
+ - Fold and expand JSON objects `{...}`, arrays `[...]`, and YAML indentation blocks directly in the editor with smooth fold indicators (▼ / ▶).
94
+ - **Tab Width & Indent Unit Configuration**:
95
+ - Choose between 2-space and 4-space indentation with full `Tab` key insertion support.
96
+
97
+ ### 4. 🎨 Modern UI & 3 Themes (Midnight / OLED / Clean Light)
87
98
  - **3 Curated Color Themes**:
88
99
  - **Midnight Dark**: Deep gradient dark mode for night work.
89
100
  - **OLED Pure Black**: High-contrast, power-saving true black mode.
@@ -91,18 +102,18 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
91
102
  - **Interactive Font Resizing**:
92
103
  - Adjust editor font size via numerical input or interactively via **`Ctrl + MouseWheel`** (Mac: `Cmd + Wheel`) with smooth silent zooming.
93
104
  - **Live Markdown Preview**: Toggle between raw text editing and sanitized Markdown rendering with one click (sanitized with DOMPurify).
94
- - **Status Bar & UI Version Display**: Real-time character, word, and line count metrics along with bottom-left version badge (`v1.2.0`).
105
+ - **Status Bar & UI Version Display**: Real-time character, word, line count metrics, detected language badge, and bottom-left version badge (`v1.3.1`).
95
106
 
96
- ### 4. 📑 2-Column Sidebar Settings Modal
107
+ ### 5. 📑 2-Column Sidebar Settings Modal
97
108
  - Redesigned from horizontal tabs into a **macOS / VS Code style 2-column sidebar navigation** layout.
98
- - Easily customize shortcuts, regex actions, appearance themes, font sizes, editor preferences, and process termination in dedicated sections.
109
+ - Easily customize shortcuts, regex actions, appearance themes, font sizes, editor preferences (Line Numbers, Folding, Highlighting), and process termination in dedicated sections.
99
110
 
100
- ### 5. ↩️ Full `Ctrl + Z` (Undo) & `Ctrl + Y` (Redo) History Stack
111
+ ### 6. ↩️ Full `Ctrl + Z` (Undo) & `Ctrl + Y` (Redo) History Stack
101
112
  - Even after executing batch transformations (JSON formatting or regex replacements), pressing **`Ctrl + Z` (Mac: `Cmd + Z`)** instantly restores the exact previous text state.
102
113
  - Redo anytime using **`Ctrl + Y`** or **`Ctrl + Shift + Z` (Mac: `Cmd + Shift + Z`)**.
103
114
  - Visual Undo/Redo icon buttons located directly in the header bar.
104
115
 
105
- ### 6. ⌨️ Global Shortcut & System Tray Residency
116
+ ### 7. ⌨️ Global Shortcut & System Tray Residency
106
117
  - **Background Tray Standby**: Clicking the window close button (`×`) minimizes the app directly to the system tray (Windows) or menu bar (macOS).
107
118
  - **Instant Hotkey Summon**:
108
119
  - Press the global hotkey from any active window (IDE, browser, terminal) to instantly toggle the scratchpad on top of your screen.
package/bin/cli.js CHANGED
@@ -125,7 +125,7 @@ async function main() {
125
125
  const localBinaryPath = path.join(CACHE_DIR, executable);
126
126
 
127
127
  if (!fs.existsSync(localBinaryPath)) {
128
- console.log(`⚡ Setting up InMem Scratchpad (v${VERSION})...`);
128
+ console.log(`⚡ Setting up inmem-memo (v${VERSION})...`);
129
129
  console.log(`📥 Downloading native package from GitHub Releases...`);
130
130
 
131
131
  await downloadFile(downloadUrl, localBinaryPath);
@@ -136,7 +136,7 @@ async function main() {
136
136
  console.log('✅ Setup complete!');
137
137
  }
138
138
 
139
- console.log('🚀 Launching InMem Scratchpad...');
139
+ console.log('🚀 Launching inmem-memo...');
140
140
 
141
141
  if (process.platform === 'win32') {
142
142
  const child = spawn(localBinaryPath, [], { detached: true, stdio: 'ignore' });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inmem-memo",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "Ultra-Fast In-Memory Scratchpad Memo Application for Windows, macOS, and Linux",
5
5
  "type": "module",
6
6
  "bin": {
@@ -41,6 +41,11 @@
41
41
  "tauri": "tauri"
42
42
  },
43
43
  "dependencies": {
44
+ "@codemirror/commands": "^6.10.4",
45
+ "@codemirror/language": "^6.12.4",
46
+ "@codemirror/state": "^6.7.1",
47
+ "@codemirror/view": "^6.43.8",
48
+ "@lezer/highlight": "^1.2.3",
44
49
  "@tauri-apps/api": "^2.0.0",
45
50
  "@tauri-apps/plugin-global-shortcut": "^2.0.0",
46
51
  "dompurify": "^3.4.13",