Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Better live docs #111

Open
4 of 14 tasks
fonsp opened this issue May 14, 2020 · 14 comments · Fixed by #547
Open
4 of 14 tasks

Better live docs #111

fonsp opened this issue May 14, 2020 · 14 comments · Fixed by #547
Labels
enhancement New feature or request frontend Concerning the HTML editor help welcome If you are experienced in this topic - let us know!

Comments

@fonsp
Copy link
Owner

fonsp commented May 14, 2020

New discussion page

We created https://github.com/JuliaCommunity/live-docs-discussion/discussions as a dedicated place to discuss Pluto's Live Docs feature, and future ideas for Julia's documentation in general! Take a look!


Some improvements:

  • Show what is currently being searched for
  • Support cross-reference links between docs
  • Show that it is searching
  • Title of the docs should be a textbox where you can enter a query directly
  • Handle dots, like Module.funky
  • Function arguments
  • Show when the name is found but it has no docs
  • To the right of a cell might make more sense
  • Heuristics for which function is dispatched on - can VS Code do this nowadays? I guess that we can do this dynamically, since some of the types are known
  • Popup docs don't work for some symbols #832 (comment)
  • Popup docs don't work for some symbols #832 (comment)

Extras:

  • apropos(str) might be useful. Is resource intensive though, maybe write our own version that just returns the first hit? Although that might not be the most relevant one
  • Show filename and line number of defintion. Double cool if it is a clickable link to GitHub! (Like in methodtables shown as text/html) I found this useful when the docs are unclear or when you want to know how something works.

What is Julia's doc system missing? CLIPPY

  • Given an object, tell you what you can do with it. In OOP languages this is obj.<TAB> to autocomplete.

Please post other ideas and suggestions!

@fonsp fonsp added enhancement New feature or request A 🍉🍉 labels May 14, 2020
@fonsp fonsp added the help welcome If you are experienced in this topic - let us know! label Jun 9, 2020
@ilyagr
Copy link

ilyagr commented Aug 12, 2020

Given an object, tell you what you can do with it. In OOP languages this is obj. to autocomplete.

The simplest thing to do is to show the docs for typeof(x) when there are no useful docs for x.

The next step might be to find a way to show methodswith(typeof(x); [supertypes=true]) together with the docs for typeof(x). The output is kind of long to put into the Live Docs screen, but if you make it a tree based on which module different methods come from, it could be OK.

One problem is that adding supertypes=true is helpful for some types and harmful for others. Perhaps you could show supertypes(typeof(x)) if it's non-trivial. If the user clicks on one of the supertypes, you could show methodswith for that supertype.

@fonsp fonsp added the frontend Concerning the HTML editor label Aug 14, 2020
@fonsp
Copy link
Owner Author

fonsp commented Aug 17, 2020

Thanks! Perhaps as an experiment, you could take an existing notebook, and run the methods that @ilyagr suggested and see if the results would be helpful.

@fonsp
Copy link
Owner Author

fonsp commented Aug 30, 2020

About autocompleting functions that can be dispatched on something: https://discourse.julialang.org/t/why-is-multiple-dispatch-a-feature/31101/10?u=pfitzseb

@fonsp fonsp mentioned this issue Aug 30, 2020
5 tasks
@Avinash-Bhat

This comment has been minimized.

@fonsp

This comment has been minimized.

@Avinash-Bhat

This comment has been minimized.

@fonsp

This comment has been minimized.

@Avinash-Bhat

This comment has been minimized.

@fonsp fonsp reopened this Oct 14, 2020
@fonsp
Copy link
Owner Author

fonsp commented Oct 14, 2020

(Hiding the above conversation because it is resolved by 744e002)

@lungben
Copy link
Contributor

lungben commented Nov 9, 2020

One more wish:
Currently, when the notebook is busy executing a cell, the Live Docs are not displayed. It would be great if the Live Docs are always available, so that I can use the time waiting for a cell to be finished to look up info for writing the next cell.

@fonsp
Copy link
Owner Author

fonsp commented Nov 9, 2020

I don't think that we can get docs if the process is busy.

@danvinci
Copy link

danvinci commented Feb 3, 2021

Might make sense to add a ''go back'' arrow?

I often find myself going down a rabbit hole of 3-4 levels, might be useful keeping track of the last 5 items visited or whatever makes more sense UI and performance-wise.

@KristofferC
Copy link

JuliaLang/julia#38791 is related.

@fonsp
Copy link
Owner Author

fonsp commented Apr 22, 2021

New discussion page

We created https://github.com/JuliaCommunity/live-docs-discussion/discussions as a dedicated place to discuss Pluto's Live Docs feature, and future ideas for Julia's documentation in general! Take a look!

@fonsp fonsp removed the A 🍉🍉 label Dec 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request frontend Concerning the HTML editor help welcome If you are experienced in this topic - let us know!
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants