{"action":"created","issue":{"url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/714","repository_url":"https://api.github.com/repos/jupyterlab/jupyterlab","labels_url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/714/labels{/name}","comments_url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/714/comments","events_url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/714/events","html_url":"https://github.com/jupyterlab/jupyterlab/issues/714","id":172274546,"number":714,"title":"Trigger tooltips on shift-tab","user":{"login":"lampts","id":656949,"avatar_url":"https://avatars.githubusercontent.com/u/656949?v=3","gravatar_id":"","url":"https://api.github.com/users/lampts","html_url":"https://github.com/lampts","followers_url":"https://api.github.com/users/lampts/followers","following_url":"https://api.github.com/users/lampts/following{/other_user}","gists_url":"https://api.github.com/users/lampts/gists{/gist_id}","starred_url":"https://api.github.com/users/lampts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lampts/subscriptions","organizations_url":"https://api.github.com/users/lampts/orgs","repos_url":"https://api.github.com/users/lampts/repos","events_url":"https://api.github.com/users/lampts/events{/privacy}","received_events_url":"https://api.github.com/users/lampts/received_events","type":"User","site_admin":false},"labels":[{"id":392848193,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/cat:Design%20and%20UX","name":"cat:Design and UX","color":"5319e7","default":false},{"id":392843775,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/cat:Feature%20Parity","name":"cat:Feature Parity","color":"5319e7","default":false},{"id":412260753,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/component:Completer","name":"component:Completer","color":"1d76db","default":false},{"id":412241733,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/component:Notebook","name":"component:Notebook","color":"1d76db","default":false},{"id":506231377,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/status:Stubborn","name":"status:Stubborn","color":"0e8a16","default":false},{"id":387307883,"url":"https://api.github.com/repos/jupyterlab/jupyterlab/labels/type:Enhancement","name":"type:Enhancement","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/jupyterlab/jupyterlab/milestones/1","html_url":"https://github.com/jupyterlab/jupyterlab/milestone/1","labels_url":"https://api.github.com/repos/jupyterlab/jupyterlab/milestones/1/labels","id":1866462,"number":1,"title":"Beta","description":"A version of JupyterLab that is reasonably feature-complete and stable enough to be usable for day-to-day work. Targeted to early adopters and advanced users who are willing to put up with some rough edges and a few missing features and small regressions.\r\n\r\nAfter we reach this milestone, the project enters beta status. We'll continue to release `0.x.x` versions until we've satisfied the [Milestone 1.0](https://github.com/jupyter/jupyterlab/milestones/2) criteria.","creator":{"login":"fperez","id":57394,"avatar_url":"https://avatars.githubusercontent.com/u/57394?v=3","gravatar_id":"","url":"https://api.github.com/users/fperez","html_url":"https://github.com/fperez","followers_url":"https://api.github.com/users/fperez/followers","following_url":"https://api.github.com/users/fperez/following{/other_user}","gists_url":"https://api.github.com/users/fperez/gists{/gist_id}","starred_url":"https://api.github.com/users/fperez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fperez/subscriptions","organizations_url":"https://api.github.com/users/fperez/orgs","repos_url":"https://api.github.com/users/fperez/repos","events_url":"https://api.github.com/users/fperez/events{/privacy}","received_events_url":"https://api.github.com/users/fperez/received_events","type":"User","site_admin":false},"open_issues":36,"closed_issues":485,"state":"open","created_at":"2016-07-06T00:50:01Z","updated_at":"2016-12-23T21:29:56Z","due_on":null,"closed_at":null},"comments":34,"created_at":"2016-08-20T14:53:45Z","updated_at":"2016-12-23T23:09:50Z","closed_at":null,"body":"I'd love to have tooltip(using Shift Tab in jupyter notebook) to show the help/list of arguments.\n"},"comment":{"url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/comments/269055244","html_url":"https://github.com/jupyterlab/jupyterlab/issues/714#issuecomment-269055244","issue_url":"https://api.github.com/repos/jupyterlab/jupyterlab/issues/714","id":269055244,"user":{"login":"Carreau","id":335567,"avatar_url":"https://avatars.githubusercontent.com/u/335567?v=3","gravatar_id":"","url":"https://api.github.com/users/Carreau","html_url":"https://github.com/Carreau","followers_url":"https://api.github.com/users/Carreau/followers","following_url":"https://api.github.com/users/Carreau/following{/other_user}","gists_url":"https://api.github.com/users/Carreau/gists{/gist_id}","starred_url":"https://api.github.com/users/Carreau/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Carreau/subscriptions","organizations_url":"https://api.github.com/users/Carreau/orgs","repos_url":"https://api.github.com/users/Carreau/repos","events_url":"https://api.github.com/users/Carreau/events{/privacy}","received_events_url":"https://api.github.com/users/Carreau/received_events","type":"User","site_admin":false},"created_at":"2016-12-23T23:09:50Z","updated_at":"2016-12-23T23:09:50Z","body":"> But to halt that exploration\r\n> process and copy the painful user experience we have in the classic\r\n> notebook is not helpful.\r\n\r\nI didn't asked to stop that exploration. I asked to implement tooltips to match feature parity and explore after. I don't want to keep pushing the goal of what JupyterLab is before we reach a used version.\r\n\r\n> We may need to make tradeoffs and implement something simple for the beta,\r\n> but I don't think that means implementing the full tooltip UI/UX from the\r\n> classic notebook (with the three different modes)\r\n\r\nActually 4, it's fine if there is only the first one (I think). So as Fernando said, 2, 3 and 4 were implemented through time because of user request. If you don't even know what they do, then you should to understand user need. Note that the 4 modes are the default one and are changeable by user config as well and extend to N.\r\n\r\n> Are folks open to that type of interaction?\r\n[Note: continuous inspection]\r\n\r\nNo, because we tried, and we have reasons not to do it that are underlined after. We had several discussion as to what was needed for this to be doable, and better and that require changes to the protocol/implementation. And in particular is in most part taking care of by Microsoft server language protocol. but this is not the place for such a discussion.\r\n\r\n\r\n> In reality, VS Code does have separate completion and tooltip UIs, but the user has a single unified experience. We could implement this as a generic and extensible framework for triggering help overlays upon typing. Would would need some heuristics or logic to help decide which overlay was triggered (maybe all are and the first to reply wins).\r\n\r\nThere are a number of issue where we discussed this. There are a number of discussions where we propose improvement to UI/Protocol on top of Inspection/Completion, and where we talk about heuristic. Again, nobody disagree that we should not implement these.\r\n\r\nKeep in mind that what you are showing here is _mostly_ working on localhost, and with static analysis. So changes need to be made. And trying to convince us that these have good ideas is a lost cause as we already agree.\r\n\r\nWe are just saying : Not now. Now is not the right time. Let's focus on making the transition painless, make the transition soon. Gather feedback. \r\n\r\n*then* provide alternatives. As plugin, that may (or may not) need changes/addition to the protocol.\r\n\r\nLastly I want say that from the discussion I _feel_ like you are pushing this as if you were the only one who thought about the issue of completion vs inspection. I assure you this is not the case, as some discussion [are 3 years old](https://github.com/ipython/ipython/issues/4290) and not have if some of us have actully made mocks about what it could look like:\r\n\r\n![unified-tab-complete](https://cloud.githubusercontent.com/assets/335567/21463412/31781bf2-c969-11e6-9bee-e35b781f4c57.png)\r\n\r\n[borrowed from an nteract issue I contributed to]\r\n\r\nThe kernel being busy also block completion, it's not always a question of cancelling. \r\nAnd Oh, Panda's docstring are dynamic so trigger side effects, and can be slow to compute. \r\nAnd yes, that's also why I'd like a way to build python documentation ahead of time and store a `__qualname__` -> `mimebundle` accessible to the server.\r\n\r\nSo yes I thought about these problem, at great length, and I get where you are going. We even had a weekly dev meeting discussion that ended up in a Mailing list thread (with Nick Bollweg). Note that I also  wrote most of the UI about completion and tooltips. I have plenty of idea of what is wrong with it. And lot of knowledge of the available and limitation of API and design issues, plus tricky bits of underlying API, and alternative API and how what their limitation have.\r\n\r\nSo I will make a last suggestion: split this into 2 issues:\r\n - What is the minimal set of the current notebook tooltip behavior that _should_ be implemented in Lab. As is. No modifications.\r\n - Discuss (at length), changes that we can do to tooltip/completion, how and when, the _why_ (of _why not_ of each choice. \r\n\r\nSidenote: I have felt more and more dismissal of my (and other people) various though (and expertise) on some area of the project for a few (several ?) month now. And I'm starting to get tired of this, at having to justify myself at length again and again. That's part of why I'm slowly driven away these days and lowered my involvement in these discussions and unsubscribed from many repositories. If there is a choice to make I will [choose](https://snarky.ca/why-i-took-october-off-from-oss-volunteering/) not caring, not maintaining, and unsubscribing over getting stressed.\r\n\r\n\r\n "}}
{"actor":{"display_login":"Carreau"}}