一篇FreePascal and VSCode博客的機器翻譯


 

google機器翻譯的文章 https://paklebah.github.io/fpc-dan-vscode.html

FreePascal and VSCode

前一段時間,在Pascal Indonesia小組中,我說過Pascal程序員不必DelphiLazarus這樣的IDE捆綁在一起特別是如果我們不創建GUI程序,從而不需要表單設計功能,例如創建Web控制台程序然后,我指出,我以前用的是Visual Studio代碼編輯器微軟的MacBook Pro電腦這是我給你看的:

然后,我共享了我使用的VS Code設置文件,以便它們可以如上面的視頻所示。我把在設置文件GIST Github上這里包括:launch.jsontasks.json,和settings.json然后,我還顯示了我使用擴展名,如下所示。

但是顯然所有這些還不夠清楚。仍然有一些Pascal.ID小組成員詢問如何在VS Code中編寫Pascal程序。因此,我后來寫了這篇文章。

好吧...首先,我假設您已經安裝了VS Code應用程序,是的。如果沒有安裝,請下載VS代碼在這里,然后按照有關如何安裝它的指導這里請。

免費Pascal安裝

其次,我假設您還安裝了Free Pascal的最新版本。如果尚未安裝,請在此處下載Free Pascal ,根據您使用的操作系統進行選擇。對於64位Windows用戶,該文件位於Win32文件夾中 (文件名的結尾為)。然后,請運行安裝程序應用程序並按照出現的說明進行操作。win64

第三…這很重要,不要忘記下載免費的Pascal代碼文件。Free Pascal的源代碼可在此處獲得(它仍然在sourceforge.net上),選擇結尾的代碼,.zip以便於解壓縮。文件下載完成后,卸載(后提取)的文件.zip到一個文件夾(也可以,只要是任何地方都可以通過VS代碼訪問)。如果sourceforge.net不能令人滿意,例如速度較慢,您也可以通過此處的官方Pascal免費下載頁面下載這些文件

擴展安裝

第四,正確正確安裝VS Code和Free Pascal后,下一步是安裝所需的VS Code擴展程序在VS Code中安裝擴展非常容易。第一種方法是通過VS Code窗口左側的“擴展”面板(或從“視圖” →“擴展”菜單),然后找到要安裝擴展的名稱,然后單擊相關擴展上的安裝”按鈕第二種方法是通過VS Code Extension Marketplace頁面,然后找到要安裝擴展的名稱,然后單擊擴展頁面上的Install按鈕 提及。

一些擴展必須安裝有:

  1. OmniPascal
    這是Pascal語言擴展,具有VS Code提供的最全面的功能。Omni Pascal僅支持Free Pascal和Delphi語法,因為這兩種Pascal方言是最著名和廣泛使用的。官方網站在這里,如果您想提交建議,批評,請求或錯誤報告,請轉到此處的頁面

  2. Debug Native
    如果無法執行調試(debug),則不編程其名稱這是我們后來的Pascal計划債務人擴展我個人實際上使用CodeLLDB,因為在Mac上只有LLDB可用,而沒有GDB。但是對於非Mac用戶,我建議改用NativeDebug,因為它同時支持LLDB和GDB。或者,當然也可以使用其他人員擴展,重要的是您可以做到。

  3. VSCode很棒的圖標
    盡管看起來很瑣碎,但擴展對於區分Pascal程序文件與其他文件非常重要,這是VS Code文件面板中的特殊圖標。沒有清晰的標記,對於我們來說在文件面板中選擇文件將更加困難。短,我知道,只有擴展名的文件該鼓勵的Pascal程序的圖標,包括文件.pas.lpr.dpr那是因為我向創作者提出了要求,並幫助提供了Pascal的圖標。

建議安裝其他一些擴展包括:

  1. Git歷史記錄
    這是一個擴展程序,用於顯示程序代碼文件的更改歷史記錄。默認情況下,VS Code支持Git作為文件更改記錄工具,通常稱為CSV(代碼版本控制系統)或SCM(源代碼管理)。但是,VS Code提供的默認視覺功能非常有限,擴展提供了更完整的功能。

  2. 更好的注釋
    這是用於在程序代碼的注釋行中添加顏色擴展通過擴展程序,我們可以發布特別有意義的注釋,這些注釋的顏色不同於常規注釋。例如,指示錯誤的注釋使用紅色,需要注意的注釋使用黃色,注釋注釋使用藍色,依此類推。

  3. 書簽
    這是用於將書簽添加到程序行擴展通過擴展,我們可以標記重要且需要特別注意的程序行。例如,我們可以輕松返回到離開計算機后標記的行。或者標記我們暫時推遲工作的行,依此類推。

  4. 括號對着色器
    這是對程序代碼塊的每對括號和標記對添加不同顏色擴展通過擴展,我們可以輕松識別每對括號和相應的代碼塊。當我們的代碼涉及多個括號或嵌套代碼塊時,這一點很重要。

特別是對於通常在遠程工作的程序員,必須安裝以下擴展,即SFTP通過擴展,可以直接從VS Code面板文件本身更輕松,更快,更安全地通過SSH協議遠程下載和上傳程序文件。這種擴展有很多,但是這是我嘗試過的最簡單,最輕巧的擴展

每次擴展安裝后,VS Code將相應的擴展行中顯示“重新加載”按鈕不要忘記單擊該擴展程序的按鈕某些設置需要重新啟動VS Code,因此如有必要,請重新啟動

OmniPascal設置

第五,在安裝了所有必需的擴展件之后,下一步就是為每個擴展件進行安排由於這是關於在VS Code中使用Pascal的,因此,我僅討論僅與Pascal一起使用所需擴展設置有關其他擴展程序設置,請在相應頁面上閱讀每個擴展程序的指南

接下來...請運行VS Code應用程序,然后打開“文件”菜單→“打開...”並導航到存儲Pascal程序文件夾然后,通過首選項設置菜單打開VS Code設置,它將settings.json以可用VS Code設置列表的形式顯示文件的內容然后將以下三行添加到設置文件中的第一行之后:

"omnipascal.defaultDevelopmentEnvironment": "FreePascal",
"omnipascal.delphiInstallationPath": "/usr/local/bin/fpc",
"omnipascal.freePascalSourcePath": "/home/bee/fpc-src/",

第一行是我們使用"omnipascal.defaultDevelopmentEnvironment"Pascal編譯器的類型有兩個選項,即FreePascal(無空格)和Delphi我將其設置為FreePascal因為使用Free Pascal。請根據您的需要進行調整。

第二行是編譯器"omnipascal.delphiInstallationPath"文件名及其所在的文件夾對於Mac上的Free Pascal,它是編譯器文件的名稱),而對於Windows,它通常是(取決於安裝過程中給出的內容)。對於Delphi用戶,通常為(安裝程序應用程序的默認值)。請僅將其調整為每個文件的位置,並確保該位置正確。/usr/local/bin/fpcfpcc:\fpc\<versi>\bin\<platform>\fpc.exec:\program files\embarcadero\studio\<versi>\bin\dcc32.exe

第三行是Free Pascal代碼文件所在的文件夾"omnipascal.freePascalSourcePath"的位置該位置取決於您將下載的源代碼文件放在何處。需要此設置,以便OmniPascal可以在編譯程序時顯示所需Free Pascal單位的源代碼我通常放置在一個文件夾家庭(家庭)我,如果Windows通常在為文件夾請調整一下。 C:\My Documents\fpc-src\

文件中的任何其他設置行都可以忽略,因為它們只是我的個人設置。但是,如果您也想嘗試一下,請隨時對其進行調整,並學習理解VS Code中的設置。

命令設定

第六,是Free Pascal任務的設置通過菜單“任務” →“配置任務... ”打開VS Code命令設置,然后將出現“打開task.json文件”選項,只需單擊即可。VS Code將當前活動文件夾tasks.json文件夾 .vscode創建文件由於我們僅使用VS Code,因此文件應仍為空或尚不包含任何設置。如果您是VS Code的舊用戶,請確保我的設置不會覆蓋或刪除以前設置的內容。最好在繼續之前做一個備份(backup)文件。tasks.json

注意
深入命令tasks.json適用於Mac或Linux上的Free Pascal用戶。如果在Windows上使用Delphi,則調整每個命令中的參數。確保"command"Windows中entry的值是正確的命令,並確保"args"Delphi中entry的值是正確的參數。如有疑問,只需將值保留在條目中,"args"然后查閱Delphi編譯器參數文檔

然后,請打開tasks.json的文件,復制(復制)全部內容,然后粘貼(粘貼)到tasks.json正在打開的VS Code文件中。然后通過文件保存菜單保存文件保存文件后,每次我們運行菜單命令Tasks → Run Tasks…時,都會出現5個新的命令選項,如下所示。

tasks.json有5個命令,我提供,即:

  1. 語法檢查以編譯程序代碼而不運行它。如果我們只想測試程序在語法上是否正確,但又不想實際運行該程序,則這很有用。
    更新:語法檢查命令現在將“終端”面板中的編譯器錯誤消息原本顯示在“問題”面板中,以便可以單擊每個消息並將光標立即放置在錯誤所在的位置。

  2. 調試版本通過包含調試信息來編譯程序。如果我們要調試正在創建的程序,這將很有用。

  3. Build Release編譯程序時不包含調試信息,因此文件大小更緊湊。如果我們想將完成的程序共享給用戶,這將很有用。

  4. 執行Binary以運行編譯的程序。這對於確保程序可以正常運行並且可以在我們正在創建的程序上進行測試很有用。

  5. 清除文件可從編譯過程中清除不必要的文件。請注意,此命令還會從編譯中刪除完成的程序文件。

另外,您還可以通過在VS Code中安裝Jedi Code Formatter命令行界面的CLI版本來美化Pascal代碼的命令有關更多說明,請在此處閱讀JCF-CLI頁面或者,您也可以在這里嘗試在線版本

注意tasks.json最近的文件以這種方式發展,具有一些附加的新功能和更靈活的設置。使用它們之前,請確保您了解新功能和可用設置。如果有任何問題,請使用此處tasks.json原始文件,或選擇適當的版本修訂版)。

機組安排

在進行下一步之前,我假設您已經在計算機上安裝了調試功能,無論是GDB還是LLDB我建議您只使用GDB,因為Free Pascal編譯器比LLDB與GDB的兼容性更高。Linux用戶可以通過命令apt-get(Debian發行版和衍生版本,包括Ubuntu)或yum(RedHat發行版和衍生版本,例如Fedora輕松安裝LLDB或GDB 對於Mac用戶,只需從Apple安裝XCode應用程序,其中也包括LLDB。

對於Windows用戶,安裝GDB或LLDB有點復雜,因為Windows與工具的兼容性比Windows低。最簡單的方法是安裝已經帶有GDB的Lazarus IDE,並為您安裝它。我本人僅使用Linux和Mac,所以我不太了解如何在Windows上安裝GDB。如果您知道如何使用,請在下面的評論欄中解釋一下,以便我添加到本文中。謝謝。

第七,是機組指令的安排。請到菜單調試打開配置,然后VS代碼將打開(或創建一個新的,如果不存在)命名的調試文件launch.json的文件夾 .vscode的文件夾中當前處於活動狀態。同樣,如果您是VS Code的舊用戶,請確保我的設置不會覆蓋或清除您以前的任何設置。

注意
Delphi用戶不能使用VS Code的調試功能,因為Delphi編譯結果與GDB或LLDB不兼容。而且Delphi的調試功能也不能在Delphi IDE外部使用。也許您最好只使用Free Pascal。

然后,請打開launch.json的文件,復制(復制)全部內容,然后粘貼(粘貼)到launch.json正在打開的VS Code文件中。如果使用的是NativeDebug調試擴展,請執行以下操作:

  • 將值更改"type"lldbgdb根據您的使用。
  • 將條目更改"program""executable"
  • 刪除行"terminal"

然后通過文件保存菜單保存文件保存文件后,每次我們運行菜單命令Debug → Start Debugging(或F5)時,VS Code都會對當前打開的程序代碼運行調試過程。

我包括的乘員設置執行以下過程:

  • VS Code通過運行Build Debug命令來編譯當前打開的程序代碼確保打開Pascal代碼,否則編譯將失敗。

  • VS Code將調用已安裝的調試擴展調試類型根據條目中的值執行"type"

  • VS Code將運行調試過程。我們可以通過迷你乘員面板控制乘員的過程,例如暫停跨步步入等。要在調試過程中觀察該值,可以通過調試面板(從“視圖” →“調試”菜單)完成。上面的視頻中有一個例子。

  • 調試過程完成后,VS Code將運行Clean Files命令

測試設定

第八,最后……為確保安裝和設置正確,我們需要通過創建一個簡單的Pascal程序對其進行測試。請創建一個新文件,為其命名,test.pas然后復制並粘貼以下示例代碼。

program test; uses CRT; begin clrscr; writeln('Hello World!'); end. 

然后保存文件。請執行下列操作:

  1. VS Code窗口的狀態線(狀態欄的右下角,應將其寫入ObjectPascal(沒有空格)。在左側文件窗格中查看,它應該有一個test.pas獵豹頭圖標。查看該行上的程序代碼uses CRT;,應該沒有紅線(這意味着存在別名錯誤error)。如果一切合適,那么OmniPascal和VSCode Great Icons擴展應該可以正常工作。

  2. 通過菜單任務運行任務…,按照上面的順序從語法檢查清理文件,一一執行上面的5個命令如果所有命令運行都沒有錯誤消息,則表示Free Pascal的其他命令已正常運行。

  3. 單擊程序行號左側的紅點,在該行的程序代碼中放置一個斷點clrscr;(請參見上面的視頻)。然后按F5鍵運行調試過程VS Code將如上所述運行調試過程。

  4. 當調試過程到達該行時clrscr;程序將停止,而VS Code在下一行將顯示一個黃色符號。您只需單擊迷你劇組面板上繼續按鈕(如綠色播放按鈕)。

  5. 如果程序繼續運行,直到顯示文本Hello World!並順利完成,則調試設置正確。

如果以上所有安裝和設置都正確正確地進行了,那么恭喜!然后,您可以享受使用VS Code編寫Pascal程序的便利,如我上面的視頻所示。

從而。可能有用。

———

 

附上作者的 配置文件

//launch.json 
//launch.json 
{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    { // shortcut: F5 (start debugging)
      "type": "lldb",
      "request": "launch",
      "name": "LLDB Debugger",
      "cwd": "${workspaceFolder}",
      "program": ".build/debug/${fileBasenameNoExtension}",
      "args": [],
      "terminal": "integrated",
      "preLaunchTask": "fpc: Build Debug",
      "postDebugTask": "fpc: Remove Build Files"
    },
    // { // native debugger
    //   "type": "lldb-mi",
    //   "request": "launch",
    //   "name": "Native Debugger",
    //   "cwd": "${workspaceFolder}",
    //   "target": ".build/debug/${fileBasenameNoExtension}",
    //   // "terminal": "",
    //   "preLaunchTask": "fpc: Build Debug",
    //   "postDebugTask": "fpc: Remove Build Files"
    // },
  ]
}

 

 

//tasks.json
//tasks.json
{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  //
  //! DON'T FORGET TO ADD THESE LINES INTO YOUR USER SHELL PROFILE
  //  export PATH=$PATH:<PATH_TO_FPC_BIN_FOLDER>
  //  export INSTANTFPCOPTIONS="-n @<PATH_TO_FPC_BIN_FOLDER>fpc.cfg"
  //
  "version": "2.0.0",
  "options": {
    "cwd": "${workspaceFolder}",
    "env": {
      // task settings for files and folders, use full path for commands
      "FPC_COMMAND" : "/Users/MacBee/Programs/freepascal/fpc/bin/x86_64-darwin/fpc.sh",
      "JCF_COMMAND" : "./jcf",
      "PROJECTFILE" : "${relativeFile}",
      "PROJECTBASE" : "${fileBasenameNoExtension}",
      "UNITS"       : "~/Programs/GitHub/*",
      "INCLUDES"    : "~/Programs/pascal/inc/*",
      "LIBRARIES"   : "~/Programs/pascal/lib/*",
      "OUTPUT"      : ".build",
      "DEBUG"       : ".build/debug",
      "RELEASE"     : ".build/release",
      "DEPLOY"      : ".build/deploy",
      "EXTENSION"   : ".cgi",     // set this to .cgi for web app
      "PROCESSOR"   : "-Px86_64",
      "OPSYSTEM"    : "-Tdarwin",
      "SYNTAX"      : "-Mobjfpc",
    },
  },
  "tasks": [
    { //! Build debug without any optimization
      "label"  : "fpc: Build Debug",
      "type"   : "shell",
      "group"  : "build",
      "command": "${FPC_COMMAND}",
      "args"   : [
        "${PROJECTFILE}",   // main project file
        "${PROCESSOR}",     // target processor
        "${OPSYSTEM}",      // target operating system
        "${SYNTAX}",        // pascal syntax mode
        "-Scahij-",         // pascal syntax setting
        "-CroOti",          // generated code setting
        "-O-",              // disable optimization
        "-Xg",              // external debug info
        "-B",               // rebuild all units
        "-v",               // verbose message
        "-glpsw2",          // dwarf debug setting
        "-godwarfcpp",      // dwarf mode setting
        "-Fu${UNITS}",      // additional units
        "-Fi${INCLUDES}",   // additional include files
        "-Fl${LIBRARIES}",  // additional libraries
        "-FE${DEBUG}",      // output for binary
        "-FU${OUTPUT}",     // output for units
      ],
      "presentation": {
        "focus": true,
      },
      "problemMatcher": {
        "owner"       : "objectpascal",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern"     : {
          // capture FPC's error messages and display them in Problems panel
          "kind"      : "location",
          "regexp"    : "^(.*)\\((\\d.*),(\\d.*)\\) (Warning|Error|Fatal): (.*)$",
          "file"      : 1,
          "line"      : 2,
          "column"    : 3,
          "severity"  : 4,
          "message"   : 5,
          "loop"      : true
        }
      }
    },
    { //! Build release with full optimization
      "label"  : "fpc: Build Release",
      "type"   : "shell",
      "group"  : {
        "kind" : "build",
        "isDefault": true
      },
      "command": "${FPC_COMMAND}",
      "args": [
        "${PROJECTFILE}",   // main project file
        "${PROCESSOR}",     // target processor
        "${OPSYSTEM}",      // target operating system
        "${SYNTAX}",        // pascal syntax mode
        "-Schij-",          // pascal syntax setting
        "-CX",              // generated code setting
        "-O3",              // code optimization setting
        "-XXs",             // executable setting
        "-B",               // rebuild all units
        "-v",               // verbose message
        "-Fu${UNITS}",      // additional units
        "-Fi${INCLUDES}",   // additional include files
        "-Fl${LIBRARIES}",  // additional libraries
        "-FE${RELEASE}",    // output for binary
        "-FU${OUTPUT}",     // output for units
      ],
      "presentation": {
        "focus": true,
      },
      "problemMatcher": {
        "owner"       : "objectpascal",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern"     : {
          "kind"      : "location",
          "regexp"    : "^(.*)\\((\\d.*),(\\d.*)\\) (Warning|Error|Fatal): (.*)$",
          "file"      : 1,
          "line"      : 2,
          "column"    : 3,
          "severity"  : 4,
          "message"   : 5,
          "loop"      : true
        }
      }
    },
    { //! Syntax check without linking
      "label"  : "fpc: Syntax Check",
      "type"   : "shell",
      "group"  : "build",
      "command": "${FPC_COMMAND}",
      "args"   : [
        "${PROJECTFILE}",   // main project file
        "${PROCESSOR}",     // target processor
        "${OPSYSTEM}",      // target operating system
        "${SYNTAX}",        // pascal syntax mode
        "-Scahij-",         // pascal syntax setting
        "-Se99",            // maximum error found
        "-B",               // rebuild all units
        "-v",               // verbose message
        "-s",               // syntax check mode
        "-Fu${UNITS}",      // additional units
        "-Fi${INCLUDES}",   // additional include files
        "-Fl${LIBRARIES}",  // additional libraries
        "-FE${OUTPUT}",     // output for binary
        "-FU${OUTPUT}",     // output for units
      ],
      "presentation": {
        "focus": true,
      },
      "problemMatcher": {
        "owner"       : "objectpascal",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern"     : {
          "kind"      : "location",
          "regexp"    : "^(.*)\\((\\d.*),(\\d.*)\\) (Warning|Error|Fatal): (.*)$",
          "file"      : 1,
          "line"      : 2,
          "column"    : 3,
          "severity"  : 4,
          "message"   : 5,
          "loop"      : true
        }
      }
    },
    { //! Run code using InstantFPC (quick compile)
      "label"  : "fpc: Run Code",
      "type"   : "shell",
      "group"  : "test",
      "command": "instantfpc",
      "args"   : [
        "${PROJECTFILE}",   // main project file
        "-B",               // always build
      ],
      "presentation": {
        "focus": true,
      },
      "problemMatcher": {
        "owner"       : "objectpascal",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern"     : {
          "kind"      : "location",
          "regexp"    : "^(.*)\\((\\d.*),(\\d.*)\\) (Warning|Error|Fatal): (.*)$",
          "file"      : 1,
          "line"      : 2,
          "column"    : 3,
          "severity"  : 4,
          "message"   : 5,
          "loop"      : true
        }
      }
    },
    { //! Execute generated (debug) binary
      "label": "fpc: Execute Binary",
      "type" : "shell",
      "group": {
        "kind": "test",
        "isDefault": true
      },
      "command": "./${DEBUG}/${PROJECTBASE}",
      "args"   : [],
      "presentation": {
        "focus": true,
      },
      "problemMatcher": []
    },
    { //! Deploy binary from release
      "label"  : "fpc: Deploy Release",
      "type"   : "shell",
      "command": "cp",
      "args"   : [
        "${RELEASE}/${PROJECTBASE}",             // from release
        "${DEPLOY}/${PROJECTBASE}${EXTENSION}",  // to deploy
      ],
      "presentation": {
        "reveal": "silent",
      },
      "problemMatcher": []
    },
    { //! JCF beautify Code
      "label"  : "JCF: Beautify Code",
      "type"   : "shell",
      "command": "${JCF_COMMAND}",
      "args"   : [
        "${PROJECTFILE}",
        "-clarify",
        "-inplace",
        "-config=jcf.xml"
      ],
      "presentation": {
        "reveal": "never"
      },
      "problemMatcher": []
    },
    { //! JCF obfuscate Code
      "label"  : "JCF: Obfuscate Code",
      "type"   : "shell",
      "command": "${JCF_COMMAND}",
      "args"   : [
        "${PROJECTFILE}",
        "-obfuscate",
        "-inplace",
        "-config=jcf.xml"
      ],
      "presentation": {
        "reveal": "never"
      },
      "problemMatcher": []
    },
    { //! Create build folders for compilation
      "label"  : "fpc: Create Build Folders",
      "type"   : "shell",
      "command": "mkdir",
      "args"   : [
        "${OUTPUT}",
        "${DEBUG}",
        "${RELEASE}",
        "${DEPLOY}",
      ],
      "presentation": {
        "reveal": "silent",
      },
      "problemMatcher": []
    },
    { //! Remove compiler genereted files
      "label"  : "fpc: Remove Build Files",
      "type"   : "shell",
      "command": "rm",
      "args"   : [
        "-rf",   // remove them all!
        "${OUTPUT}/*.*",                         // unit files
        "${DEBUG}/{,.[!.],..?}*",                // debug files
        "${RELEASE}/{,.[!.],..?}*",              // release files
        "~/.cache/instantfpc/${PROJECTBASE}",    // ifpc binary
        "~/.cache/instantfpc/${PROJECTBASE}.*",  // ifpc source
      ],
      "presentation": {
        "reveal": "silent",
      },
      "problemMatcher": []
    },
  ]
}

 

 

//settings.json 
//settings.json 
{
    "omnipascal.searchPath": "~/Programs/pascal",
    "omnipascal.freePascalSourcePath": "~/Programs/freepascal/fpcsrc",
    "omnipascal.delphiInstallationPath": "~/Programs/freepascal/fpc/bin/x86_64-darwin",
    "omnipascal.defaultDevelopmentEnvironment": "FreePascal",

    "sde.buildOnSave": false,
    "sde.languageServerMode": "langserver",
    "swift.languageServerPath": "~/GitHub/sourcekit-lsp/.build/release/sourcekit-lsp",
    "sourcekit-lsp.serverPath": "~/GitHub/sourcekit-lsp/.build/release/sourcekit-lsp",

    "[markdown]": {
        "files.trimTrailingWhitespace": false,
    },

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

    "editor.fontFamily": "'FiraCode-Medium', 'DejaVu Sans Code', Menlo, Monaco, monospace",
    "editor.rulers": [80, 120],
    "editor.tabSize": 2,
    "editor.fontSize": 13,
    "editor.letterSpacing": 0.1,
    "editor.wordWrapColumn": 120,
    "editor.fontLigatures": true,
    "editor.matchBrackets": false,
    "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,
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM