BackEnd

Go 1.19でGoDocに追加された機能

投稿日:

はじめに

8月2日にGo 1.19がリリースされました。Go 1.18ではGenericsを始め、大きな変更点がありましたが、Go 1.19では細かな変更が多くなっています。

今回はGo 1.19の内容で気になったGoDocの機能追加について紹介します。

Go 1.19のリリースノートはこちらです。

GoDocの機能追加

Go1.18までのGoDocは、段落やURLをリンクにするなど、非常にシンプルな機能しかありませんでした。

Go1.19では主に、

  • セクションタイトル
  • リンク
  • リスト

などが追加され、よりリッチな表現ができるようになりました。

それでは実際にこれらを使ってドキュメントを書いてみます。

セクションタイトル(Headings)

セクションタイトルを使うと、文字サイズが大きくなり、アンカーリンクを設置することができます。

セクションタイトルの書き方は、 #記号+半角スペース+テキスト となっています。また、セクションタイトルは連続して書くことができません。

ブラウザで表示すると以下のようになります。

セクションタイトル

リンク

リンクを修飾することができるようになりました。書式は以下の通りです。

[リンク名]: アドレス

ここで定義した [リンク名] をドキュメント内に埋め込むことで、リンクを含めることができます。

また、 [パッケージ名] とすることで、ドキュメント内の別パッケージなどにリンクすることもできます。

ブラウザで表示すると以下のようになります。

godoc link

リスト

リストでは番号なしのリストと番号つきのリストを表現できます。

番号なしのリストの記述は、 -+半角スペース+テキスト です。同様に、番号付きのリストの記述は、 数字+.+半角スペース+テキスト です。

ただし、以下の制約があります。

  • 各リストの先頭に半角スペースを2ついれる
  • リスト中にはインデントを入れられない
  • 番号なしリストと番号つきリストを同じリストのまとまりに入れられない

ブラウザで表示すると以下のようになります。

godoc list

パッケージの追加

また、 go/doc/comment という新しいパッケージが追加されました。このパッケージはコメントの解析と再フォーマット、そして HTML、Markdown、テキストへのレンダリングのサポートを提供します。

おまけ

自作したパッケージをGoDocで表示するには、 $GOROOT/src ディレクトリに含める必要があります。しかし、パッケージのコードがこのディレクトリにあると不便なので、下記のようにシンボリックリンクを作成して対応しました。

さいごに

Go 1.19でのGoDocの変更点について紹介しました。

おすすめ書籍

実用 Go言語 ―システム開発の現場で知っておきたいアドバイス エキスパートたちのGo言語 一流のコードから応用力を学ぶ Software Design plus 詳解Go言語Webアプリケーション開発

page_footer_responsive




-BackEnd
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

rails

Railsの低レベルキャッシュを使ってみた

1 はじめに1.1 環境2 ドキュメント3 準備3.1 configの確認3.2 キャッシュストア4 使ってみる4.1 #read、#write、#delete4.2 #fetch4.3 オプション4 ...

Go言語

Go言語でGinkgoを利用してBDDしてみた

1 はじめに2 BDDとは3 Ginkgoについて3.1 Ginkgoの概要3.1.1 Describe3.1.2 Context3.1.3 It3.1.4 JustBeforeEach3.1.5 B ...

Go言語

GoフレームワークGinでミドルウェアを使ってログインAPIを実装

1 はじめに2 ログインAPIの作成3 ログインのセッション管理4 ミドルウェア4.1 gin.Default()4.2 Logger4.3 Recovery4.4 sessions5 独自ミドルウェ ...

RSpecの個人的Tips集〜その1〜

1 はじめに2 テストコードの実行をスキップする3 共通のテストコードを用意する4 外部APIの返却値をスタブにする5 さいごに はじめに みなさん、テストコードは書かれているでしょうか? 私も極力書 ...

rails

deviseを使ってユーザ登録フォームを作る

1 はじめに1.1 前提条件2 deviseについて2.1 deviseとは2.2 deviseでできること3 登録処理の実装3.1 Gemのインストール3.2 deviseのインストール3.3 デフ ...

フォロー

blog-page_side_responsive

2022年8月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。