要件
- 選択した箇所に対して、documentを書いてくれる
- GenieAI のinsertボタンを押せば、完結する
- 選択したプログラミング言語に応じて、最も支配的なdocument形式で書いてくれる(or 設定値を読み込んで読んでくれても良い)
- 書くのはdocumentのコメントのみで、一行一行に書いてはいけない
環境
- gpt3.5 turbo
- marketplace.visualstudio.com
copilot labsと違って自分でプロンプト定義できるのが良いですね。 多分labsもそのうちできるようになると思う。
試した
※関数は超適当です
default
Q
Add comments for the following code
A
/**
* This function formats a date string to the nearest half hour.
*
* @param {number} a - Number representing a value.
* @param {number} b - Number representing another value.
* @returns {number} - A formatted date string in "yyyy/MM/dd HH:mm" format.
*/
export function formatDateToNearestHalfHour(a: number, b: number): number {
// create a new Date object
const date = new Date();
// get the current minutes of the hour
const minutes = date.getMinutes();
// round down the minutes to the nearest half hour
date.setMinutes(minutes - (minutes % 30));
// set the seconds to 0 to remove any seconds from the formatted date string
date.setSeconds(0);
// return the formatted date string using the formatDate function
return formatDate(date, "yyyy/MM/dd HH:mm")
}
ちょっと惜しい
2回目
Add comment for the following code on top of the code as a professional software engineer If the code is a function or class, please infer the programming language and write most appropriate documentation format.
たまにコメントが付く
3回目
Q
Add comment for the following code on top of the code as a professional software engineer If the code is a function or class, please infer the programming language and write most appropriate documentation format to the top of the code.
A
/**
* Returns a formatted date string to the nearest half hour.
*
* @param {number} a - A number representing some value.
* @param {number} b - Another number representing some value.
* @returns {number} - A formatted date string in the "yyyy/MM/dd HH:mm" format.
*/
export function formatDateToNearestHalfHour(a: number, b: number): number {
const date = new Date();
const minutes = date.getMinutes();
date.setMinutes(minutes - (minutes % 30));
date.setSeconds(0);
return formatDate(date, "yyyy/MM/dd HH:mm")
}
まあまあ良くなった。多分キャッシュがリセット去れても、引き継ぎそうなので良いと思う。