aliasmate 1.6.1 ā 1.6.2
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 +14 -0
- package/README.md +21 -3
- package/dist/cli.js +4 -3
- package/dist/cli.js.map +1 -1
- package/dist/commands/completion.d.ts +15 -1
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +160 -1
- package/dist/commands/completion.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.js +1 -1
- package/package.json +1 -1
- package/whats-new.json +15 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
## [1.6.2] - 2026-01-24
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- **Automated Completion Installation**
|
|
13
|
+
- New `aliasmate completion install` command for one-command setup
|
|
14
|
+
- Auto-detects current shell (bash, zsh, fish)
|
|
15
|
+
- Automatically adds completion to shell configuration files
|
|
16
|
+
- Prevents duplicate installations with smart detection
|
|
17
|
+
- Provides clear next steps after installation
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
- **User Experience**
|
|
21
|
+
- Completion setup is now single command instead of manual editing
|
|
22
|
+
|
|
9
23
|
## [1.6.1] - 2026-01-24
|
|
10
24
|
|
|
11
25
|
### Fixed
|
package/README.md
CHANGED
|
@@ -57,7 +57,24 @@ npm i -g aliasmate
|
|
|
57
57
|
|
|
58
58
|
AliasMate supports auto-completion for bash, zsh, and fish shells. This provides tab completion for commands, saved command names, and flags.
|
|
59
59
|
|
|
60
|
-
###
|
|
60
|
+
### š Quick Install (Recommended)
|
|
61
|
+
|
|
62
|
+
The easiest way to install completion is to use the auto-installer:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
aliasmate completion install
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
This will:
|
|
69
|
+
- Auto-detect your shell (bash/zsh/fish)
|
|
70
|
+
- Add the completion script to your shell config
|
|
71
|
+
- Show you how to reload your shell
|
|
72
|
+
|
|
73
|
+
### Manual Installation
|
|
74
|
+
|
|
75
|
+
If you prefer manual installation or the auto-installer doesn't work for your setup:
|
|
76
|
+
|
|
77
|
+
#### Bash
|
|
61
78
|
|
|
62
79
|
Add to your `~/.bashrc`:
|
|
63
80
|
```bash
|
|
@@ -69,7 +86,7 @@ Then reload:
|
|
|
69
86
|
source ~/.bashrc
|
|
70
87
|
```
|
|
71
88
|
|
|
72
|
-
|
|
89
|
+
#### Zsh
|
|
73
90
|
|
|
74
91
|
Add to your `~/.zshrc`:
|
|
75
92
|
```bash
|
|
@@ -81,7 +98,7 @@ Then reload:
|
|
|
81
98
|
source ~/.zshrc
|
|
82
99
|
```
|
|
83
100
|
|
|
84
|
-
|
|
101
|
+
#### Fish
|
|
85
102
|
|
|
86
103
|
Generate the completion file:
|
|
87
104
|
```bash
|
|
@@ -693,6 +710,7 @@ Commands are stored in:
|
|
|
693
710
|
| `aliasmate recent --clear` | - | Clear execution history |
|
|
694
711
|
| `aliasmate validate <name>` | - | Validate a single command |
|
|
695
712
|
| `aliasmate validate --all` | - | Validate all saved commands |
|
|
713
|
+
| `aliasmate completion install` | - | Auto-install shell completion for your shell |
|
|
696
714
|
| `aliasmate completion <shell>` | - | Generate shell completion script (bash, zsh, fish) |
|
|
697
715
|
| `aliasmate changelog` | `changes` | View version changelog and release notes |
|
|
698
716
|
| `aliasmate config` | - | Show config file location and command count |
|
package/dist/cli.js
CHANGED
|
@@ -184,9 +184,10 @@ program
|
|
|
184
184
|
// completion command - generate shell completion scripts
|
|
185
185
|
program
|
|
186
186
|
.command('completion [shell]')
|
|
187
|
-
.description('Generate shell completion script (bash, zsh, or
|
|
188
|
-
.
|
|
189
|
-
(
|
|
187
|
+
.description('Generate shell completion script (bash, zsh, fish, or install)')
|
|
188
|
+
.option('--install', 'Install completion for your current shell')
|
|
189
|
+
.action((shell, options) => {
|
|
190
|
+
(0, completion_1.completionCommand)(shell, options);
|
|
190
191
|
});
|
|
191
192
|
// Handle unknown commands
|
|
192
193
|
program.on('command:*', () => {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,22 @@ export declare function generateZshCompletion(): string;
|
|
|
10
10
|
* Generate fish completion script
|
|
11
11
|
*/
|
|
12
12
|
export declare function generateFishCompletion(): string;
|
|
13
|
+
/**
|
|
14
|
+
* Detect the user's current shell
|
|
15
|
+
*/
|
|
16
|
+
export declare function detectShell(): string | null;
|
|
17
|
+
/**
|
|
18
|
+
* Get the shell config file path
|
|
19
|
+
*/
|
|
20
|
+
export declare function getShellConfigPath(shell: string): string;
|
|
21
|
+
/**
|
|
22
|
+
* Install completion for the specified shell
|
|
23
|
+
*/
|
|
24
|
+
export declare function installCompletion(shell?: string): void;
|
|
13
25
|
/**
|
|
14
26
|
* Display completion script for specified shell
|
|
15
27
|
*/
|
|
16
|
-
export declare function completionCommand(shell?: string
|
|
28
|
+
export declare function completionCommand(shell?: string, options?: {
|
|
29
|
+
install?: boolean;
|
|
30
|
+
}): void;
|
|
17
31
|
//# sourceMappingURL=completion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CA+I/C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAgG9C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAsE/C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,GAAG,IAAI,CAQ3C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAcxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAmFtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAgDvF"}
|
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
@@ -6,8 +39,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
39
|
exports.generateBashCompletion = generateBashCompletion;
|
|
7
40
|
exports.generateZshCompletion = generateZshCompletion;
|
|
8
41
|
exports.generateFishCompletion = generateFishCompletion;
|
|
42
|
+
exports.detectShell = detectShell;
|
|
43
|
+
exports.getShellConfigPath = getShellConfigPath;
|
|
44
|
+
exports.installCompletion = installCompletion;
|
|
9
45
|
exports.completionCommand = completionCommand;
|
|
10
46
|
const chalk_1 = __importDefault(require("chalk"));
|
|
47
|
+
const fs = __importStar(require("fs"));
|
|
48
|
+
const os = __importStar(require("os"));
|
|
49
|
+
const path = __importStar(require("path"));
|
|
11
50
|
const storage_1 = require("../storage");
|
|
12
51
|
/**
|
|
13
52
|
* Generate bash completion script
|
|
@@ -324,16 +363,134 @@ complete -c aliasmate -n "__fish_seen_subcommand_from completion" -a "bash zsh f
|
|
|
324
363
|
complete -c aliasmate -n "__fish_seen_subcommand_from import export" -F
|
|
325
364
|
`;
|
|
326
365
|
}
|
|
366
|
+
/**
|
|
367
|
+
* Detect the user's current shell
|
|
368
|
+
*/
|
|
369
|
+
function detectShell() {
|
|
370
|
+
const shell = process.env.SHELL || '';
|
|
371
|
+
if (shell.includes('bash'))
|
|
372
|
+
return 'bash';
|
|
373
|
+
if (shell.includes('zsh'))
|
|
374
|
+
return 'zsh';
|
|
375
|
+
if (shell.includes('fish'))
|
|
376
|
+
return 'fish';
|
|
377
|
+
return null;
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* Get the shell config file path
|
|
381
|
+
*/
|
|
382
|
+
function getShellConfigPath(shell) {
|
|
383
|
+
const homeDir = os.homedir();
|
|
384
|
+
switch (shell) {
|
|
385
|
+
case 'bash':
|
|
386
|
+
return path.join(homeDir, '.bashrc');
|
|
387
|
+
case 'zsh':
|
|
388
|
+
return path.join(homeDir, '.zshrc');
|
|
389
|
+
case 'fish':
|
|
390
|
+
// For fish, return the completions file path
|
|
391
|
+
return path.join(homeDir, '.config', 'fish', 'completions', 'aliasmate.fish');
|
|
392
|
+
default:
|
|
393
|
+
throw new Error(`Unsupported shell: ${shell}`);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Install completion for the specified shell
|
|
398
|
+
*/
|
|
399
|
+
function installCompletion(shell) {
|
|
400
|
+
try {
|
|
401
|
+
// Detect shell if not specified
|
|
402
|
+
const targetShell = shell?.toLowerCase() || detectShell();
|
|
403
|
+
if (!targetShell) {
|
|
404
|
+
console.error(chalk_1.default.red('Error: Could not detect your shell'));
|
|
405
|
+
console.log(chalk_1.default.yellow('Please specify the shell explicitly:'));
|
|
406
|
+
console.log(chalk_1.default.cyan(' aliasmate completion install bash'));
|
|
407
|
+
console.log(chalk_1.default.cyan(' aliasmate completion install zsh'));
|
|
408
|
+
console.log(chalk_1.default.cyan(' aliasmate completion install fish'));
|
|
409
|
+
process.exit(1);
|
|
410
|
+
}
|
|
411
|
+
if (!['bash', 'zsh', 'fish'].includes(targetShell)) {
|
|
412
|
+
console.error(chalk_1.default.red(`Error: Unsupported shell "${targetShell}"`));
|
|
413
|
+
console.log(chalk_1.default.yellow('Supported shells: bash, zsh, fish'));
|
|
414
|
+
process.exit(1);
|
|
415
|
+
}
|
|
416
|
+
const configPath = getShellConfigPath(targetShell);
|
|
417
|
+
const completionLine = targetShell === 'fish'
|
|
418
|
+
? "# AliasMate completion (run 'aliasmate completion fish > ~/.config/fish/completions/aliasmate.fish')"
|
|
419
|
+
: `source <(aliasmate completion ${targetShell}) # AliasMate completion`;
|
|
420
|
+
// Check if already installed
|
|
421
|
+
if (fs.existsSync(configPath)) {
|
|
422
|
+
const configContent = fs.readFileSync(configPath, 'utf8');
|
|
423
|
+
if (configContent.includes('aliasmate completion')) {
|
|
424
|
+
console.log(chalk_1.default.yellow('ā AliasMate completion is already installed'));
|
|
425
|
+
console.log(chalk_1.default.gray(` Found in: ${configPath}`));
|
|
426
|
+
console.log();
|
|
427
|
+
console.log(chalk_1.default.gray('To reload:'));
|
|
428
|
+
console.log(chalk_1.default.cyan(` source ${configPath}`));
|
|
429
|
+
return;
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
// For fish, we need to create the completions directory and file
|
|
433
|
+
if (targetShell === 'fish') {
|
|
434
|
+
const fishCompletionDir = path.join(os.homedir(), '.config', 'fish', 'completions');
|
|
435
|
+
const fishCompletionFile = path.join(fishCompletionDir, 'aliasmate.fish');
|
|
436
|
+
// Create directory if it doesn't exist
|
|
437
|
+
if (!fs.existsSync(fishCompletionDir)) {
|
|
438
|
+
fs.mkdirSync(fishCompletionDir, { recursive: true });
|
|
439
|
+
}
|
|
440
|
+
// Write completion file
|
|
441
|
+
fs.writeFileSync(fishCompletionFile, generateFishCompletion(), 'utf8');
|
|
442
|
+
console.log(chalk_1.default.green('ā AliasMate completion installed successfully!'));
|
|
443
|
+
console.log(chalk_1.default.gray(` Installed to: ${fishCompletionFile}`));
|
|
444
|
+
console.log();
|
|
445
|
+
console.log(chalk_1.default.bold('Next steps:'));
|
|
446
|
+
console.log(chalk_1.default.gray(' 1. Restart your terminal or run:'));
|
|
447
|
+
console.log(chalk_1.default.cyan(' exec fish'));
|
|
448
|
+
console.log(chalk_1.default.gray(' 2. Test completion:'));
|
|
449
|
+
console.log(chalk_1.default.cyan(' aliasmate <TAB>'));
|
|
450
|
+
}
|
|
451
|
+
else {
|
|
452
|
+
// For bash/zsh, append to config file
|
|
453
|
+
const configDir = path.dirname(configPath);
|
|
454
|
+
if (!fs.existsSync(configDir)) {
|
|
455
|
+
fs.mkdirSync(configDir, { recursive: true });
|
|
456
|
+
}
|
|
457
|
+
// Append completion line
|
|
458
|
+
fs.appendFileSync(configPath, `\n# AliasMate completion\n${completionLine}\n`, 'utf8');
|
|
459
|
+
console.log(chalk_1.default.green('ā AliasMate completion installed successfully!'));
|
|
460
|
+
console.log(chalk_1.default.gray(` Added to: ${configPath}`));
|
|
461
|
+
console.log();
|
|
462
|
+
console.log(chalk_1.default.bold('Next steps:'));
|
|
463
|
+
console.log(chalk_1.default.gray(' 1. Reload your shell config:'));
|
|
464
|
+
console.log(chalk_1.default.cyan(` source ${configPath}`));
|
|
465
|
+
console.log(chalk_1.default.gray(' 2. Test completion:'));
|
|
466
|
+
console.log(chalk_1.default.cyan(' aliasmate <TAB>'));
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
catch (error) {
|
|
470
|
+
console.error(chalk_1.default.red('Error installing completion:'));
|
|
471
|
+
console.error(chalk_1.default.red(error.message));
|
|
472
|
+
process.exit(1);
|
|
473
|
+
}
|
|
474
|
+
}
|
|
327
475
|
/**
|
|
328
476
|
* Display completion script for specified shell
|
|
329
477
|
*/
|
|
330
|
-
function completionCommand(shell) {
|
|
478
|
+
function completionCommand(shell, options) {
|
|
479
|
+
// Handle install subcommand
|
|
480
|
+
if (options?.install || shell === 'install') {
|
|
481
|
+
const targetShell = shell === 'install' ? undefined : shell;
|
|
482
|
+
installCompletion(targetShell);
|
|
483
|
+
return;
|
|
484
|
+
}
|
|
331
485
|
if (!shell) {
|
|
332
486
|
console.log(chalk_1.default.yellow('Usage: aliasmate completion <shell>'));
|
|
333
487
|
console.log(chalk_1.default.gray('\nAvailable shells:'));
|
|
334
488
|
console.log(chalk_1.default.gray(' bash - Generate bash completion script'));
|
|
335
489
|
console.log(chalk_1.default.gray(' zsh - Generate zsh completion script'));
|
|
336
490
|
console.log(chalk_1.default.gray(' fish - Generate fish completion script'));
|
|
491
|
+
console.log(chalk_1.default.bold.cyan('\nš Quick Install:'));
|
|
492
|
+
console.log(chalk_1.default.cyan(' aliasmate completion install'));
|
|
493
|
+
console.log(chalk_1.default.gray(' (Auto-detects your shell and installs completion)'));
|
|
337
494
|
console.log(chalk_1.default.gray('\nExamples:'));
|
|
338
495
|
console.log(chalk_1.default.cyan(' # Bash'));
|
|
339
496
|
console.log(chalk_1.default.gray(' source <(aliasmate completion bash)'));
|
|
@@ -341,6 +498,8 @@ function completionCommand(shell) {
|
|
|
341
498
|
console.log(chalk_1.default.gray(' source <(aliasmate completion zsh)'));
|
|
342
499
|
console.log(chalk_1.default.cyan('\n # Fish'));
|
|
343
500
|
console.log(chalk_1.default.gray(' aliasmate completion fish > ~/.config/fish/completions/aliasmate.fish'));
|
|
501
|
+
console.log(chalk_1.default.bold.cyan('\n # Auto-install (recommended)'));
|
|
502
|
+
console.log(chalk_1.default.gray(' aliasmate completion install'));
|
|
344
503
|
return;
|
|
345
504
|
}
|
|
346
505
|
const normalizedShell = shell.toLowerCase();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Application constants
|
|
3
3
|
*/
|
|
4
4
|
export declare const APP_NAME = "aliasmate";
|
|
5
|
-
export declare const APP_VERSION = "1.6.
|
|
5
|
+
export declare const APP_VERSION = "1.6.2";
|
|
6
6
|
export declare const CONFIG_DIR_NAME = ".config/aliasmate";
|
|
7
7
|
export declare const CONFIG_FILE_NAME = "config.json";
|
|
8
8
|
/**
|
package/dist/utils/constants.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ERROR_MESSAGES = exports.SUCCESS_MESSAGES = exports.HELP_MESSAGES = exports.CONFIG_FILE_NAME = exports.CONFIG_DIR_NAME = exports.APP_VERSION = exports.APP_NAME = void 0;
|
|
7
7
|
exports.APP_NAME = 'aliasmate';
|
|
8
|
-
exports.APP_VERSION = '1.6.
|
|
8
|
+
exports.APP_VERSION = '1.6.2';
|
|
9
9
|
exports.CONFIG_DIR_NAME = '.config/aliasmate';
|
|
10
10
|
exports.CONFIG_FILE_NAME = 'config.json';
|
|
11
11
|
/**
|
package/package.json
CHANGED
package/whats-new.json
CHANGED
|
@@ -198,5 +198,20 @@
|
|
|
198
198
|
"Improved user experience with motivational messaging for upgrades"
|
|
199
199
|
]
|
|
200
200
|
}
|
|
201
|
+
},
|
|
202
|
+
"1.6.2": {
|
|
203
|
+
"version": "1.6.2",
|
|
204
|
+
"date": "2026-01-24",
|
|
205
|
+
"sections": {
|
|
206
|
+
"added": [
|
|
207
|
+
"Automated completion installation with 'aliasmate completion install'",
|
|
208
|
+
"Auto-detection of current shell (bash, zsh, fish)",
|
|
209
|
+
"Smart duplicate detection prevents multiple completion installations",
|
|
210
|
+
"Clear post-installation instructions"
|
|
211
|
+
],
|
|
212
|
+
"changed": [
|
|
213
|
+
"Shell completion setup simplified from manual editing to single command"
|
|
214
|
+
]
|
|
215
|
+
}
|
|
201
216
|
}
|
|
202
217
|
}
|