1
0
mirror of https://github.com/golang/go synced 2024-11-18 06:54:49 -07:00
go/gopls
zikaeroh 0cc1aa72b3 gopls/internal/hooks, internal/lsp/source: only match full words in link regexes
The current URL regexes (including xurls) match links in any part of a
string. However, this leads to odd underlining within words which just
so happen to have valid domain names as substrings. For example, a
comment which contains "reflect.DeepEqual" will match the URL regex as
"reflect.de" is a domain name.

Ensure that the URLs only match full regex words by adding \b around the
expressions. For xurls, this is done by pulling the expression out of
Relaxed() and recreating the Regexp.

While I'm here, make the non-gopls module expression prefer the longest
match, as xurls does.

Change-Id: I403db970fa1661c443b0693c03f8dee114f8eaff
Reviewed-on: https://go-review.googlesource.com/c/tools/+/240738
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2020-07-02 04:49:44 +00:00
..
doc gopls/doc/troubleshooting.md: update the gopls output channel name 2020-07-01 15:12:20 +00:00
integration gopls/integration: fix typo aloso => also 2020-06-23 04:56:35 +00:00
internal/hooks gopls/internal/hooks, internal/lsp/source: only match full words in link regexes 2020-07-02 04:49:44 +00:00
test internal/lsp: share common command line test functionality 2020-04-28 14:04:16 +00:00
go.mod gopls: update dependencies in the go.mod 2020-05-18 20:39:08 +00:00
go.sum gopls: update dependencies in the go.mod 2020-05-18 20:39:08 +00:00
main.go gopls: add the link to the gopls/README.md 2020-02-03 22:28:49 +00:00
README.md fix: using section links to IDE specific doc 2019-12-17 14:12:49 +00:00

gopls documentation

gopls (pronounced: "go please") is the official language server for the Go language.

Status

It is currently in alpha, so it is not stable.

You can see more information about the status of gopls and its supported features here.

Roadmap

The current goal is a fully stable build with the existing feature set, aiming for the first half of 2020, with release candidates earlier in the year.

This will be the first build that we recommend people use, and will be tagged as the 1.0 version. You can see the set of things being worked on in the 1.0 milestone, in general we are focused on stability, specifically, making sure we have a reliable service that produces an experience in module mode that is not a retrograde step from the old tools in GOPATH mode.

There is also considerable effort being put into testing in order to make sure that we both have a stable service and also that we do not regress after launch.

While we may continue to accept contributions for new features, they may be turned off behind a configuration flag if they are not yet stable. See the gopls unplanned milestone for deprioritized features.

This is just a milestone for gopls itself. We work with editor integrators to make sure they can use the latest builds of gopls, and will help them use the 1.0 version as soon as it is ready, but that does not imply anything about the stability, supported features or version of the plugins.

Using

In general you should not need to know anything about gopls, it should be integrated into your editor for you.

To install for your specific editor you can follow the following instructions

See the user guide for more information, including the how to install gopls by hand if you need.

Issues

If you are having issues with gopls, please first check the known issues before following the troubleshooting guide. If that does not give you the information you need, reach out to us.

You can chat with us on:

If you think you have an issue that needs fixing, or a feature suggestion, then please make sure you follow the steps to file an issue with the right information to allow us to address it.

If you need to talk to us directly (for instance to file an issue with confidential information in it) you can reach out directly to @stamblerre or @ianthehat.

More information

If you want to know more about it, have an unusual use case, or want to contribute, please read the following documents