{"action":"created","issue":{"url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/537","labels_url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/537/labels{/name}","comments_url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/537/comments","events_url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/537/events","html_url":"https://github.com/nate-parrott/Flashlight/issues/537","id":97889200,"number":537,"title":"The Future of Flashlight","user":{"login":"nate-parrott","id":3059249,"avatar_url":"https://avatars.githubusercontent.com/u/3059249?v=3","gravatar_id":"","url":"https://api.github.com/users/nate-parrott","html_url":"https://github.com/nate-parrott","followers_url":"https://api.github.com/users/nate-parrott/followers","following_url":"https://api.github.com/users/nate-parrott/following{/other_user}","gists_url":"https://api.github.com/users/nate-parrott/gists{/gist_id}","starred_url":"https://api.github.com/users/nate-parrott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nate-parrott/subscriptions","organizations_url":"https://api.github.com/users/nate-parrott/orgs","repos_url":"https://api.github.com/users/nate-parrott/repos","events_url":"https://api.github.com/users/nate-parrott/events{/privacy}","received_events_url":"https://api.github.com/users/nate-parrott/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/nate-parrott/Flashlight/labels/future","name":"future","color":"00ff97"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":48,"created_at":"2015-07-29T08:53:04Z","updated_at":"2015-10-19T14:22:58Z","closed_at":null,"body":"Hacking Spotlight is impossible in 10.11. [1]\r\n\r\nThat's disappointing, but it's also a great opportunity to think about the future of Flashlight. \r\n\r\nEven when Flashlight didn't do that much, it was still useful because it was a *complement* to all of Spotlight's existing features. But now Flashlight's grown up — it has hundreds of features built by a great community. I think it's useful enough to survive as a standalone app — a fresher, more open-source take on all the [standalone](http://www.alfredapp.com) [launcher](http://qsapp.com) [apps](https://www.obdev.at/products/launchbar/index.html) we love. [2]\r\n\r\nI still won't be able to work on Flashlight for a couple more weeks, so here's a challenge for all of you:\r\n\r\n**Figure out what Flashlight can be once it's independent of Spotlight. And help me build it.** [3]\r\n\r\n[1] Apple's new \"rootless\" security system blocks code injection into system processes. Technically you can disable rootless – but I'll have to agree with the [TotalFinder devs](http://blog.binaryage.com/el-capitan-update/) that it doesn't make sense to ask ordinary users to do this. And these security restrictions will only get tighter in the future – it doesn't make sense to build a product around circumventing them.\r\n\r\n[2] Obviously we'll need to add things like app launching and file search, which Spotlight did for us. And we'll need to build a new UI. But that'll be fun.\r\n\r\n[3] If you've got ideas, create issues for them and tag them with the *future* label. If you've got prototypes of standalone Flashlight UIs, add it in a new branch and submit a pull request with it.\r\n"},"comment":{"url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/comments/149228336","html_url":"https://github.com/nate-parrott/Flashlight/issues/537#issuecomment-149228336","issue_url":"https://api.github.com/repos/nate-parrott/Flashlight/issues/537","id":149228336,"user":{"login":"brechtm","id":652887,"avatar_url":"https://avatars.githubusercontent.com/u/652887?v=3","gravatar_id":"","url":"https://api.github.com/users/brechtm","html_url":"https://github.com/brechtm","followers_url":"https://api.github.com/users/brechtm/followers","following_url":"https://api.github.com/users/brechtm/following{/other_user}","gists_url":"https://api.github.com/users/brechtm/gists{/gist_id}","starred_url":"https://api.github.com/users/brechtm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brechtm/subscriptions","organizations_url":"https://api.github.com/users/brechtm/orgs","repos_url":"https://api.github.com/users/brechtm/repos","events_url":"https://api.github.com/users/brechtm/events{/privacy}","received_events_url":"https://api.github.com/users/brechtm/received_events","type":"User","site_admin":false},"created_at":"2015-10-19T14:22:58Z","updated_at":"2015-10-19T14:22:58Z","body":"Perhaps a good compromise would be to create a stand-alone Flashlight that hands control over to Spotlight if none of the enabled plugins are triggered.\r\n\r\nSuppose I have the *Remind Me* and *Google Translate* plugins installed. The stand-alone Flashlight should be configured to pop up on Spotlight's usual hotkey, say Cmd+Space. Spotlight's hotkey needs to be changed to something else, say Ctrl+Cmd+Space. If I now press Cmd+Space, Flashlight's window pops up and I can enter some commands:\r\n- `remind me to go shopping` will activate the *Remind Me* plugin, or\r\n- `gtr ennl shoelaces` activates the *Google Translate* plugin, or\r\n- entering anything not starting with `remind me ` or `gtr ` closes the Flashlight window even **before pressing enter**, open Spotlight and paste the entered text into Spotlight's text input. All following keypresses are simply received by Spotlight.\r\n\r\nFeedback welcome... I'm a little worried that some keypresses might get lost when handing over control to Spotlight. Except for that, this should be fairly simple to implement.\r\n\r\nI would still prefer to have Flashlight fully integrated in Spotlight, provided this is possible by installing Flashlight with SIP disabled (and enabling it again after installation), but the suggested approach would be more robust against future moves by Apple."}}