diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c548b5..de3ba11 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,30 +1,53 @@ +# 2.1.0 (2023-03-03) + +Bugfixes and improvements: + +* Fix broken proposal retrieval by adapting to data format and URL changes on swift.org. + +* The proposal title is now displayed more prominently in Alfred (together with the proposal ID). + +* New actions in Alfred: + * Hold down Command to copy the proposal title to the clipboard. + * Hold down Shift+Command to copy a Markdown link to the proposal to the clipboard. + * (To copy the URL, hit Tab on a proposal and select Copy as Plain Text from the menu. This is not a new feature.) + +* The script now forwards four variables to Alfred that can be used in subsequent workflow actions: + * `proposal_id` (e.g. "SE-0304") + * `proposal_title` ("Structured concurrency") + * `proposal_status` ("Implemented") + * `proposal_url` ("https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md") + + If you want to customize the workflow for your needs, you can use these variables in your actions. Refer to the "Copy Markdown link" action for an example. + +* Display more detailed error messages in Alfred on network or parsing failures. + # 2.0.1 (2017-02-20) This is a bugfix release with the following changes: - * The query string is now case insensitive, as it should be. - * You can now search for proposals using the internal name of a - particular proposal status (such as `.rejected` or - `.acceptedWithRevisions`). - * You now have to insert a space between se and your - query string. Previously, the workflow also triggered for queries - such as setup, which was not a good idea. - * The timing of how the script is run when you modify the query - string has been tweaked. +* The query string is now case insensitive, as it should be. +* You can now search for proposals using the internal name of a + particular proposal status (such as `.rejected` or + `.acceptedWithRevisions`). +* You now have to insert a space between se and your + query string. Previously, the workflow also triggered for queries + such as setup, which was not a good idea. +* The timing of how the script is run when you modify the query + string has been tweaked. # 2.0.0 (2017-02-20) This third release of `alfred-swift-evolution` contains the following improvements: - * The script implementing the workflow is now written in Swift. - * Proposal information is now downloaded from the JSON API behind - the official [Swift evolution review status page][status]. - * Alfred now displays a list of matching proposals, not just a - generic item for running the actual lookup. - * Matching proposals are now listed with their title and current - status. - * You can filter proposals by keyword or status, not just by - proposal number. +* The script implementing the workflow is now written in Swift. +* Proposal information is now downloaded from the JSON API behind + the official [Swift evolution review status page][status]. +* Alfred now displays a list of matching proposals, not just a + generic item for running the actual lookup. +* Matching proposals are now listed with their title and current + status. +* You can filter proposals by keyword or status, not just by + proposal number. [status]: https://apple.github.io/swift-evolution/ diff --git a/Info.plist b/Info.plist index ad6cbf8..eae6da4 100644 --- a/Info.plist +++ b/Info.plist @@ -170,14 +170,18 @@ Requirements: The script filter makes the following variables available to subsequent actions: -- {var:proposal_id} ("SE-0304" -- {var:proposal_title} ("Structured concurrency") -- {var:proposal_status) ("Implemented") -- {var:proposal_url) ("https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md") +- proposal_id (e.g. "SE-0304") +- proposal_title ("Structured concurrency") +- proposal_status ("Implemented") +- proposal_url ("https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md") + +You can use e.g. `{var:proposal_id}` in your own actions to customize the workflow. Refer to the "Copy Markdown link" action for an example. uidata 19A1DB67-4FFB-406B-AB22-D350EE719F7E + note + Script that downloads the proposal data from swift.org and filters them according to the search term. xpos 165 ypos @@ -193,7 +197,7 @@ The script filter makes the following variables available to subsequent actions: 7FF77CFD-8E46-40C0-820B-5F1D4AF4BAFA note - Copy Markdown link to proposal + Copy Markdown link xpos 430 ypos diff --git a/README.md b/README.md index 51a0f36..935f97b 100644 --- a/README.md +++ b/README.md @@ -7,14 +7,14 @@ Written in Swift, of course. ## Requirements -You must have Swift 3 installed (either by a version of Xcode or +You must have Swift 5 installed (either by a version of Xcode or Command Line Tools). ## Download -Download version 2.0.1 of [alfred-swift-evolution.alfredworkflow][download]. +Download version 2.1.0 of [alfred-swift-evolution.alfredworkflow][download]. -[download]: https://github.com/lorentey/alfred-swift-evolution/releases/download/v2.0.1/alfred-swift-evolution.alfredworkflow +[download]: https://github.com/attaswift/alfred-swift-evolution/releases/download/v2.1.0/alfred-swift-evolution.alfredworkflow ## Usage @@ -33,3 +33,20 @@ Or by keyword: ![Filter by keyword](screenshots/filter-keyword.png) +Available actions: + +* Press Return to open the proposal in the browser. +* Hold down Command to copy the proposal title to the clipboard. +* Hold down Shift+Command to copy a Markdown link to the proposal to the clipboard. +* (To copy the URL, hit Tab on a proposal and select Copy as Plain Text from the menu.) + +### Workflow variables + +The script forwards four variables to Alfred that can be used in subsequent workflow actions: + +* `proposal_id` (e.g. "SE-0304") +* `proposal_title` ("Structured concurrency") +* `proposal_status` ("Implemented") +* `proposal_url` ("https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md") + +If you want to customize the workflow for your needs, you can use these variables in your actions. Refer to the "Copy Markdown link" action for an example.