2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

今話題のCursorエディタを使用してみる

Last updated at Posted at 2025-02-14

Cursor とは?

Cursorエディタとは AIでの支援機能 を搭載した次世代テキストエディタです。
既存エディタにおいても補完機能などは搭載しているものの、コードそのものを作ることはできず、結局書き手次第となっていました。

Cursorエディタでは、プロンプトで指示を入力するとコードをなんとゼロから作成することができます。
文面だけでは伝わりにくいので、早速見ていきましょう。

ダウンロード

こちら よりインストールします。

初期設定

初回起動すると、下記のような画面が表示されます。(2025/02時点)
ひとまず、デフォルトで進めます。
image.png

VSCode を使っている場合、拡張機能を自動でインポートしてくれます!素敵!
image.png

Cursorに対して、データの取り扱いについての選択
Cursorの改善に役立つとのこと。よくあるやつですね。

image.png

Cursor のアカウントでログインします。
私はアカウントを持っていませんでしたが、githubのアカウントでサインアップできました。

image.png

おまけ

◆ 日本語化する

下記ツールバーからコマンドパレットを実行します。(ctrl + shift + p でも可!)

image.png

configure と入力して、「Configure Display Language」を選択します。

image.png

日本語を選択します。
インストール後再起動を促されるので、そのまま再起動します。

image.png
私はなぜかシグネチャエラーになりましたが、手動で再起動して再度↑の手順を試したところうまくいきました。
image.png


◆ Live Serverのダウンロード

今回は、簡単なwebページの確認をするため拡張機能のLive Serverをダウンロードしておきます。
image.png

AI支援機能実践編

初期実装

左上にチュートリアルが表示されていますが、一旦無視してひとまずテストプロジェクトを作成します。
image.png

ctrl + shift + k からプロンプトを開きます。
image.png

ひとまず、おおざっぱな実装指示を出します。
「アカウント登録画面をつくって」
image.png

すると、下記のようにhtmlに出力されました。
image.png

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>アカウント登録</title>
    <style>
        .container {
            max-width: 500px;
            margin: 50px auto;
            padding: 20px;
            border: 1px solid #ccc;
            border-radius: 5px;
        }
        .form-group {
            margin-bottom: 15px;
        }
        label {
            display: block;
            margin-bottom: 5px;
        }
        input {
            width: 100%;
            padding: 8px;
            border: 1px solid #ddd;
            border-radius: 4px;
        }
        button {
            background-color: #4CAF50;
            color: white;
            padding: 10px 15px;
            border: none;
            border-radius: 4px;
            cursor: pointer;
        }
        button:hover {
            background-color: #45a049;
        }
    </style>
</head>
<body>
    <div class="container">
        <h2>アカウント登録</h2>
        <form id="registerForm">
            <div class="form-group">
                <label for="username">ユーザー名</label>
                <input type="text" id="username" name="username" required>
            </div>
            <div class="form-group">
                <label for="email">メールアドレス</label>
                <input type="email" id="email" name="email" required>
            </div>
            <div class="form-group">
                <label for="password">パスワード</label>
                <input type="password" id="password" name="password" required>
            </div>
            <div class="form-group">
                <label for="confirmPassword">パスワード(確認)</label>
                <input type="password" id="confirmPassword" name="confirmPassword" required>
            </div>
            <button type="submit">登録する</button>
        </form>
    </div>

    <script>
        document.getElementById('registerForm').addEventListener('submit', function(e) {
            e.preventDefault();
            
            const password = document.getElementById('password').value;
            const confirmPassword = document.getElementById('confirmPassword').value;
            
            if (password !== confirmPassword) {
                alert('パスワードが一致しません');
                return;
            }
            
            // ここでフォームの送信処理を実装
            alert('アカウント登録が完了しました');
        });
    </script>
</body>
</html>

それでは、Acceptをクリックしてコード提案を承認します。
image.png

index.htmlを右クリックして、Open with Live Server から実際に動かしてみます。

image.png

実際の画面表示
image.png

なんと、「アカウント登録画面をつくって」の一言でアカウント登録画面が作成できてしまいました。
パスワード確認のスクリプトもご丁寧に作られています。
もちろん、これだけではアカウント登録の情報としては足りないので更に指示出しをしていきます。

同じく、ctrl + k から
「必要な情報に電話番号、住所、生年月日を追加して」
image.png

Acceptをクリックして、提案を承認
image.png

修正後の画面表示
image.png

追加の修正もコミットされました。

修正

それでは、込み入った修正指示をしていきます。
住所はこのままフリーテキストだとまずいので郵便番号、住所1/2/3で分離
さらにスタイルとして幅を少し広げたうえで、登録ボタンを中央に変更します。

image.png
image.png

修正後の画面表示
image.png

なんと、プレースホルダもご丁寧に実装してくれました。
完全に意図を汲み取って実装してくれています。

追加実装

では次に既存のコンテンツだけでなく、更に追加の実装を指示してみます。
このままだと「登録する」ボタンを押下するとそのままアカウント登録が実行されてしまうので、確認のトーストを間に挟む実装を試みてみます。

image.png

修正後の画面表示
image.png

image.png

見事、トースト表示も実装されました!

感想

話題になっていたCursorエディタを使用してみましたが、とにかくびっくりの一言です。
簡単なWebページの作成とはいえ、手動で1文字も実装作業をしていません。
またAI自身が意図を汲み取り、指示をしていない箇所すら実装をしていたのにも圧巻です。

VSCodeをフォークしたエディタでもあることから、VSCode使用者の親和性も高そうです。
エディタ移行はある程度の障壁がありますが、拡張機能含めそのまま利用できるので抵抗なく移行できると感じます。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?