{"action":"created","issue":{"url":"https://api.github.com/repos/spyder-ide/spyder/issues/2590","labels_url":"https://api.github.com/repos/spyder-ide/spyder/issues/2590/labels{/name}","comments_url":"https://api.github.com/repos/spyder-ide/spyder/issues/2590/comments","events_url":"https://api.github.com/repos/spyder-ide/spyder/issues/2590/events","html_url":"https://github.com/spyder-ide/spyder/pull/2590","id":98669201,"number":2590,"title":"Redesign file switcher (a la Sublime Text)","user":{"login":"goanpeca","id":3627835,"avatar_url":"https://avatars.githubusercontent.com/u/3627835?v=3","gravatar_id":"","url":"https://api.github.com/users/goanpeca","html_url":"https://github.com/goanpeca","followers_url":"https://api.github.com/users/goanpeca/followers","following_url":"https://api.github.com/users/goanpeca/following{/other_user}","gists_url":"https://api.github.com/users/goanpeca/gists{/gist_id}","starred_url":"https://api.github.com/users/goanpeca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goanpeca/subscriptions","organizations_url":"https://api.github.com/users/goanpeca/orgs","repos_url":"https://api.github.com/users/goanpeca/repos","events_url":"https://api.github.com/users/goanpeca/events{/privacy}","received_events_url":"https://api.github.com/users/goanpeca/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/spyder-ide/spyder/labels/Editor","name":"Editor","color":"d4c5f9"},{"url":"https://api.github.com/repos/spyder-ide/spyder/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"goanpeca","id":3627835,"avatar_url":"https://avatars.githubusercontent.com/u/3627835?v=3","gravatar_id":"","url":"https://api.github.com/users/goanpeca","html_url":"https://github.com/goanpeca","followers_url":"https://api.github.com/users/goanpeca/followers","following_url":"https://api.github.com/users/goanpeca/following{/other_user}","gists_url":"https://api.github.com/users/goanpeca/gists{/gist_id}","starred_url":"https://api.github.com/users/goanpeca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goanpeca/subscriptions","organizations_url":"https://api.github.com/users/goanpeca/orgs","repos_url":"https://api.github.com/users/goanpeca/repos","events_url":"https://api.github.com/users/goanpeca/events{/privacy}","received_events_url":"https://api.github.com/users/goanpeca/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/spyder-ide/spyder/milestones/5","html_url":"https://github.com/spyder-ide/spyder/milestones/v3.0","labels_url":"https://api.github.com/repos/spyder-ide/spyder/milestones/5/labels","id":982077,"number":5,"title":"v3.0","description":"New major release","creator":{"login":"spyder-issues-migrator","id":11021581,"avatar_url":"https://avatars.githubusercontent.com/u/11021581?v=3","gravatar_id":"","url":"https://api.github.com/users/spyder-issues-migrator","html_url":"https://github.com/spyder-issues-migrator","followers_url":"https://api.github.com/users/spyder-issues-migrator/followers","following_url":"https://api.github.com/users/spyder-issues-migrator/following{/other_user}","gists_url":"https://api.github.com/users/spyder-issues-migrator/gists{/gist_id}","starred_url":"https://api.github.com/users/spyder-issues-migrator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spyder-issues-migrator/subscriptions","organizations_url":"https://api.github.com/users/spyder-issues-migrator/orgs","repos_url":"https://api.github.com/users/spyder-issues-migrator/repos","events_url":"https://api.github.com/users/spyder-issues-migrator/events{/privacy}","received_events_url":"https://api.github.com/users/spyder-issues-migrator/received_events","type":"User","site_admin":false},"open_issues":132,"closed_issues":144,"state":"open","created_at":"2015-02-16T23:17:23Z","updated_at":"2015-08-11T01:34:35Z","due_on":null,"closed_at":null},"comments":20,"created_at":"2015-08-03T04:33:40Z","updated_at":"2015-08-11T01:35:24Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/spyder-ide/spyder/pulls/2590","html_url":"https://github.com/spyder-ide/spyder/pull/2590","diff_url":"https://github.com/spyder-ide/spyder/pull/2590.diff","patch_url":"https://github.com/spyder-ide/spyder/pull/2590.patch"},"body":"Fixes #2340 \r\nFixes #2141\r\n\r\n---\r\n## Description\r\nContinues where PR #2343 left.\r\n\r\nThe file switcher now looks like this: \r\n![switcher](https://cloud.githubusercontent.com/assets/3627835/9032662/7230d7d4-3986-11e5-9c5b-f7faaa22e5b8.png)\r\n\r\n## Original Features\r\n- [x] matching text is highlighted in bold\r\n- [x] up/down keys can be used to navigate list when text field has focus\r\n- [x] navigating the list changes the active tab in the editor, but will revert if dialog is canceled\r\n- [x] text field has focus when opened\r\n- [x] the dialog is more compact and is positioned at the top, centre, of the editor\r\n- [x] global context shortcut - I couldn't work out how to change this and keep Spyder happy.  I'd suggest Ctrl-P as default, but the main thing is to make it global rather than Editor-specific.\r\n- [x] path info in the list in addition to file names (I think this is relatively easy now that there's an HTMLdelegate involved, but I could be wrong).\r\n- [x] goto line - there is currently a separate dialog for this, but it might be nice to combine the two as in Sublime.\r\n\r\n## New Features\r\n- [x] Code leanup and refactoring\r\n- [x] fuzzy matching\r\n- [x] dialog resize based on contents\r\n- [x] goto symbol - this would basically use the same data as the Outline tool. Again, this is something provided by Sublime.\r\n- [x] Fix line number displayed\r\n- [ ] Restore original line numbers on cancel when looking for symbols\r\n- [ ] Fill-in missing docstring"},"comment":{"url":"https://api.github.com/repos/spyder-ide/spyder/issues/comments/129665045","html_url":"https://github.com/spyder-ide/spyder/pull/2590#issuecomment-129665045","issue_url":"https://api.github.com/repos/spyder-ide/spyder/issues/2590","id":129665045,"user":{"login":"goanpeca","id":3627835,"avatar_url":"https://avatars.githubusercontent.com/u/3627835?v=3","gravatar_id":"","url":"https://api.github.com/users/goanpeca","html_url":"https://github.com/goanpeca","followers_url":"https://api.github.com/users/goanpeca/followers","following_url":"https://api.github.com/users/goanpeca/following{/other_user}","gists_url":"https://api.github.com/users/goanpeca/gists{/gist_id}","starred_url":"https://api.github.com/users/goanpeca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goanpeca/subscriptions","organizations_url":"https://api.github.com/users/goanpeca/orgs","repos_url":"https://api.github.com/users/goanpeca/repos","events_url":"https://api.github.com/users/goanpeca/events{/privacy}","received_events_url":"https://api.github.com/users/goanpeca/received_events","type":"User","site_admin":false},"created_at":"2015-08-11T01:35:24Z","updated_at":"2015-08-11T01:35:24Z","body":"I know I know!, this PR was already super large but in the process of implementing the symbol thing, the codebase vastly improved, it was messy before that... that is why I did it.\r\n\r\nWhat you ask is already already the default, if you tap an @ it will look for symbols in the active file."}}