生成AIでのプログラミングで便利〜簡単に複数のソースコードをコピペ〜
ちょっと時間があったので、生成AIでのプログラミングの効率を大幅に向上させる便利なツールを作ってみました。
このツールは、指定したフォルダ内のソースコードを一括で抽出し、簡単にコピー&ペーストできるようにするプログラムです。生成AIのプロンプト作成、コードのリファクタリング、デバッグ作業に特に便利です。
ただ、Pythonの実行するための環境構築については説明していないので、初心者には難しいかもしれません。
イメージを動画で作成してみました。もちろん、これも生成AIで作成しています。
プログラムの主な特徴
特定の拡張子のファイルのみ抽出可能
このプログラムを使用すると、.py(Pythonファイル)や.js(JavaScriptファイル)など、指定した拡張子のファイルのみを抽出することができます。もちろん、全部のファイルを指定することも可能です。Markdown形式での出力
抽出したソースコードはMarkdown形式で整形され、文書や報告書の作成が簡単になります。自動的にクリップボードにコピー
出力されたテキストは自動的にクリップボードにコピーされます。これにより、他のアプリケーションにすぐにペースト可能です。
使用方法
このプログラムはPythonで書かれており、次のような簡単な手順で使用できます。
1 プログラムのダウンロード
Githubからプログラム(files_to_paste.py)というプログラムをダウンロードしてください。
ちなみにソースコードはこちらです。
import os
import sys
import pyperclip
import mimetypes
def generate_markdown(directory, extension):
output = "# Source Code\n"
base_path = os.path.abspath(directory)
script_name = os.path.basename(__file__)
if extension == 'all':
extension = ''
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith(extension) and file != script_name:
file_path = os.path.join(root, file)
mime_type, _ = mimetypes.guess_type(file_path)
if mime_type and mime_type.startswith('text'):
relative_path = os.path.relpath(file_path, base_path)
output += f"## {relative_path}\n"
try:
with open(file_path, 'r', encoding='utf-8') as f:
content = f.read()
output += f"```\n{content}\n```\n\n"
except UnicodeDecodeError:
output += "```\nファイル読み込みエラー\n```\n\n"
return output
def main():
if len(sys.argv) != 3:
print("使い方: python files_to_paste.py <ディレクトリ> <拡張子>")
sys.exit(1)
directory_path = sys.argv[1]
extension = sys.argv[2]
markdown_output = generate_markdown(directory_path, extension)
pyperclip.copy(markdown_output)
print("マークダウン出力がクリップボードにコピーされました。好きなところでペーストしてください。")
if __name__ == "__main__":
main()
2 プログラムの配置
ダウンロードしたファイルをソースコードを取得したい箇所に移動します。
3 プログラムの実行
コマンドラインを開き、以下のコマンドを入力します。
python files_to_paste.py <対象ディレクトリ> <拡張子>
ここで<対象ディレクトリ>にはフォルダのパスを、<拡張子>には抽出したいファイルの拡張子を指定します。
4 生成AIのプロンプトでペースト
プログラムが出力したテキストはクリップボードにコピーされるので、直接他のアプリケーションにペーストして利用できます。
まとめ
このツールにより、特に大規模なプロジェクトでのソースコードの管理や生成AIを使用した作業が簡単になります。プログラミング初心者でも、このツールを活用して効率良く作業を進めることができますので、ぜひ一度試してみてください!
この記事が気に入ったらサポートをしてみませんか?