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アプリケーション開発

blog-page_footer_336




blog-page_footer_336




-BackEnd
-

執筆者:


comment

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

CAPTCHA


関連記事

rails

Rails5.2+Pumaのデプロイ設定

1 はじめに1.1 環境2 Pumaとは?2.1 Unicornとの比較2.2 Pumaのスレッド3 Pumaの使い方4 デプロイ設定4.1 Gemを追加4.2 Capfileの設定4.3 deplo ...

[Dialogflow + CF] アクア様が罵倒してくれたり天気を教えてくれるSlackボットを作る

1 はじめに2 Dialogflowの準備2.1 プロジェクトを作る2.2 Intentを作る2.3 試してみる2.4 WELCOME Intentを作る3 Slackボットを作る4 名前を答える5 ...

Vue.js+TypeScriptな環境整備

1 はじめに2 vue-cliのインストール3 プロジェクトの作成3.1 機能の選択3.2 シンタックスの選択3.3 CSSプリプロセッサの設定3.4 Unit test3.5 E2E test3.6 ...

rails

Capistrano3でRailsアプリケーションをデプロイする

1 はじめに1.1 前提条件2 Cpistranoについて3 導入3.1 Gemのインストール3.2 設定ファイルの準備4 デプロイ設定4.1 Capfileを修正する4.2 各環境で共通のデプロイ設 ...

Go言語

Go言語 gocraft/workを使って常駐プロセスでジョブを処理させる

1 はじめに2 workの特徴3 workを使えるようにする3.1 Redisのインストール3.2 Go用のライブラリインストール4 Enqueue〜ジョブ実行まで4.1 Enqueue側4.2 ジョ ...

フォロー

blog-page_side_responsive

2022年8月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

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