Cara Menggunakan Visual Studio Code untuk Menulis Program Pascal WINDOWS

Ini merupakan pertama kali saya sejak SMP pada tahun 2017 kembali menulis di blogspot lagi. Pada kali ini saya akan membagikan cara bagaimana supaya dapat menuliskan kode program pascal di visual studio code dan menjadikannya terkoneksi dengan compiler free pascal. 

Sebelumnya saya memohon maaf jika blog ini berantakan.
Code editor yang dimiliki oleh FPC (free pascal compiler) emang tidak terlalu nyaman digunakan. Namun kita bisa gunakan visual studio code dan menuliskan kode pascal di sana dan dikoneksikan dengan FPC ketika akan mendebug, mengkomplikasikan, dan meng run kode tersebut.

Setting ini bisa menjalankan program pascal lansung di terminal fpc yang memakai .exe bukan di terminal vs-code. Dengan begitu, tampilan akan menjadi lebih rapi dan lebih menyerupai sebuah program. 

Tujuan dari settings ini adalah agar program pascal dalam debugnya bisa dibantu dengan GDB yang biasanya mendebug C/C++. 

Beberapa hal yang perlu kalian persiapkan adalah:
1) download dulu FPC di internet (Free Pascal Compiler) pasang di path->harus
2) download visual studio code ->harus
3) download GDB (merupakan debugger untuk C/C++) pasang di path->harus
4) extension pascal formatter dsb. di vs-code supaya penulisan kode lebih cantik
5) exntension C/C++ by microsoft -> harus


Mekanismenya yang digunakan nanti adalah kode pascal ditulis di visual studio terus mendebug kode pascalnya menggunakan GDB terus dikompilasikan dengan FPC. Kalau tidak salah begitu.

Step by step instalaasinya akan saya buat poin per poin supaya lebih bisa diikuti:
  1. Setelah semua prasyaratnya terinstall maka buka ekstensi di visual studio code
  2. Download ekstensi Native Debug, C/C++, C/C++ Extension Pack, dan Pascal
  3. Buat folder khusus menyimpan kode-kode pascal (folder di mana kita akan buat kode-kode pascal)
  4. Open folder tersebut di visual studio code
  5. Buat folder yang namanya ".vscode" tanpa tanda "."
  6. Di dalam folder tersebut buat 3 file bernama : "launch.json",  "setting.json", "tasks.json" (tidak menggunakan tanda  petik ("").


Setelah itu copy kode berikut (sumber dari Pak Lebah github)

*) Salin kode untuk launch.json :
    {
  "version": "0.2.0",
  "configurations": [
      {
          "name": "Debug with GDB",
          "type": "cppdbg",
          "request": "launch",
          "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
          "args": [],
          "stopAtEntry": false,
          "cwd": "${workspaceFolder}",
          "environment": [],
          "externalConsole": true,
          "MIMode": "gdb",
          "miDebuggerPath": "gdb",
          "setupCommands": [
              {
                  "description": "Enable pretty-printing for gdb",
                  "text": "-enable-pretty-printing",
                  "ignoreFailures": true
              }
          ],
          "preLaunchTask": "compile"
      }
  ]
}
*) Salin kode untuk settings.json -> tidak harus karena ini lebih mengatur ke personalisasi. Paling menentukan keberhasilan itu mengatur launch.json dan tasks.json
{
    "[markdown]": {
        "files.trimTrailingWhitespace": false,
    },

    "files.trimFinalNewlines": true,
    "files.insertFinalNewline": true,
    "files.trimTrailingWhitespace": true,
    "files.associations": {
        "*.json": "jsonc"
    },

    "editor.fontFamily": "Consolas, 'Courier New', monospace",
    "editor.rulers": [80, 120],
    "editor.tabSize": 2,
    "editor.fontSize": 13,
    "editor.letterSpacing": 0.1,
    "editor.wordWrapColumn": 120,
    "editor.fontLigatures": true,
    "editor.matchBrackets": "never",
    "editor.smoothScrolling": true,
    "editor.minimap.enabled": false,
    "editor.renderLineHighlight": "all",
    "editor.tokenColorCustomizations": {
        "comments": {
            "fontStyle": "italic"
        }
    },

    "workbench.iconTheme": "vscode-great-icons",
    "workbench.enableExperiments": false,
    "workbench.editor.tabCloseButton": "left",
    "workbench.statusBar.feedback.visible": false,
    "workbench.settings.enableNaturalLanguageSearch": false,
    "workbench.colorCustomizations": {
        "[Default Dark+]": {
            "editorRuler.foreground": "#333333",
            "editor.lineHighlightBackground": "#282828",
            // "editorGutter.background": "#181818",
            // "editorIndentGuide.activeBackground": "#a0a0a0",
            "sideBar.border": "#333333",
            // "tab.border": "#3f3f3f",
        },
    },

    "window.zoomLevel": 0,
    "window.titleBarStyle": "native",
    "window.title": "${rootName}${separator}${dirty}${activeFolderShort}/${activeEditorShort} | Code",

    "explorer.confirmDelete": false,
    "explorer.confirmDragAndDrop": false,

    "terminal.integrated.fontSize": 13,
    "terminal.integrated.cursorStyle": "line",
    "terminal.integrated.cursorBlinking": true,

    "debug.toolBarLocation": "docked",
    "lldb.launch.terminal": "integrated",

    "git.enableSmartCommit": true,
    "search.showLineNumbers": true,
    "zenMode.hideLineNumbers": false,

    "telemetry.enableTelemetry": false,
    "telemetry.enableCrashReporter": false,
    "workbench.editor.tabActionLocation": "left",
}

*) Salin kode untuk tasks.json
{
  "version": "2.0.0",
  "tasks": [
      {
          "label": "compile",
          "type": "shell",
          "command": "fpc",
          "args": [
              "-g",
              "${file}"
          ],
          "group": {
              "kind": "build",
              "isDefault": true
          }
      }
  ]
}
*) Jika kalian mengikuti dan membacca dengan teliti setiap prosedur sepertinya akan berhasil, komentar jika ada masalah


Komentar