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

Update other-editors.scrbl to include langserver #4924

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

spdegabrielle
Copy link
Sponsor Member

Checklist
  • Bugfix
  • Feature
  • tests included
  • documentation

Description of change

add Racket-langserver to https://docs.racket-lang.org/guide/other-editors.html

@spdegabrielle
Copy link
Sponsor Member Author

see also #4925

@beelzebielsk
Copy link

Two notes: I personally would not include capabilities of the language server in a discussion about setting up your editor. That's really a detail of the language server and I wouldn't want to update that every time the language server is capabilities change or grow. Second note is I don't believe bracket language server is under active development. If I remember correctly it is stalled and the maintainers have said so in an issue somewhere.

@spdegabrielle
Copy link
Sponsor Member Author

Two notes: I personally would not include capabilities of the language server in a discussion about setting up your editor. That's really a detail of the language server and I wouldn't want to update that every time the language server is capabilities change or grow. Second note is I don't believe bracket language server is under active development. If I remember correctly it is stalled and the maintainers have said so in an issue somewhere.

Done

@section{racket-langserver}

The @tt{racket-langserver} is a @hyperlink["http://langserver.org/"]{Language Server Protocol}
implementation for Racket. This project seeks to use @hyperlink["https://github.com/racket/drracket"]{DrRacket's public APIs}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you want a link here, I think it should be @seclink[#:indirect? #t #:doc '(lib "scribblings/drracket-tools/drracket-tools.scrbl") "top"]{DrRacket's public APIs}.


@section{racket-langserver}

The @tt{racket-langserver} is a @hyperlink["http://langserver.org/"]{Language Server Protocol}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should use https.

Comment on lines 300 to 303
@subsection{Atom}

You can use the @hyperlink["https://github.com/cfinegan/atom-ide-racket"]{atom-ide-racket} package. The language
server will be automatically installed when @tt{atom-ide-racket} installs.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since Atom was discontinued over a year ago, I'd be inclined not to mention it here.

Copy link
Contributor

@LiberalArtist LiberalArtist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think The Racket Guide should provide all of these details. Instead, I think the first step should be to contribute Scribble documentation to https://github.com/jeapostrophe/racket-langserver (which may require a decision from its maintainers about how to structure the packaging to minimize dependencies). Then, I think the guide should get something like a @section{Other Editors via the Language Server Protocol} that indirect-links to the new racket-langserver documentation.

In particular, The Racket Guide is part of the Racket release cycle, and racket-langserver is not. Running raco pkg install racket-langserver will install the latest release of the package, not the version from the date of the Racket release, so it makes sense to link to documentation matching the package actually being installed.

add @seclink[#:indirect? #t #:doc '(lib "scribblings/drracket-tools/drracket-tools.scrbl") "top"]{DrRacket's public APIs}
drop atom , add https
@spdegabrielle
Copy link
Sponsor Member Author

I don't think The Racket Guide should provide all of these details. Instead, I think the first step should be to contribute Scribble documentation to https://github.com/jeapostrophe/racket-langserver (which may require a decision from its maintainers about how to structure the packaging to minimize dependencies). Then, I think the guide should get something like a @section{Other Editors via the Language Server Protocol} that indirect-links to the new racket-langserver documentation.

an initial PR has been created at jeapostrophe/racket-langserver#130

That said, I believe this is a pragmatic change that will enhance the experience for new Racket users.

@subsection{Installation and usage}

A Racket runtime is a prerequisite, so before using @tt{racket-langserver}, ensure that a Racket runtime
is installed. You can install an from the @hyperlink["https://download.racket-lang.org"]{official download page}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: install an

Copy link
Sponsor Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

@mfelleisen
Copy link
Collaborator

Perhaps there should be a Newbie guide that includes such details.

@spdegabrielle
Copy link
Sponsor Member Author

Perhaps there should be a Newbie guide that includes such details.

@mfelleisen I see 'getting started' as the newbie guide.

#4925 adds a link to the editors chapter.

@spdegabrielle
Copy link
Sponsor Member Author

@mfelleisen is there any barrier to this PR ?

  • if there is something wrong I can fix it.
  • if it is undesirable I will close it.

I don't want it hanging around like a bad smell.

I won't be creating an newbie guide today. if you like this PR can be considered an interim measure until a newbie guide is created.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants