summon-open 1.1.0 → 1.1.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 (2) hide show
  1. package/package.json +1 -1
  2. package/readme.md +37 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "summon-open",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "Open URLs, files, folders, and apps from one cross-platform command — with bookmarks, search, clipboard, reveal, dry-run, and stdin support.",
5
5
  "license": "MIT",
6
6
  "repository": {
package/readme.md CHANGED
@@ -14,6 +14,8 @@
14
14
  Bookmarks, search, clipboard, reveal-in-file-manager, dry-run, multiple targets, and stdin — all in a tool small enough to forget it's there. No more remembering `xdg-open` vs `start` vs `open`.
15
15
 
16
16
  [![npm version](https://img.shields.io/npm/v/summon-open.svg)](https://www.npmjs.com/package/summon-open)
17
+ [![npm downloads](https://img.shields.io/npm/dm/summon-open.svg)](https://www.npmjs.com/package/summon-open)
18
+ [![install size](https://packagephobia.com/badge?p=summon-open)](https://packagephobia.com/result?p=summon-open)
17
19
  [![node](https://img.shields.io/node/v/summon-open.svg)](https://nodejs.org)
18
20
  [![license](https://img.shields.io/npm/l/summon-open.svg)](license)
19
21
  [![CI](https://github.com/Aditya060806/summon/actions/workflows/main.yml/badge.svg)](https://github.com/Aditya060806/summon/actions)
@@ -55,7 +57,7 @@ $ cat diagram.png | summon # pipe raw bytes straight in
55
57
  - [Web search](#web-search)
56
58
  - [Clipboard](#clipboard)
57
59
  - [Reveal in file manager](#reveal-in-file-manager)
58
- - [Recent & interactive picker](#recent--interactive-picker)
60
+ - [Recent & fuzzy picker](#recent--fuzzy-picker)
59
61
  - [Dry run](#dry-run)
60
62
  - [Choosing the app](#choosing-the-app)
61
63
  - [Stdin](#stdin)
@@ -66,6 +68,7 @@ $ cat diagram.png | summon # pipe raw bytes straight in
66
68
  - [Comparison](#comparison)
67
69
  - [Feature matrix](#feature-matrix)
68
70
  - [Same task, side by side](#same-task-side-by-side)
71
+ - [vs other npm openers](#vs-other-npm-openers)
69
72
  - [Efficiency](#efficiency)
70
73
  - [Exit codes](#exit-codes)
71
74
  - [Platform support](#platform-support)
@@ -224,6 +227,8 @@ $ summon --help
224
227
  --extension File extension for when stdin file type cannot be detected
225
228
  --dry-run, -n Print what would be opened without opening it
226
229
  --search, -s Treat the input as a search query
230
+ --engine, -e Search engine to use with --search (see --engines)
231
+ --engines List available search engines
227
232
  --clipboard, -c Open the URL/path currently on the clipboard
228
233
  --reveal, -r Reveal the file/folder in your file manager
229
234
  --recent Pick from recently opened items
@@ -233,12 +238,13 @@ $ summon --help
233
238
 
234
239
  Examples
235
240
  $ summon https://sindresorhus.com
236
- $ summon github.com
241
+ $ summon github.com # scheme added automatically
237
242
  $ summon report.pdf photo.png notes.txt
238
243
  $ summon https://github.com -- 'google chrome' --incognito
239
- $ summon @docs
244
+ $ summon @docs # open a saved bookmark
240
245
  $ summon https://docs.example.com --save docs
241
246
  $ summon -s "rust async traits"
247
+ $ summon -s "flatMap" -e mdn
242
248
  $ echo '<h1>Hi</h1>' | summon --extension=html
243
249
  $ summon report.pdf --reveal
244
250
  $ summon --recent
@@ -338,7 +344,7 @@ summon report.pdf --reveal
338
344
  - **Windows** — `explorer /select,` (selects the file in Explorer)
339
345
  - **Linux/other** — opens the containing folder
340
346
 
341
- ### Recent & interactive picker
347
+ ### Recent & fuzzy picker
342
348
 
343
349
  `summon` remembers what you open. Re-open something recent:
344
350
 
@@ -583,6 +589,33 @@ The value shows up most when you compare the actual commands for the same job.
583
589
  | Preview without launching | `summon x.com --dry-run` | no native equivalent |
584
590
  | Pipe + auto-detect type | `cat f \| summon` | no native equivalent |
585
591
 
592
+ ### vs other npm openers
593
+
594
+ The npm ecosystem has a few ways to open things. `summon` builds on the excellent [`open`](https://github.com/sindresorhus/open) library (the programmatic API) and starts from [`open-cli`](https://github.com/sindresorhus/open-cli), then adds a workflow layer on top.
595
+
596
+ | Capability | **summon** | [`open-cli`](https://www.npmjs.com/package/open-cli) | [`opener`](https://www.npmjs.com/package/opener) | [`open`](https://www.npmjs.com/package/open) |
597
+ | --- | :---: | :---: | :---: | :---: |
598
+ | Ships a CLI command | ✅ | ✅ | ✅ | ❌ (library) |
599
+ | Cross-platform | ✅ | ✅ | ✅ | ✅ |
600
+ | Open URL / file / folder / app | ✅ | ✅ | ✅ | ✅ (API) |
601
+ | Choose app + pass args (`-- app …`) | ✅ | ✅ | ❌ | ✅ (API) |
602
+ | Wait / background | ✅ | ✅ | ❌ | ✅ (API) |
603
+ | Stdin + file-type detection | ✅ | ✅ | ❌ | ❌ |
604
+ | Multiple targets in one call | ✅ | ❌ | ❌ | ❌ |
605
+ | Auto `https://` for bare domains | ✅ | ❌ | ❌ | ❌ |
606
+ | Bookmarks / aliases | ✅ | ❌ | ❌ | ❌ |
607
+ | Web search + configurable engines | ✅ | ❌ | ❌ | ❌ |
608
+ | Open from clipboard | ✅ | ❌ | ❌ | ❌ |
609
+ | Reveal in file manager | ✅ | ❌ | ❌ | ❌ |
610
+ | Recent + fuzzy picker | ✅ | ❌ | ❌ | ❌ |
611
+ | Dry-run preview | ✅ | ❌ | ❌ | ❌ |
612
+ | Typed exit codes + friendly errors | ✅ | ⚠️ | ⚠️ | n/a |
613
+ | Shell completions | ✅ | ❌ | ❌ | n/a |
614
+
615
+ ✅ yes · ⚠️ basic/partial · ❌ no · n/a not applicable
616
+
617
+ **In short:** reach for [`open`](https://www.npmjs.com/package/open) when you need a programmatic API inside Node code; reach for `open-cli` or `opener` for a bare "open this one thing" command; reach for **summon** when you want that same reliability *plus* multiple targets, bookmarks, search, clipboard, reveal, a fuzzy picker, and dry-run in day-to-day terminal use.
618
+
586
619
  ## Efficiency
587
620
 
588
621
  `summon` is designed to add as little overhead as possible on top of the native OS handler.