Connect applications to schemes, filetypes, and more on macOS (more to come)
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

fixed typos :)

+13 -11
+1
.config/common.ncl
··· 1 1 [ 2 2 "git", 3 3 "just", 4 + "typos", 4 5 "coreutils", 5 6 "b3sum", 6 7 "nushell",
+1
.config/dev.ncl
··· 2 2 "hyperfine", 3 3 "jujutsu", 4 4 "cue", 5 + "typos-lsp", 5 6 "just-lsp", 6 7 "taplo", 7 8 "nickel",
+1 -1
.config/nickel.lock.ncl
··· 1 1 { 2 - organist = import "../../lib/organist.ncl", 2 + organist = import "/nix/store/fjxrgrx0s69m5vkss5ff1i5akjcx39ss-source/lib/organist.ncl", 3 3 }
+4 -4
CHANGELOG.md
··· 186 186 187 187 ### Changed 188 188 - Bumped CLI version to **2.0.1** and updated the abstract to 189 - “Declaritively set associations for URLs and files.” 189 + “Declaratively set associations for URLs and files.” 190 190 - Revised README examples and docs: 191 191 - Renamed `infat list` → `infat info` 192 192 - Changed flag `--file-type` → `--ext` ··· 224 224 - Refactored the `list` command to use two exclusive `@Option` parameters (`--app`, `--ext`) with XOR validation. 225 225 - Switched PList parsing to `DictionaryPList(url:)` and UTI lookup to `UTType(filenameExtension:)`. 226 226 - Replaced ad-hoc `print` calls with `logger.info` for consistent, leveled logging. 227 - - Renamed `deriveUTIFromExtension(extention:)` to `deriveUTIFromExtension(ext:)` for clarity and consistency. 227 + - Renamed `deriveUTIFromExtension(extension:)` to `deriveUTIFromExtension(ext:)` for clarity and consistency. 228 228 229 229 ### Fixed 230 230 - Corrected typos in `FileSystemUtilities.deriveUTIFromExtension` signature and related debug messages. ··· 240 240 - Using function overloading to set default application based on Uttype or extension 241 241 242 242 ### Deprecated 243 - - Removed --assocations option in list into the basic list command 243 + - Removed --associations option in list into the basic list command 244 244 - Filetype option, now ext. 245 245 246 246 ### Added ··· 409 409 [0.5.0]: https://github.com/philocalyst/infat/compare/v0.4.0...v0.5.0 410 410 [0.4.0]: https://github.com/philocalyst/infat/compare/v0.3.0...v0.4.0 411 411 [0.3.0]: https://github.com/philocalyst/infat/compare/v0.2.0...v0.3.0 412 - [0.2.0]: https://github.com/philocalyst/infat/compare/63822faf94def58bf347f8be4983e62da90383bb...d32aec000bf040c48887f104decf4a9736aea78b (Comparing agaisnt the start of the project) 412 + [0.2.0]: https://github.com/philocalyst/infat/compare/63822faf94def58bf347f8be4983e62da90383bb...d32aec000bf040c48887f104decf4a9736aea78b (Comparing against the start of the project)
+2 -2
README.md
··· 3 3 [![Swift Version](https://badgen.net/static/Swift/5.9/orange)](https://swift.org) 4 4 [![Apple Platform](https://badgen.net/badge/icon/macOS%2013+?icon=apple&label)](https://developer.apple.com/macOS) 5 5 6 - Infat is an ultra-powerful, macOS-native CLI tool for declaritively managing both file-type and URL-scheme associations. Avoid the hassle of navigating sub-menus to setup your default browser or image viewer, and the pain of doing that *every time* you get a new machine. Setup the rules once, and bask in your own ingenuity forevermore. Take back control, and bind your openers to whatever. You. Want. Override everything! Who's going to stop you? 6 + Infat is an ultra-powerful, macOS-native CLI tool for declaratively managing both file-type and URL-scheme associations. Avoid the hassle of navigating sub-menus to setup your default browser or image viewer, and the pain of doing that *every time* you get a new machine. Setup the rules once, and bask in your own ingenuity forevermore. Take back control, and bind your openers to whatever. You. Want. Override everything! Who's going to stop you? 7 7 8 8 --- 9 9 ··· 20 20 21 21 ## Tutorial 22 22 23 - ### 1. Getting assocation information 23 + ### 1. Getting association information 24 24 25 25 ```shell 26 26 # Show the default app for .txt files and all registered apps
+1 -1
infat-lib/src/macos/launch_services_db.rs
··· 117 117 continue; 118 118 } 119 119 120 - // Canonicalize the id (There's sometimes a difference between the id the application provides to launchservices and the one it'll key itself as to be identifed as) 120 + // Canonicalize the id (There's sometimes a difference between the id the application provides to launchservices and the one it'll key itself as to be identified as) 121 121 let canonical_id = match resolve_to_bundle_id(&bundle_id) { 122 122 Ok(id) => id, 123 123 Err(_) => {
+3 -3
infat-lib/src/macos/workspace.rs
··· 115 115 .and_then(|val| val.as_string()) 116 116 .unwrap_or("Unknown"); 117 117 118 - let authoritive_id = dict 118 + let authoritative_id = dict 119 119 .get("CFBundleIdentifier") 120 120 .expect("Required for any registered app") 121 121 .as_string() 122 122 .unwrap_or("Unknown"); 123 123 124 - // Prioritize the pretty name but fallbak on the authoritive 125 - if app_name != authoritive_id { 124 + // Prioritize the pretty name but fallbak on the authoritative 125 + if app_name != authoritative_id { 126 126 return Ok(app_name.to_string()); 127 127 } 128 128