{"id":292107,"date":"2022-10-28T14:55:07","date_gmt":"2022-10-28T13:55:07","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=go&#038;p=292107"},"modified":"2022-11-03T16:43:03","modified_gmt":"2022-11-03T15:43:03","slug":"goland-2022-3-eap-5-support-for-links-lists-and-new-headings-in-go-doc-comments","status":"publish","type":"go","link":"https:\/\/blog.jetbrains.com\/zh-hans\/go\/2022\/10\/28\/goland-2022-3-eap-5-support-for-links-lists-and-new-headings-in-go-doc-comments","title":{"rendered":"GoLand 2022.3 EAP #5: Support for Links, Lists, and New Headings in Go Doc Comments"},"content":{"rendered":"\n<p>The fifth build of the GoLand 2022.3 EAP is now available!&nbsp;<\/p>\n\n\n\n<p>You can get the EAP build via the <a href=\"https:\/\/www.jetbrains.com\/toolbox\/app\/?_gl=1*r6u7kg*_ga*MTMzMTM3NzQ1MS4xNjIxOTM2MTky*_ga_0WQ2ZF5VGT*MTYyMjc5ODA0MS42MS4xLjE2MjI3OTg4NzguMA..&amp;_ga=2.128561929.463726163.1622398163-1331377451.1621936192&amp;_gac=1.257356409.1622733323.Cj0KCQjw--GFBhDeARIsACH_kdYJNa3me-RrM8rVpyFt4Ep5vqVq1MW0ib0F_aqcJRnqwiJVKbB3oFIaAmPDEALw_wcB\" target=\"_blank\" rel=\"noopener\">Toolbox App<\/a>, download it from our <a href=\"https:\/\/www.jetbrains.com\/go\/nextversion\/?_gl=1*19wtq3y*_ga*MTMzMTM3NzQ1MS4xNjIxOTM2MTky*_ga_0WQ2ZF5VGT*MTYyMjc5ODA0MS42MS4xLjE2MjI3OTg4NzguMA..&amp;_ga=2.165313978.463726163.1622398163-1331377451.1621936192&amp;_gac=1.57473368.1622733323.Cj0KCQjw--GFBhDeARIsACH_kdYJNa3me-RrM8rVpyFt4Ep5vqVq1MW0ib0F_aqcJRnqwiJVKbB3oFIaAmPDEALw_wcB\" target=\"_blank\" rel=\"noopener\">website<\/a>, use a snap package (for Ubuntu), or from inside GoLand, select <em>Check IDE updates for Early Access Program<\/em> in <em>Preferences\/Settings<\/em> | <em>Appearance &amp; Behavior<\/em> | <em>System<\/em> <em>Settings<\/em> | <em>Updates<\/em>.<\/p>\n\n\n\n<p align=\"center\">\n    <a class=\"jb-download-button\" href=\"https:\/\/www.jetbrains.com\/go\/nextversion\/\" target=\"_blank\" rel=\"noopener\">      \n        Download GoLand 2022.3 EAP #5\n    <\/a>\n<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Updates to Go doc comments<\/h2>\n\n\n\n<p>The latest Go release, version 1.19, has added support for links, lists, and new headings in doc comments.&nbsp;<\/p>\n\n\n\n<p>Starting from this EAP build, GoLand also supports these new features.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Support for links&nbsp;<\/h3>\n\n\n\n<p>There are two types of <a href=\"https:\/\/tip.golang.org\/doc\/comment\" target=\"_blank\" rel=\"noopener\">links<\/a> in Go doc comments: links and doc links.&nbsp;<\/p>\n\n\n\n<p>Here\u2019s what links look like:&nbsp;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/ Package json implements encoding and decoding of JSON as defined in\n\/\/ &#091;RFC 7159]. The mapping between JSON and Go values is described\n\/\/ in the documentation for the Marshal and Unmarshal functions.\n\/\/\n\/\/ For an introduction to this package, see the article\n\/\/ \u201c&#091;JSON and Go].\u201d\n\/\/\n\/\/ &#091;RFC 7159]: https:\/\/tools.ietf.org\/html\/rfc7159\n\/\/ &#091;JSON and Go]: https:\/\/golang.org\/doc\/articles\/json_and_go.html<\/pre>\n\n\n\n<p>Doc links are \u201clinks of the form <code>[Name1]<\/code> or <code>[Name1.Name2]<\/code> to refer to exported identifiers in the current package, or <code>[pkg]<\/code>, <code>[pkg.Name1]<\/code>, or <code>[pkg.Name1.Name2]<\/code> to refer to identifiers in other packages\u201d.<\/p>\n\n\n\n<p>Here\u2019s an example from the<a href=\"https:\/\/tip.golang.org\/doc\/comment\" target=\"_blank\" rel=\"noopener\"> Go documentation<\/a>:&nbsp;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/ ReadFrom reads data from r until EOF and appends it to the buffer, growing\n\/\/ the buffer as needed. The return value n is the number of bytes read. Any\n\/\/ error except &#091;io.EOF] encountered during the read is also returned. If the\n\/\/ buffer becomes too large, ReadFrom will panic with &#091;ErrTooLarge].\nfunc (b *Buffer) ReadFrom(r io.Reader) (n int64, err error) {\n    ...\n}<\/pre>\n\n\n\n<p>We\u2019ve added references to doc links in GoLand. Clicking on them leads to the referenced element, while clicking on a text link leads to a text-link definition.&nbsp;<\/p>\n\n\n\n<p>Both text and doc links are rendered as links in the <em>Quick Documentation<\/em> popup and the <em>Documentation<\/em> tool window.<\/p>\n\n\n\n<p>To see the <em>Quick Documentation<\/em> popup, press <em>F1<\/em> (<em>Ctrl\u2009+\u2009Q<\/em>). To open the <em>Documentation<\/em> tool window, press <em>F1<\/em> (<em>Ctrl\u2009+\u2009Q<\/em>) again.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/links-go-docs.mp4\"><\/video><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Support for new headings&nbsp;<\/h3>\n\n\n\n<p>Starting from Go 1.19, a&nbsp; heading is a line that begins with a number sign (<code>#<\/code>) followed by a space and the heading text. Before, headings were <a href=\"https:\/\/tip.golang.org\/doc\/comment\" target=\"_blank\" rel=\"noopener\">identified<\/a> \u201cimplicitly by single-line paragraphs satisfying certain conditions, most notably the lack of any terminating punctuation\u201d.<\/p>\n\n\n\n<p>New headings are rendered as HTML headings in GoLand\u2019s <em>Quick Documentation<\/em> popup and the <em>Documentation<\/em> tool window.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1500\" height=\"659\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/10\/headings-go-doc.png\" alt=\"\" class=\"wp-image-292240\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Support for lists<\/h3>\n\n\n\n<p>A list item consists of a star, plus, dash, or Unicode bullet, followed by a space or tab and then text. Lists are rendered as HTML lists in GoLand\u2019s <em>Quick Documentation<\/em> popup and the <em>Documentation<\/em> tool window.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1500\" height=\"760\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/10\/lists-go-doc.png\" alt=\"\" class=\"wp-image-292229\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Databases: Redis support<\/h2>\n\n\n\n<p>A preliminary iteration of long-awaited <a href=\"https:\/\/blog.jetbrains.com\/datagrip\/2022\/11\/02\/datagrip-2023-3-eap-2-redis-support\/\">support for Redis<\/a> has been implemented. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1500\" height=\"721\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/10\/redis.png\" alt=\"\" class=\"wp-image-292218\"\/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">User interface&nbsp;<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Improved <em>Tips of the Day<\/em><\/h3>\n\n\n\n<p>We\u2019ve enhanced the <em>Tips of the Day<\/em> feature \u2013 a learning tool that helps you explore GoLand and its features.&nbsp;<\/p>\n\n\n\n<p>Each tip now has a heading to help you understand which area of the IDE is being described and decide whether you want to learn more about the topic or skip it.<\/p>\n\n\n\n<p>We\u2019ve fine-tuned the algorithm that determines which tips appear so you\u2019ll see the ones that are most relevant to your experience with the IDE and the project you\u2019re working on.&nbsp;<\/p>\n\n\n\n<p>With the new approach to sorting, you\u2019ll first see tips about features you\u2019ve never used before while tips that are considered irrelevant to the specific project (based on the file extensions and technologies being used) won\u2019t be shown initially.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1500\" height=\"750\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/10\/tipoftheday.png\" alt=\"\" class=\"wp-image-292207\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Updated bookmarks&nbsp;<\/h3>\n\n\n\n<p>We\u2019ve implemented a few UI improvements to fine-tune the <em>Bookmarks <\/em>functionality after the merge of the <em>Favorites<\/em> and <em>Bookmarks<\/em> instances <a href=\"https:\/\/blog.jetbrains.com\/go\/2021\/09\/30\/goland-2021-3-eap-build-2-is-out\/#New_Bookmarks_window\">in the 2021.3 release<\/a>.<\/p>\n\n\n\n<p>It is once again possible to bookmark files from editor tabs. Just right-click on a tab to invoke the context menu and select <em>Bookmarks<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/add-bookmark.mp4\"><\/video><\/figure>\n\n\n\n<p>In addition, you can add all files in all open tabs to <em>Bookmarks<\/em>. You can either invoke the same context menu and select <em>Bookmark Open Tabs<\/em>, or call this action using the three-dots icon located on the right-hand side of the editor tabs pane. The IDE will put all open tabs into a new list of bookmarks, which you can name as you like.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/resources.jetbrains.com\/storage\/products\/blog\/wp-content\/uploads\/bookmark-create-list.mp4\"><\/video><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Other improvements&nbsp;<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Installers for Windows ARM64<\/h3>\n\n\n\n<p>We\u2019ve started distributing installers for Windows ARM64 \u2013 you can already download them from our <a href=\"https:\/\/www.jetbrains.com\/go\/download\/#section=windows\" target=\"_blank\" rel=\"noopener\">website<\/a> or the <a href=\"https:\/\/www.jetbrains.com\/toolbox-app\/\" target=\"_blank\" rel=\"noopener\">Toolbox App<\/a>.<\/p>\n\n\n\n<p>That\u2019s it for today! We\u2019d love to hear what you think about the new features. Ping us on <a href=\"https:\/\/twitter.com\/GoLandIDE\" target=\"_blank\" rel=\"noopener\">Twitter<\/a>, leave your comments here, open an issue in <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/GO?_gl=1*1ryja4i*_ga*MTMzMTM3NzQ1MS4xNjIxOTM2MTky*_ga_0WQ2ZF5VGT*MTYyMjQ3MTM1Ny4zOS4xLjE2MjI0NzE0NDkuMA..&amp;_ga=2.61428393.463726163.1622398163-1331377451.1621936192&amp;_gac=1.49805012.1621529532.Cj0KCQjwkZiFBhD9ARIsAGxFX8CLxXvfJzlAlF42EN3ry-0foEM5GdeLKEOzRSUXC2Dj1LK8EQNhW5UaAoKBEALw_wcB\" target=\"_blank\" rel=\"noopener\">our tracker<\/a>, or drop us a message in the <a href=\"https:\/\/invite.slack.golangbridge.org\/\" target=\"_blank\" rel=\"noopener\">Gophers Slack<\/a> #goland channel. Thanks for reading!<\/p>\n","protected":false},"author":1254,"featured_media":281514,"comment_status":"closed","ping_status":"closed","template":"","categories":[826],"tags":[7140,91],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/go\/292107"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/go"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/types\/go"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/users\/1254"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/comments?post=292107"}],"version-history":[{"count":10,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/go\/292107\/revisions"}],"predecessor-version":[{"id":294590,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/go\/292107\/revisions\/294590"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media\/281514"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media?parent=292107"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/categories?post=292107"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/tags?post=292107"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/cross-post-tag?post=292107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}