hledger-lsp 0.1.7 → 0.1.9

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/README.md CHANGED
@@ -1,8 +1,87 @@
1
1
  # hledger Language Server
2
2
 
3
+ <!--toc:start-->
4
+ - [hledger Language Server](#hledger-language-server)
5
+ - [Installation](#installation)
6
+ - [IDE Integration](#ide-integration)
7
+ - [VS Code](#vs-code)
8
+ - [Neovim](#neovim)
9
+ - [Other Editors](#other-editors)
10
+ - [Features](#features)
11
+ - [Code Completion](#code-completion)
12
+ - [Hover](#hover)
13
+ - [Validation](#validation)
14
+ - [Include Directive Support](#include-directive-support)
15
+ - [Navigation](#navigation)
16
+ - [Code Actions and Quick Fixes](#code-actions-and-quick-fixes)
17
+ - [Formatting](#formatting)
18
+ - [Semantic Highlighting](#semantic-highlighting)
19
+ - [Inlay Hints](#inlay-hints)
20
+ - [Code Lens](#code-lens)
21
+ - [Editor Integration](#editor-integration)
22
+ - [Configuration](#configuration)
23
+ - [General Settings](#general-settings)
24
+ - [Validation Settings](#validation-settings)
25
+ - [Severity Settings](#severity-settings)
26
+ - [Include Settings](#include-settings)
27
+ - [Workspace Settings](#workspace-settings)
28
+ - [Completion Settings](#completion-settings)
29
+ - [Formatting Settings](#formatting-settings)
30
+ - [Inlay Hints Settings](#inlay-hints-settings)
31
+ - [Code Lens Settings](#code-lens-settings)
32
+ - [Development](#development)
33
+ - [Prerequisites](#prerequisites)
34
+ - [Building from Source](#building-from-source)
35
+ - [Project Structure](#project-structure)
36
+ - [Development Commands](#development-commands)
37
+ - [Contributing](#contributing)
38
+ - [License](#license)
39
+ - [Links](#links)
40
+ <!--toc:end-->
41
+
3
42
  A Language Server Protocol (LSP) implementation for
4
43
  [hledger](https://hledger.org/), a plain text accounting tool.
5
44
 
45
+ ## Installation
46
+
47
+ ```bash
48
+ npm install -g hledger-lsp
49
+ ```
50
+
51
+ This provides the `hledger-lsp` command globally. After installation, the
52
+ language server can be used with any LSP-compatible editor.
53
+
54
+ ## IDE Integration
55
+
56
+ This language server can be used with any LSP-compatible editor. Currently available extensions:
57
+
58
+ ### VS Code
59
+
60
+ **Extension**: [hledger-lsp](https://marketplace.visualstudio.com/items?itemName=patrickt.hledger-lsp)
61
+ **GitHub**: [patrickt/hledger-lsp](https://github.com/patrickt/hledger-lsp)
62
+
63
+ Install from the VS Code Marketplace or Extensions view. The extension provides
64
+ all LSP features with zero configuration.
65
+
66
+ ### Neovim
67
+
68
+ **Plugin**: [ptimoney/hledger-nvim](https://github.com/ptimoney/hledger-nvim)
69
+
70
+ Provides automatic LSP configuration, filetype detection, and workspace visualization.
71
+
72
+ ### Other Editors
73
+
74
+ The server can be used with any LSP client. Example configuration:
75
+
76
+ ```json
77
+ {
78
+ "command": "hledger-lsp",
79
+ "args": ["--stdio"],
80
+ "filetypes": ["hledger", "journal"],
81
+ "rootPatterns": [".hledger-lsp.json", ".git"]
82
+ }
83
+ ```
84
+
6
85
  ## Features
7
86
 
8
87
  This language server provides comprehensive IDE support for hledger journal
@@ -71,7 +150,7 @@ and tags
71
150
  - **Find references** - Show all usages of accounts, payees, commodities, or
72
151
  tags across the document
73
152
 
74
- ### Code Actions & Quick Fixes
153
+ ### Code Actions and Quick Fixes
75
154
 
76
155
  - **Add declarations** - Automatically add account, payee, commodity, or tag
77
156
  declarations for undeclared items
@@ -145,7 +224,7 @@ multi-line comment blocks
145
224
  - **Selection range** - Smart text selection expansion: Word → Account → Posting
146
225
  → Transaction (requires editor keybinding setup, see configuration below)
147
226
 
148
- ### User Configuration
227
+ ## Configuration
149
228
 
150
229
  All validations and completion behaviors can be individually configured per
151
230
  workspace or document:
@@ -155,41 +234,6 @@ customize severity levels
155
234
  - **Completion filtering** - Control whether completions show only declared
156
235
  items or all items (declared + undeclared)
157
236
 
158
- ## Installation
159
-
160
- ### Prerequisites
161
-
162
- - Node.js >= 16.0.0
163
-
164
- ### Install from npm
165
-
166
- ```bash
167
- npm install -g hledger-lsp
168
- ```
169
-
170
- This provides the `hledger-lsp` command globally. After installation, the
171
- language server can be used with any LSP-compatible editor.
172
-
173
- ## Editor Configuration
174
-
175
- ### Neovim
176
-
177
- Use the dedicated plugin: [ptimoney/hledger-nvim](https://github.com/ptimoney/hledger-nvim)
178
-
179
- The plugin provides:
180
- - Automatic LSP configuration
181
- - Filetype detection for `.journal` and `.hledger` files
182
- - Workspace graph visualization (`:HledgerGraph`)
183
- - Easy configuration of all server settings
184
-
185
- See the plugin repository for installation and configuration instructions.
186
-
187
- ### VS Code
188
-
189
- The VS Code extension is published separately. Install it from the VS Code
190
- marketplace or see the `vscode-client/` directory in the repository for
191
- development instructions.
192
-
193
237
  ### General Settings
194
238
 
195
239
  - `maxNumberOfProblems` (number, default: 1000): Maximum number of diagnostic
@@ -202,20 +246,31 @@ problems to report per file
202
246
  Most validation settings default to `true` and can be individually disabled:
203
247
 
204
248
  - `validation.balance` (default: true): Verify transactions balance to zero per commodity
205
- - `validation.missingAmounts` (default: true): Ensure at most one posting per transaction omits an amount
206
- - `validation.undeclaredAccounts` (default: true): Warn about accounts used but not declared
207
- - `validation.undeclaredPayees` (default: **false**): Warn about payees used but not declared
208
- - `validation.undeclaredCommodities` (default: true): Warn about commodities used but not declared
209
- - `validation.undeclaredTags` (default: true): Warn about tags used but not declared
210
- - `validation.dateOrdering` (default: true): Detect transactions with dates out of chronological order
211
- - `validation.balanceAssertions` (default: true): Verify balance assertions match calculated balances
212
- - `validation.emptyTransactions` (default: true): Require at least 2 postings per transaction
213
- - `validation.invalidDates` (default: true): Check for invalid dates (e.g., February 30, month 13)
249
+ - `validation.missingAmounts` (default: true): Ensure at most one posting per
250
+ transaction omits an amount
251
+ - `validation.undeclaredAccounts` (default: true): Warn about accounts used but
252
+ not declared
253
+ - `validation.undeclaredPayees` (default: **false**): Warn about payees used but
254
+ not declared
255
+ - `validation.undeclaredCommodities` (default: true): Warn about commodities
256
+ used but not declared
257
+ - `validation.undeclaredTags` (default: **false**): Warn about tags used but not
258
+ declared
259
+ - `validation.dateOrdering` (default: true): Detect transactions with dates out
260
+ of chronological order
261
+ - `validation.balanceAssertions` (default: true): Verify balance assertions
262
+ match calculated balances
263
+ - `validation.emptyTransactions` (default: true): Require at least 2 postings
264
+ per transaction
265
+ - `validation.invalidDates` (default: true): Check for invalid dates (e.g.,
266
+ February 30, month 13)
214
267
  - `validation.futureDates` (default: true): Warn about future-dated transactions
215
- - `validation.emptyDescriptions` (default: true): Warn about transactions with no description
268
+ - `validation.emptyDescriptions` (default: true): Warn about transactions with
269
+ no description
216
270
  - `validation.includeFiles` (default: true): Detect missing include files
217
271
  - `validation.circularIncludes` (default: true): Detect circular include dependencies
218
- - `validation.markAllUndeclaredInstances` (default: **true**): Mark all instances of undeclared resources with diagnostics, not just the first occurrence
272
+ - `validation.markAllUndeclaredInstances` (default: true): Mark all
273
+ instances of undeclared resources with diagnostics, not just the first occurrence
219
274
 
220
275
  ### Severity Settings
221
276
 
@@ -236,15 +291,25 @@ infinite recursion
236
291
 
237
292
  ### Workspace Settings
238
293
 
239
- Enable workspace-aware parsing for features that need global context (running balances, completion, validation):
240
-
241
- - `workspace.enabled` (boolean, default: true): Enable workspace-aware parsing. When enabled, the server discovers all journal files in your workspace, builds an include graph, and identifies a single root file. This allows features to access workspace-wide state even when working with "leaf" files that don't include other files.
242
- - `workspace.eagerParsing` (boolean, default: true): Parse all discovered files eagerly on startup. If disabled, files are parsed on-demand.
243
- - `workspace.autoDetectRoot` (boolean, default: true): Automatically detect the root file using heuristics (prefers files with no parents that include many others, with names like "main", "all", or "index"). If disabled, only an explicitly configured root file is used (see Configuration File Support below).
294
+ Enable workspace-aware parsing for features that need global context (running
295
+ balances, completion, validation):
296
+
297
+ - `workspace.enabled` (boolean, default: true): Enable workspace-aware parsing.
298
+ When enabled, the server discovers all journal files in your workspace, builds
299
+ an include graph, and identifies a single root file. This allows features to
300
+ access workspace-wide state even when working with "leaf" files that don't
301
+ include other files.
302
+ - `workspace.eagerParsing` (boolean, default: true): Parse all discovered files
303
+ eagerly on startup. If disabled, files are parsed on-demand.
304
+ - `workspace.autoDetectRoot` (boolean, default: true): Automatically detect the
305
+ root file using heuristics (prefers files with no parents that include many
306
+ others, with names like "main", "all", or "index"). If disabled, only an
307
+ explicitly configured root file is used (see Configuration File Support below).
244
308
 
245
309
  **Configuration File Support:**
246
310
 
247
- You can create a `.hledger-lsp.json` file in your workspace to explicitly configure workspace behavior:
311
+ You can create a `.hledger-lsp.json` file in your workspace to explicitly
312
+ configure workspace behavior:
248
313
 
249
314
  ```json
250
315
  {
@@ -260,16 +325,26 @@ You can create a `.hledger-lsp.json` file in your workspace to explicitly config
260
325
  ```
261
326
 
262
327
  Settings:
328
+
263
329
  - `rootFile` (string): Explicit root file path (relative to config file location)
264
- - `include` (array of glob patterns): File discovery patterns (default: `["**/*.journal", "**/*.hledger"]`)
265
- - `exclude` (array of glob patterns): Files to exclude (default: `["**/node_modules/**", "**/.git/**", "**/.*"]`)
330
+ - `include` (array of glob patterns): File discovery patterns
331
+ (default: `["**/*.journal", "**/*.hledger"]`)
332
+ - `exclude` (array of glob patterns): Files to exclude
333
+ (default: `["**/node_modules/**", "**/.git/**", "**/.*"]`)
266
334
  - `workspace` (object): Same workspace settings as above
267
335
 
268
- **Important**: The `.hledger-lsp.json` file is ONLY for workspace structure configuration (which files to discover, which are roots, etc.). LSP feature settings like inlay hints, code lens, validation rules, and formatting preferences should be configured in your editor/IDE settings (VS Code `settings.json`, Neovim LSP config, etc.).
336
+ **Important**: The `.hledger-lsp.json` file is ONLY for workspace structure
337
+ configuration (which files to discover, which are roots, etc.).
338
+ LSP feature settings like inlay hints, code lens, validation rules,
339
+ and formatting preferences should be configured in your editor/IDE
340
+ settings (VS Code `settings.json`, Neovim LSP config, etc.).
269
341
 
270
- The configuration file will be automatically discovered by walking up the directory tree from your journal files. Settings from VS Code/editor configuration override settings from the config file.
342
+ The configuration file will be automatically discovered by walking up the
343
+ directory tree from your journal files. Settings from VS Code/editor
344
+ configuration override settings from the config file.
271
345
 
272
346
  **Performance Tips:**
347
+
273
348
  - For large workspaces (>100 files), use `exclude` patterns to skip unnecessary files
274
349
  - Disable `eagerParsing` if initialization is slow
275
350
  - Check LSP server logs for performance warnings and metrics
@@ -317,81 +392,75 @@ commodities (e.g., `-100.00 EUR`), which always show the sign before the number.
317
392
 
318
393
  ### Inlay Hints Settings
319
394
 
320
- Configure which inline hints to display (all disabled by default):
395
+ Configure which inline hints to display (running balances is disabled by default
396
+ as it can make the file busy):
321
397
 
322
- - `inlayHints.showInferredAmounts` (boolean, default: false): Show calculated
398
+ - `inlayHints.showInferredAmounts` (boolean, default: true): Show calculated
323
399
  amounts for postings that omit explicit amounts
324
400
  - `inlayHints.showRunningBalances` (boolean, default: false): Display running
325
401
  balance after each posting
326
- - `inlayHints.showCostConversions` (boolean, default: false): Show total cost in
402
+ - `inlayHints.showCostConversions` (boolean, default: true): Show total cost in
327
403
  target commodity for postings with @ or @@ notation
328
404
 
329
405
  ### Code Lens Settings
330
406
 
331
- Configure which code lenses to display (disabled by default):
332
-
333
- - `codeLens.showTransactionCounts` (boolean, default: false): Show transaction counts for each account on transaction headers
407
+ Configure which code lenses to display (disabled by default, largely a holding
408
+ for future features):
334
409
 
335
- **Note:** Running balances are now exclusively shown via inlay hints (`inlayHints.showRunningBalances`), which is a more natural place for position-sensitive information that appears inline with postings.
410
+ - `codeLens.showTransactionCounts` (boolean, default: false): Show transaction
411
+ counts for each account on transaction headers
336
412
 
337
413
  ## Development
338
414
 
339
- ### Building from Source
415
+ ### Prerequisites
340
416
 
341
- If you want to contribute or modify the language server:
417
+ - Node.js >= 16.0.0
418
+
419
+ ### Building from Source
342
420
 
343
421
  ```bash
344
422
  # Clone the repository
345
423
  git clone https://github.com/ptimoney/hledger-lsp.git
346
424
  cd hledger-lsp
347
425
 
348
- # Install dependencies (from repository root)
426
+ # Install dependencies
349
427
  npm install
350
428
 
351
429
  # Build the server
352
- npm run build:server
430
+ npm run build
353
431
 
354
432
  # Run the server directly
355
- node server/out/server.js --stdio
433
+ node out/server.js --stdio
356
434
  ```
357
435
 
358
436
  ### Project Structure
359
437
 
360
- hledger_lsp/
361
- ├── server/
362
- ├── src/
363
- ├── server.ts # Main LSP server implementation
364
- ├── types.ts # Type definitions for hledger structures
365
- ├── parser/ # Journal file parser
366
- ├── features/ # LSP feature implementations
367
- │ └── utils/ # Utility functions
368
- ├── out/ # Compiled JavaScript output
369
- │ └── package.json
370
- └── vscode-client/ # VS Code extension
438
+ ```
439
+ hledger-lsp/
440
+ ├── src/
441
+ │ ├── server.ts # Main LSP server implementation
442
+ │ ├── types.ts # Type definitions for hledger structures
443
+ │ ├── parser/ # Journal file parser
444
+ │ ├── features/ # LSP feature implementations
445
+ ├── server/ # Server infrastructure
446
+ └── utils/ # Utility functions
447
+ ├── tests/ # Test suite (515+ test cases)
448
+ ├── out/ # Compiled JavaScript output
449
+ └── package.json
450
+ ```
371
451
 
372
452
  ### Development Commands
373
453
 
374
- From the `server/` directory:
375
-
376
454
  ```bash
377
455
  # Build once
378
456
  npm run build
379
457
 
380
458
  # Watch mode (rebuild on changes)
381
459
  npm run watch
382
- ```
383
-
384
- ### Linting
385
460
 
386
- ```bash
461
+ # Lint code
387
462
  npm run lint
388
- ```
389
463
 
390
- ### Testing
391
-
392
- The project includes comprehensive test coverage using Jest:
393
-
394
- ```bash
395
464
  # Run all tests
396
465
  npm test
397
466
 
@@ -411,8 +480,6 @@ npx jest tests/parser/index.test.ts
411
480
  npx jest --testNamePattern="balance"
412
481
  ```
413
482
 
414
- Test files mirror the `src/` directory structure (515 test cases total)
415
-
416
483
  ## Contributing
417
484
 
418
485
  Contributions are welcome! Please feel free to submit a Pull Request.
@@ -421,8 +488,10 @@ Contributions are welcome! Please feel free to submit a Pull Request.
421
488
 
422
489
  MIT
423
490
 
424
- ## Resources
491
+ ## Links
425
492
 
426
- - [hledger Documentation](https://hledger.org/)
427
- - [LSP Specification](https://microsoft.github.io/language-server-protocol/)
428
- - [vscode-languageserver-node](https://github.com/microsoft/vscode-languageserver-node)
493
+ - **VS Code Extension**: [hledger-vscode](https://github.com/ptimoney/hledger-vscode)
494
+ - **Neovim Plugin**: [hledger-nvim](https://github.com/ptimoney/hledger-nvim)
495
+ - **Report Issues**: [GitHub Issues](https://github.com/ptimoney/hledger-lsp/issues)
496
+ - **hledger**: [Official Documentation](https://hledger.org/)
497
+ - **LSP Specification**: [Language Server Protocol](https://microsoft.github.io/language-server-protocol/)
@@ -1 +1 @@
1
- {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../src/features/hover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAc,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAe,MAAM,UAAU,CAAC;AAMvD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,qBAAa,aAAa;IACxB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,GAAG,IAAI;IA8FxI;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAuB1B;;OAEG;IACH,OAAO,CAAC,MAAM;IAId;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8C3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsD7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmDvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0D/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAwB1B;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
1
+ {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../src/features/hover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAc,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAe,MAAM,UAAU,CAAC;AAOvD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,qBAAa,aAAa;IACxB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,GAAG,IAAI;IA8FxI;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAuB1B;;OAEG;IACH,OAAO,CAAC,MAAM;IAId;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+C3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuD7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAoDvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0D/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAwB1B;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
@@ -10,6 +10,39 @@
10
10
  * - Transaction headers (totals per commodity)
11
11
  * - Dates (formatted date information)
12
12
  */
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
13
46
  Object.defineProperty(exports, "__esModule", { value: true });
14
47
  exports.hoverProvider = exports.HoverProvider = void 0;
15
48
  const vscode_languageserver_1 = require("vscode-languageserver");
@@ -17,6 +50,7 @@ const index_1 = require("../utils/index");
17
50
  const balanceCalculator_1 = require("../utils/balanceCalculator");
18
51
  const amountFormatter_1 = require("../utils/amountFormatter");
19
52
  const uri_1 = require("../utils/uri");
53
+ const path = __importStar(require("path"));
20
54
  class HoverProvider {
21
55
  /**
22
56
  * Provide hover information at the given document position
@@ -169,7 +203,8 @@ class HoverProvider {
169
203
  if (account.declared) {
170
204
  parts.push(`**Status:** Declared`);
171
205
  if (account.sourceUri) {
172
- const fileName = account.sourceUri.split('/').pop() || account.sourceUri;
206
+ const filePath = (0, uri_1.toFilePath)(account.sourceUri);
207
+ const fileName = path.basename(filePath);
173
208
  const lineNum = (account.line ?? 0) + 1;
174
209
  parts.push(`**Location:** ${fileName}:${lineNum}`);
175
210
  }
@@ -198,7 +233,8 @@ class HoverProvider {
198
233
  if (commodity.declared) {
199
234
  parts.push(`**Status:** Declared`);
200
235
  if (commodity.sourceUri) {
201
- const fileName = commodity.sourceUri.split('/').pop() || commodity.sourceUri;
236
+ const filePath = (0, uri_1.toFilePath)(commodity.sourceUri);
237
+ const fileName = path.basename(filePath);
202
238
  const lineNum = (commodity.line ?? 0) + 1;
203
239
  parts.push(`**Location:** ${fileName}:${lineNum}`);
204
240
  }
@@ -246,7 +282,8 @@ class HoverProvider {
246
282
  if (payee.declared) {
247
283
  parts.push(`**Status:** Declared`);
248
284
  if (payee.sourceUri) {
249
- const fileName = payee.sourceUri.split('/').pop() || payee.sourceUri;
285
+ const filePath = (0, uri_1.toFilePath)(payee.sourceUri);
286
+ const fileName = path.basename(filePath);
250
287
  const lineNum = (payee.line ?? 0) + 1;
251
288
  parts.push(`**Location:** ${fileName}:${lineNum}`);
252
289
  }
@@ -284,7 +321,8 @@ class HoverProvider {
284
321
  if (tag.declared) {
285
322
  parts.push(`**Status:** Declared`);
286
323
  if (tag.sourceUri) {
287
- const fileName = tag.sourceUri.split('/').pop() || tag.sourceUri;
324
+ const filePath = (0, uri_1.toFilePath)(tag.sourceUri);
325
+ const fileName = path.basename(filePath);
288
326
  const lineNum = (tag.line ?? 0) + 1;
289
327
  parts.push(`**Location:** ${fileName}:${lineNum}`);
290
328
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hover.js","sourceRoot":"","sources":["../../src/features/hover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hover.js","sourceRoot":"","sources":["../../src/features/hover.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"configFile.d.ts","sourceRoot":"","sources":["../../src/server/configFile.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV;;WAEG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB;;;WAGG;QACH,YAAY,CAAC,EAAE,OAAO,CAAC;QAEvB;;;WAGG;QACH,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAgBD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,MAAM,EAAE,gBAAgB,CAAC;IACzB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA2B1F;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CA8FnE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,gBAAgB,EAC5B,eAAe,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAC1C,QAAQ,CAAC,gBAAgB,CAAC,CAW5B"}
1
+ {"version":3,"file":"configFile.d.ts","sourceRoot":"","sources":["../../src/server/configFile.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV;;WAEG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB;;;WAGG;QACH,YAAY,CAAC,EAAE,OAAO,CAAC;QAEvB;;;WAGG;QACH,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAgBD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,MAAM,EAAE,gBAAgB,CAAC;IACzB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA4B1F;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CA8FnE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,gBAAgB,EAC5B,eAAe,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAC1C,QAAQ,CAAC,gBAAgB,CAAC,CAW5B"}
@@ -81,8 +81,9 @@ function discoverConfigFile(startUri, workspaceRoot) {
81
81
  break;
82
82
  }
83
83
  // Stop at filesystem root
84
+ // This check works on both Unix (/) and Windows (C:\)
84
85
  const parentDir = path.dirname(currentDir);
85
- if (parentDir === currentDir) {
86
+ if (parentDir === currentDir || currentDir === path.parse(currentDir).root) {
86
87
  break;
87
88
  }
88
89
  currentDir = parentDir;
@@ -1 +1 @@
1
- {"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../src/server/configFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configFile.js","sourceRoot":"","sources":["../../src/server/configFile.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ exports.defaultSettings = {
14
14
  undeclaredAccounts: true,
15
15
  undeclaredPayees: false,
16
16
  undeclaredCommodities: true,
17
- undeclaredTags: true,
17
+ undeclaredTags: false,
18
18
  dateOrdering: true,
19
19
  balanceAssertions: true,
20
20
  emptyTransactions: true,
@@ -52,9 +52,9 @@ exports.defaultSettings = {
52
52
  signPosition: 'after-symbol',
53
53
  },
54
54
  inlayHints: {
55
- showInferredAmounts: false,
55
+ showInferredAmounts: true,
56
56
  showRunningBalances: false,
57
- showCostConversions: false,
57
+ showCostConversions: true,
58
58
  },
59
59
  codeLens: {
60
60
  showTransactionCounts: false,
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/server/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/server/settings.ts"],"names":[],"mappings":"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"}
package/out/server.js CHANGED
File without changes
@@ -2,13 +2,15 @@ import { TextDocument } from 'vscode-languageserver-textdocument';
2
2
  /**
3
3
  * Convert a file:// URI to a filesystem path
4
4
  * Properly decodes URI-encoded characters (e.g., %20 → space)
5
+ * Handles both Unix (file:///home/...) and Windows (file:///C:/...) formats
5
6
  */
6
7
  export declare function toFilePath(uri: string): string;
7
8
  /**
8
9
  * Ensure a path is represented as a file:// URI
9
10
  * Properly encodes special characters (e.g., space → %20)
11
+ * Handles both Unix and Windows filesystem paths
10
12
  */
11
- export declare function toFileUri(path: string): string;
13
+ export declare function toFileUri(fsPath: string): string;
12
14
  /**
13
15
  * Default fileReader implementation used by parser/server
14
16
  */
@@ -17,7 +19,7 @@ export declare function defaultFileReader(uri: string): TextDocument | null;
17
19
  * Resolve include paths relative to a base URI.
18
20
  * Behavior:
19
21
  * - If includePath starts with 'file://': treat as absolute URI
20
- * - If includePath starts with '/': treat as absolute filesystem path
22
+ * - If includePath is an absolute path (Unix: /..., Windows: C:\...): treat as absolute filesystem path
21
23
  * - If includePath starts with '~': expand tilde to home directory
22
24
  * - Otherwise, treat as relative to the directory of baseUri
23
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../src/utils/uri.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgB9C;AA2BD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAWlE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAoC/E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAyClF"}
1
+ {"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../src/utils/uri.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmC9C;AA2BD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAsBhD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAWlE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAqC/E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAqElF"}
package/out/utils/uri.js CHANGED
@@ -49,13 +49,14 @@ const vscode_languageserver_textdocument_1 = require("vscode-languageserver-text
49
49
  /**
50
50
  * Convert a file:// URI to a filesystem path
51
51
  * Properly decodes URI-encoded characters (e.g., %20 → space)
52
+ * Handles both Unix (file:///home/...) and Windows (file:///C:/...) formats
52
53
  */
53
54
  function toFilePath(uri) {
54
55
  if (uri.startsWith('file://')) {
55
- const encodedPath = uri.substring(7);
56
+ let encodedPath = uri.substring(7);
56
57
  // Decode each path component separately to handle encoded characters
57
58
  const parts = encodedPath.split('/');
58
- const decoded = parts.map(part => {
59
+ const decodedParts = parts.map(part => {
59
60
  try {
60
61
  return decodeURIComponent(part);
61
62
  }
@@ -63,8 +64,24 @@ function toFilePath(uri) {
63
64
  // If decoding fails, return the part as-is
64
65
  return part;
65
66
  }
66
- }).join('/');
67
- return decoded;
67
+ });
68
+ // On Windows, check if this is a Windows path (has drive letter)
69
+ // If so, convert to backslashes. Otherwise, keep forward slashes (for Unix-style test paths)
70
+ if (process.platform === 'win32') {
71
+ // Check if second part (after leading empty string) is a drive letter
72
+ const hasDriveLetter = decodedParts.length > 1 && /^[A-Za-z]:$/.test(decodedParts[1]);
73
+ if (hasDriveLetter) {
74
+ // Windows path with drive letter: file:///C:/Users/... -> C:\Users\...
75
+ const decoded = decodedParts.join(path.sep);
76
+ return decoded.substring(1); // Remove leading separator
77
+ }
78
+ else {
79
+ // Unix-style path on Windows (e.g., from tests): keep forward slashes
80
+ return decodedParts.join('/');
81
+ }
82
+ }
83
+ // Unix: always use forward slashes
84
+ return decodedParts.join('/');
68
85
  }
69
86
  return uri;
70
87
  }
@@ -95,13 +112,26 @@ function encodePathComponent(component) {
95
112
  /**
96
113
  * Ensure a path is represented as a file:// URI
97
114
  * Properly encodes special characters (e.g., space → %20)
115
+ * Handles both Unix and Windows filesystem paths
98
116
  */
99
- function toFileUri(path) {
100
- if (path.startsWith('file://'))
101
- return path;
117
+ function toFileUri(fsPath) {
118
+ if (fsPath.startsWith('file://'))
119
+ return fsPath;
120
+ // Normalize path separators to forward slashes for URI
121
+ // This handles Windows paths that may use backslashes
122
+ const normalized = fsPath.split(path.sep).join('/');
102
123
  // Encode each path component separately to preserve slashes
103
- const parts = path.split('/');
124
+ const parts = normalized.split('/');
104
125
  const encoded = parts.map(part => encodePathComponent(part)).join('/');
126
+ // Ensure proper format:
127
+ // Windows: file:///C:/Users/... (3 slashes total)
128
+ // Unix: file:///home/... (3 slashes total)
129
+ // The encoded path should already have leading slash for Unix or drive letter for Windows
130
+ if (encoded.startsWith('/') || /^[A-Za-z]:/.test(encoded)) {
131
+ // Remove any leading slashes and add exactly 3
132
+ return `file:///${encoded.replace(/^\/+/, '')}`;
133
+ }
134
+ // Relative path - prepend with two slashes
105
135
  return `file://${encoded}`;
106
136
  }
107
137
  /**
@@ -124,7 +154,7 @@ function defaultFileReader(uri) {
124
154
  * Resolve include paths relative to a base URI.
125
155
  * Behavior:
126
156
  * - If includePath starts with 'file://': treat as absolute URI
127
- * - If includePath starts with '/': treat as absolute filesystem path
157
+ * - If includePath is an absolute path (Unix: /..., Windows: C:\...): treat as absolute filesystem path
128
158
  * - If includePath starts with '~': expand tilde to home directory
129
159
  * - Otherwise, treat as relative to the directory of baseUri
130
160
  */
@@ -153,9 +183,9 @@ function resolveIncludePath(includePath, baseUri) {
153
183
  const resolved = path.resolve(home, rest);
154
184
  return toFileUri(resolved);
155
185
  }
156
- // If includePath starts with '/', treat it as an absolute filesystem path
157
- // (matching hledger behaviour: leading slash means system-root absolute path)
158
- if (includePath.startsWith('/')) {
186
+ // Check if it's an absolute path (works for both Unix and Windows)
187
+ // Unix: /home/... Windows: C:\... or C:/...
188
+ if (path.isAbsolute(includePath)) {
159
189
  const resolved = path.resolve(includePath);
160
190
  return toFileUri(resolved);
161
191
  }
@@ -179,10 +209,37 @@ function resolveIncludePaths(includePath, baseUri) {
179
209
  // Determine cwd and pattern for fast-glob
180
210
  let cwd;
181
211
  let pattern = includePath;
182
- if (includePath.startsWith('/')) {
183
- // absolute pattern: remove leading slash and search from filesystem root
184
- cwd = '/';
185
- pattern = includePath.slice(1);
212
+ // Check for absolute paths (Unix: /..., Windows: C:\... or C:/...)
213
+ if (path.isAbsolute(includePath)) {
214
+ // For absolute paths with glob patterns, use the directory part as cwd
215
+ // and the basename as the pattern (fast-glob works better this way)
216
+ const normalizedPath = path.normalize(includePath);
217
+ const dir = path.dirname(normalizedPath);
218
+ const base = path.basename(normalizedPath);
219
+ // If the basename has glob characters, use it as pattern
220
+ // Otherwise, the whole path should be treated as a single file (already handled by non-glob case above)
221
+ if (/[*?\[\]{}]/.test(base)) {
222
+ cwd = dir;
223
+ pattern = base;
224
+ }
225
+ else {
226
+ // Full path with glob in directory parts - keep the full pattern
227
+ if (process.platform === 'win32') {
228
+ const driveMatch = includePath.match(/^([A-Za-z]:)/);
229
+ if (driveMatch) {
230
+ cwd = driveMatch[1] + path.sep;
231
+ pattern = includePath.slice(driveMatch[1].length).replace(/^[\\\/]+/, '');
232
+ }
233
+ else {
234
+ cwd = path.parse(process.cwd()).root;
235
+ pattern = includePath.replace(/^[\\\/]+/, '');
236
+ }
237
+ }
238
+ else {
239
+ cwd = '/';
240
+ pattern = includePath.replace(/^\/+/, '');
241
+ }
242
+ }
186
243
  }
187
244
  else if (includePath.startsWith('~')) {
188
245
  const home = os.homedir();
@@ -207,8 +264,11 @@ function resolveIncludePaths(includePath, baseUri) {
207
264
  // fast-glob options: only files, absolute paths, ignore dotfiles/directories
208
265
  const entries = fast_glob_1.default.sync(pattern, { cwd, onlyFiles: true, absolute: true, dot: false });
209
266
  // Exclude the including file itself if present
210
- const includingFile = toFilePath(baseUri);
211
- const filtered = entries.filter(p => p !== includingFile).map(p => toFileUri(p));
267
+ // Normalize paths for comparison (handle case sensitivity and separators on Windows)
268
+ const includingFile = path.normalize(toFilePath(baseUri));
269
+ const filtered = entries
270
+ .filter(p => path.normalize(p) !== includingFile)
271
+ .map(p => toFileUri(p));
212
272
  filtered.sort();
213
273
  return filtered;
214
274
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../src/utils/uri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../src/utils/uri.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hledger-lsp",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "description": "Language Server Protocol implementation for hledger plain text accounting",
5
5
  "main": "./out/server.js",
6
6
  "bin": {
@@ -1,38 +0,0 @@
1
- /**
2
- * Shared formatting utilities
3
- */
4
- import { Amount, ParsedDocument, Commodity, Format } from '../types';
5
- export interface FormattingOptions {
6
- /** Number of spaces for posting indentation (default: 4) */
7
- indentation?: number;
8
- /** Maximum width for account names (default: 42) */
9
- maxAccountWidth?: number;
10
- /** Maximum width for commodity symbols (default: 4) */
11
- maxCommodityWidth?: number;
12
- /** Maximum width for amount numbers (default: 12) */
13
- maxAmountWidth?: number;
14
- /** Minimum spaces between account and amount (default: 2) */
15
- minSpacing?: number;
16
- /** Target column for decimal alignment (default: 52) */
17
- decimalAlignColumn?: number;
18
- /** Target column for assertion decimal alignment (default: 70) */
19
- assertionDecimalAlignColumn?: number;
20
- }
21
- export interface AmountLayout {
22
- commodityBefore: string;
23
- isNegative: boolean;
24
- amountIntegerString: string;
25
- amountDecimalString: string;
26
- demicalMark: string;
27
- commodityAfter: string;
28
- spaceBetweenCommodityAndAmount: boolean;
29
- }
30
- export declare const DEFAULT_OPTIONS: Required<FormattingOptions>;
31
- /**
32
- * Find the commodity format from parsed document
33
- */
34
- export declare function findCommodity(commodityName: string, parsed: ParsedDocument): Commodity | undefined;
35
- export declare function formatIntegerAmount(amount: Amount, format: Format): string;
36
- export declare function formatDecimalAmount(amount: Amount, format: Format, targetPrecision?: number): string;
37
- export declare function layoutAmount(amount: Amount, parsed: ParsedDocument, options: Required<FormattingOptions>): AmountLayout;
38
- //# sourceMappingURL=formattingUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formattingUtils.d.ts","sourceRoot":"","sources":["../../src/features/formattingUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAErE,MAAM,WAAW,iBAAiB;IAC9B,4DAA4D;IAC5D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kEAAkE;IAClE,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,WAAW,YAAY;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,8BAA8B,EAAE,OAAO,CAAC;CAC3C;AAED,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,iBAAiB,CAQvD,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,SAAS,CAElG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAa1E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAYpG;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG,YAAY,CAsDvH"}
@@ -1,107 +0,0 @@
1
- "use strict";
2
- /**
3
- * Shared formatting utilities
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DEFAULT_OPTIONS = void 0;
7
- exports.findCommodity = findCommodity;
8
- exports.formatIntegerAmount = formatIntegerAmount;
9
- exports.formatDecimalAmount = formatDecimalAmount;
10
- exports.layoutAmount = layoutAmount;
11
- exports.DEFAULT_OPTIONS = {
12
- indentation: 4,
13
- maxAccountWidth: 42,
14
- maxCommodityWidth: 4,
15
- maxAmountWidth: 12,
16
- minSpacing: 2,
17
- decimalAlignColumn: 52,
18
- assertionDecimalAlignColumn: 70
19
- };
20
- /**
21
- * Find the commodity format from parsed document
22
- */
23
- function findCommodity(commodityName, parsed) {
24
- return parsed.commodities.get(commodityName);
25
- }
26
- function formatIntegerAmount(amount, format) {
27
- const integerPart = Math.floor(Math.abs(amount.quantity)).toString();
28
- // Format integer part with grouping if specified
29
- let integerString = '';
30
- if (format.thousandsSeparator) {
31
- const regex = /\B(?=(\d{3})+(?!\d))/g;
32
- integerString = integerPart.replace(regex, format.thousandsSeparator);
33
- }
34
- else {
35
- integerString = integerPart;
36
- }
37
- return integerString;
38
- }
39
- function formatDecimalAmount(amount, format, targetPrecision) {
40
- const decimalPart = Math.abs(amount.quantity) % 1;
41
- // Format decimal part based on target precision
42
- let decimalString = '';
43
- if (targetPrecision !== undefined && targetPrecision > 0) {
44
- decimalString = decimalPart.toFixed(targetPrecision).substring(2); // Skip "0."
45
- }
46
- else if (decimalPart > 0) {
47
- decimalString = decimalPart.toString().substring(2); // Skip "0."
48
- }
49
- return decimalString;
50
- }
51
- function layoutAmount(amount, parsed, options) {
52
- const commodity = findCommodity(amount.commodity, parsed);
53
- let format = {};
54
- let declaredPrecision = undefined;
55
- if (commodity && commodity.format) {
56
- format = commodity.format;
57
- declaredPrecision = commodity.format.precision ?? undefined;
58
- }
59
- else if (amount.format) {
60
- format = amount.format;
61
- }
62
- else {
63
- // Default heuristic: common currencies go on left
64
- const leftSymbols = ['$', '€', '£', '¥'];
65
- if (leftSymbols.includes(amount.commodity)) {
66
- format = { symbolOnLeft: true, symbol: amount.commodity, decimalMark: '.' };
67
- }
68
- else {
69
- // For other commodities, default to right with space if not empty
70
- format = {
71
- symbolOnLeft: false,
72
- symbol: amount.commodity,
73
- spaceBetween: !!amount.commodity,
74
- decimalMark: '.'
75
- };
76
- }
77
- }
78
- // Determine the actual precision to use based on the rules:
79
- // 1. Never reduce precision if posting has higher precision than declared
80
- // 2. Add zeros to match declared precision when actual < declared
81
- // 3. Don't change formatting when commodity is not declared
82
- const actualPrecision = amount.format?.precision ?? undefined;
83
- let targetPrecision = undefined;
84
- if (declaredPrecision !== undefined) {
85
- // Commodity is declared - use max of actual and declared precision
86
- if (actualPrecision !== undefined) {
87
- targetPrecision = Math.max(actualPrecision, declaredPrecision);
88
- }
89
- else {
90
- targetPrecision = declaredPrecision;
91
- }
92
- }
93
- else {
94
- // Commodity is not declared - preserve original precision
95
- targetPrecision = actualPrecision;
96
- }
97
- return {
98
- commodityBefore: format.symbolOnLeft ? format.symbol || '' : '',
99
- isNegative: amount.quantity < 0,
100
- amountIntegerString: formatIntegerAmount(amount, format),
101
- amountDecimalString: formatDecimalAmount(amount, format, targetPrecision),
102
- demicalMark: targetPrecision && targetPrecision > 0 ? (format.decimalMark || '.') : '',
103
- spaceBetweenCommodityAndAmount: format.spaceBetween || false,
104
- commodityAfter: !format.symbolOnLeft ? format.symbol || '' : ''
105
- };
106
- }
107
- //# sourceMappingURL=formattingUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formattingUtils.js","sourceRoot":"","sources":["../../src/features/formattingUtils.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { ParsedDocument, Commodity, Account, Payee, Tag, Transaction } from "../types";
2
- export declare function addCommodity(parsedDocument: ParsedDocument, commodity: Commodity): void;
3
- export declare function addAccount(parsedDocument: ParsedDocument, account: Account): void;
4
- export declare function addPayee(parsedDocument: ParsedDocument, payee: Payee): void;
5
- export declare function addTag(parsedDocument: ParsedDocument, tag: Tag): void;
6
- export declare function addTransaction(parsedDocument: ParsedDocument, transaction: Transaction): void;
7
- //# sourceMappingURL=document.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/parser/document.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvF,wBAAgB,YAAY,CAAC,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAYvF;AAED,wBAAgB,UAAU,CAAC,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAajF;AAED,wBAAgB,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAY3E;AAED,wBAAgB,MAAM,CAAC,cAAc,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI,CAYrE;AAED,wBAAgB,cAAc,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,CAE7F"}
@@ -1,70 +0,0 @@
1
- "use strict";
2
- /*
3
- Parsed Document helper functions
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.addCommodity = addCommodity;
7
- exports.addAccount = addAccount;
8
- exports.addPayee = addPayee;
9
- exports.addTag = addTag;
10
- exports.addTransaction = addTransaction;
11
- function addCommodity(parsedDocument, commodity) {
12
- const existingCommodity = parsedDocument.commodities.get(commodity.name);
13
- if (existingCommodity) {
14
- if (!existingCommodity.declared && commodity.declared) {
15
- // If the commodity is not declared, we want to override it with the declared one
16
- parsedDocument.commodities.set(commodity.name, commodity);
17
- return;
18
- }
19
- else {
20
- return;
21
- }
22
- }
23
- parsedDocument.commodities.set(commodity.name, commodity);
24
- }
25
- function addAccount(parsedDocument, account) {
26
- const existingAccount = parsedDocument.accounts.get(account.name);
27
- if (existingAccount) {
28
- if (!existingAccount.declared && account.declared) {
29
- // If the account is not declared, we want to override it with the declared one
30
- parsedDocument.accounts.set(account.name, account);
31
- return;
32
- }
33
- else {
34
- return;
35
- }
36
- }
37
- parsedDocument.accounts.set(account.name, account);
38
- }
39
- function addPayee(parsedDocument, payee) {
40
- const existingPayee = parsedDocument.payees.get(payee.name);
41
- if (existingPayee) {
42
- if (!existingPayee.declared && payee.declared) {
43
- // If the payee is not declared, we want to override it with the declared one
44
- parsedDocument.payees.set(payee.name, payee);
45
- return;
46
- }
47
- else {
48
- return;
49
- }
50
- }
51
- parsedDocument.payees.set(payee.name, payee);
52
- }
53
- function addTag(parsedDocument, tag) {
54
- const existingTag = parsedDocument.tags.get(tag.name);
55
- if (existingTag) {
56
- if (!existingTag.declared && tag.declared) {
57
- // If the tag is not declared, we want to override it with the declared one
58
- parsedDocument.tags.set(tag.name, tag);
59
- return;
60
- }
61
- else {
62
- return;
63
- }
64
- }
65
- parsedDocument.tags.set(tag.name, tag);
66
- }
67
- function addTransaction(parsedDocument, transaction) {
68
- parsedDocument.transactions.push(transaction);
69
- }
70
- //# sourceMappingURL=document.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/parser/document.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAIH,oCAYC;AAED,gCAaC;AAED,4BAYC;AAED,wBAYC;AAED,wCAEC;AA3DD,SAAgB,YAAY,CAAC,cAA8B,EAAE,SAAoB;IAC7E,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzE,IAAI,iBAAiB,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACpD,iFAAiF;YACjF,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC1D,OAAO;QACX,CAAC;aAAM,CAAC;YACJ,OAAO;QACX,CAAC;IACL,CAAC;IACD,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,UAAU,CAAC,cAA8B,EAAE,OAAgB;IACvE,MAAM,eAAe,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAElE,IAAI,eAAe,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChD,+EAA+E;YAC/E,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACnD,OAAO;QACX,CAAC;aAAM,CAAC;YACJ,OAAO;QACX,CAAC;IACL,CAAC;IACD,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC;AAED,SAAgB,QAAQ,CAAC,cAA8B,EAAE,KAAY;IACjE,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,aAAa,EAAE,CAAC;QAChB,IAAI,CAAC,aAAa,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5C,6EAA6E;YAC7E,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO;QACX,CAAC;aAAM,CAAC;YACJ,OAAO;QACX,CAAC;IACL,CAAC;IACD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,SAAgB,MAAM,CAAC,cAA8B,EAAE,GAAQ;IAC3D,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,WAAW,EAAE,CAAC;QACd,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACxC,2EAA2E;YAC3E,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO;QACX,CAAC;aAAM,CAAC;YACJ,OAAO;QACX,CAAC;IACL,CAAC;IACD,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,cAAc,CAAC,cAA8B,EAAE,WAAwB;IACnF,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAClD,CAAC"}