機能

Literate Coding

エディター内で自然言語の指示を使ってAIの支援を受けながら、コードを書くべき場所に直接コードを記述できます。BobはInline Diffを使ってコンテキストに合わせた実装を生成します。

Literate Codingを使う理由

  • ワークフローを維持する: チャット インターフェースに切り替えることなくコードを書ける
  • 正確なコントロールを保つ: AIがどこをどのように変更するかを正確に指定できる
  • 意図を自然に表現する: 望むことを自然言語またはpseudocodeで説明できる
  • コミット前に変更を確認する: diffを確認して生成されたコードが要件を満たしているか検証できる

仕組み

Literate Codingモードを有効にすると、ソースファイルに自然言語の指示、pseudocode、アノテーション、または部分的なコードスニペットを直接記述できます。これらの指示は通常のコードと区別するために青色でハイライトされます。

Generateコマンドを実行すると、Bobは以下を行います:

  1. Literate Codingブロックを含むファイル全体を解析する
  2. 周囲のコンテキストと意図を理解する
  3. 指示を実際の実行可能なコードに置き換える
  4. 変更を確認できるようにInline Diffを表示する

このアプローチは、自然言語の表現力とコード直接編集の精度を組み合わせています。

はじめに

基本的な使い方

  1. Literate Codingモードの切り替え:
    • Cmd+I (Mac) または Ctrl+I (Windows/Linux) を押す
    • またはエディターのツールバーにある魔法の杖アイコンをクリックする
  2. 指示を書く:
    • pseudocode、自然言語の指示、またはアノテーションを入力する
    • テキストが青色で表示され、Literate Codingのコンテンツとしてマークされる
  3. コードを生成する:
    • Cmd+Enter (推奨) を押すか、Generate ボタンをクリックする
    • Bobが指示を実際のコードに変換してInline Diffを表示する
  4. レビューして適用する:
    • 変更を承認: Cmd+Enter
    • 変更を却下: Cmd+Shift+Backspace
    • 変更は承認前にファイルに書き込まれるため、決断する前にテストできる

Literate Codingを使ってコメントからコードを生成する方法を学ぶ。

ヒントとベストプラクティス

  • 指示の中で要件を具体的に記述する
  • 変数の型や関数のパラメーターなど関連するコンテキストを含める
  • 複雑なロジックは、小さく集中したブロックに分割する
  • 新しいコードの作成と既存コードの変更の両方にLiterate Codingを使用する

現在の制限事項

  • シングルファイルスコープ: 現在は一度に1つのファイルのみ対応(マルチファイルサポートは計画中)
  • プレビュー機能: スタイリング、diffing、AIの動作の継続的な改善を予定
このトピックはいかがですか?