Cập nhật 1 tháng 110 views

Đây là bản nháp nhanh, chỉ dành cho tôi!

Có thể nói Free Pascal là một ngôn ngữ lập trình xuất hiện từ rất lâu và bạn có thể dễ dàng bắt gặp nó ở trong các trường học: từ cấp THCS cho đến cấp THPT đều dạy và học "ngôn ngữ huyền thoại" này. Nếu bạn đang đọc bài viết này, rất có thể bạn là một giáo viên hay một học sinh không thích giao diện soạn thảo của Free Pascal IDE giống như mình.

Trong bài viết này, mình sẽ chia sẻ cách dùng VSCode để viết, biên dịch (build), chạy và debug chương trình Pascal. Sau khi làm theo, bạn sẽ có một môi trường lập trình Pascal với giao diện đẹp, tô màu cú pháp, gợi ý code và cả công cụ gỡ lỗi từng dòng.

Vì sao nên dùng VSCode để lập trình Pascal?

IDE mặc định của Free Pascal khá nhẹ nhưng giao diện đã cũ, ít tính năng hiện đại. Khi chuyển sang VSCode, bạn được:

  • Giao diện dễ nhìn, tuỳ chỉnh được font chữ, màu sắc (theme).
  • Tô màu cú pháp, tự động thụt lề và định dạng code.
  • Chạy chương trình chỉ với một phím tắt.
  • Debug từng dòng lệnh, xem giá trị biến trực tiếp.
  • Dùng được cùng một công cụ cho nhiều ngôn ngữ khác như C++, Python, JavaScript.

Bước 1: Cài đặt VSCode

Đầu tiên, bạn cần tải về và cài đặt VSCode vào máy tính của mình. Mình không nói nhiều về VSCode nữa vì nó quá phổ biến rồi nhé.

Bước 2: Cài đặt Free Pascal

Ở thời điểm viết bài, mình sử dụng phiên bản mới nhất là Free Pascal 3.2.2. Bạn có thể dễ dàng tải về và cài đặt Free Pascal cho máy tính từ trang chủ.

Lưu ý khi cài đặt:

  • Nên giữ nguyên đường dẫn mặc định (ví dụ C:\FPC\3.2.2) và tránh đường dẫn có dấu hoặc khoảng trắng.
  • Nên chọn đầy đủ các thành phần, trong đó có trình gỡ lỗi (debugger) vì ta sẽ cần ở phần sau.

Thêm Free Pascal vào biến môi trường PATH

Để VSCode gọi được trình biên dịch fpc, hãy chắc chắn thư mục bin của Free Pascal nằm trong biến môi trường PATH. Trên Windows, thư mục này thường có dạng:

C:\FPC\3.2.2\bin\i386-win32

Cách thêm: nhấn Start, tìm "Edit the system environment variables" → Environment Variables → chọn Path trong mục User variables → Edit → New và dán đường dẫn trên vào.

Sau đó mở một cửa sổ Terminal mới và kiểm tra:

fpc -iV

Nếu màn hình hiển thị 3.2.2 thì bạn đã cài đặt thành công. Nếu báo lỗi 'fpc' is not recognized, hãy kiểm tra lại đường dẫn PATH và khởi động lại VSCode.

Bước 3: Cài đặt các tiện ích mở rộng (Extension)

Mở VSCode, nhấn Ctrl + Shift + X để mở khung Extensions và cài các tiện ích sau:

ExtensionTác dụng
Pascal (Alessandro Fragnani)Tô màu cú pháp, snippet cho Pascal
Code Runner (Jun Han)Chạy nhanh chương trình bằng một phím tắt
Native Debug (WebFreak)Debug chương trình bằng GDB

Bước 4: Viết chương trình Pascal đầu tiên

Tạo một thư mục mới (ví dụ pascal-vscode), mở nó bằng VSCode, rồi tạo file hello.pas:

program Hello;
begin
  writeln('Xin chao Free Pascal tren VSCode!');
  readln;
end.

Bước 5: Biên dịch và chạy bằng Code Runner

Đây là cách nhanh nhất để chạy một chương trình. Mở settings.json bằng cách nhấn Ctrl + Shift + P, gõ Open User Settings (JSON) rồi thêm đoạn cấu hình sau:

{
  "code-runner.executorMap": {
    "pascal": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt"
  },
  "code-runner.runInTerminal": true,
  "code-runner.saveFileBeforeRun": true
}

Giải thích nhanh:

  • executorMap: khai báo lệnh biên dịch rồi chạy file Pascal.
  • runInTerminal: chạy trong Terminal để bạn có thể nhập dữ liệu từ bàn phím (dùng readln). Nếu thiếu dòng này, chương trình sẽ - không nhận được dữ liệu nhập vào.
  • saveFileBeforeRun: tự động lưu file trước khi chạy.

Bây giờ nhấn Ctrl + Alt + N (hoặc bấm nút ▶ ở góc trên bên phải) để chạy chương trình.

Bước 6: Cấu hình Build bằng Tasks

Ngoài Code Runner, bạn có thể tạo một task để build chương trình theo cách chuẩn của VSCode. Cách này đặc biệt cần thiết cho việc debug ở bước sau.

Nhấn Ctrl + Shift + P → Tasks: Configure Task → Create tasks.json file from template → Others, sau đó thay nội dung bằng:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "fpc: build",
      "type": "shell",
      "command": "fpc",
      "args": [
        "-g",
        "-gl",
        "${file}"
      ],
      "options": {
        "cwd": "${fileDirname}"
      },
      "group": {
        "kind": "build",
        "isDefault": true
      },
      "problemMatcher": []
    }
  ]
}

Trong đó, tham số -g và -gl giúp thêm thông tin gỡ lỗi vào file thực thi để debugger biết được bạn đang dừng ở dòng nào. Từ giờ, nhấn Ctrl + Shift + B là VSCode sẽ biên dịch file đang mở.

Bước 7: Debug chương trình Pascal trên VSCode

Debug cho phép bạn đặt điểm dừng (breakpoint), chạy từng dòng và theo dõi giá trị các biến, rất hữu ích để tìm lỗi logic.

Tạo file .vscode/launch.json với nội dung:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Debug Free Pascal",
      "type": "gdb",
      "request": "launch",
      "target": "${fileDirname}/${fileBasenameNoExt}.exe",
      "cwd": "${fileDirname}",
      "valuesFormatting": "parseText",
      "preLaunchTask": "fpc: build"
    }
  ]
}

Nếu VSCode báo không tìm thấy GDB, hãy thêm dòng "gdbpath"trỏ tới file gdb.exe nằm trong thư mục bin của Free Pascal, ví dụ:

"gdbpath": "C:\\FPC\\3.2.2\\bin\\i386-win32\\gdb.exe"

Cách sử dụng:

  1. Mở file .pas, click vào lề trái cạnh số dòng để đặt breakpoint (chấm đỏ).
  2. Nhấn F5 để bắt đầu debug.
  3. Dùng F10 để chạy qua từng dòng, F11 để đi vào bên trong thủ tục/hàm, Shift + F5 để dừng.
  4. Theo dõi giá trị biến ở khung Variables và Watch bên trái.
Note

Lưu ý: trên Linux hoặc macOS, file thực thi không có đuôi .exe, bạn chỉ cần bỏ phần .exe trong target.

Một số lỗi thường gặp và cách khắc phục

  1. Báo lỗi 'fpc' is not recognized... Free Pascal chưa nằm trong PATH. Hãy thêm lại như hướng dẫn ở Bước 2 rồi khởi động lại VSCode.
  2. Không nhập được dữ liệu từ bàn phím Hãy bật "code-runner.runInTerminal": true trong settings.json.
  3. Hiển thị sai tiếng Việt có dấu trong Terminal Trước khi chạy, gõ lệnh chcp 65001 trong Terminal để chuyển sang bảng mã UTF-8, và lưu file .pas với encoding UTF-8.
  4. Debug không dừng ở breakpoint Kiểm tra lại task build đã có tham số -g, và chắc chắn bạn đang debug file đã được biên dịch lại gần nhất.

Kết luận

Chỉ với vài bước cấu hình đơn giản, bạn đã có thể lập trình Free Pascal trên VSCode một cách thoải mái: viết code với giao diện hiện đại, chạy nhanh bằng một phím tắt và debug chuyên nghiệp. Hy vọng bài hướng dẫn này giúp việc dạy và học Pascal của bạn trở nên thú vị hơn.