Sublime Text 4 如何配置成完美的OI編輯器,優雅的打比賽

weirdoX發表於2024-08-09

Sublime Text 完整配置

編譯檔案

  1. 點選新建編譯系統(Tools -> Build system -> New build system)

  2. 改為以下程式碼:
    Ubuntu :

    {
       "encoding": "utf-8",
       "working_dir": "$file_path",
       "shell_cmd": "g++ \"$file_name\" -std=c++14 -o \"$file_base_name\"",
       "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
       "selector": "source.c++",
       "variants": 
       [
           {    
               "name": "Run",
               "shell_cmd": "g++ '$file' -std=c++14 -o '$file_base_name' && gnome-terminal -x bash -c \"'${file_path}/${file_base_name}';read -p '\nPress any key to continue...'\""
           }
       ]
    }
    

    Windows :

    {
       "shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" -Wall -std=c++11 -Wextra -g",
       "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
       "working_dir": "${file_path}",
       "selector": "source.c, source.c++",
    
       "variants":
       [
           {
               "name": "Run",
               "shell_cmd" : "start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
           },
           {
               "name": "RunInCommand",
               "shell_cmd" : "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" -Wall -std=c++11 -Wextra -g && start cmd /c \"\"${file_path}/${file_base_name}\" & echo 程式執行結束 & pause\""
           },
           {
               "name": "Debug",
               "shell_cmd" : "start cmd /c \"gdb \"${file_path}/${file_base_name}\"\""
           }
       ]
    }
    

    儲存為 "g++.sublime-build"

  3. 最後在編譯系統中選擇"g++"(Tools -> Build system -> g++)

注: windows 安裝 g++

從以下連結安裝 MinGW(內包含g++);

點選安裝 MinGW-64 提取碼ctgX

解壓縮,將檔案內 mingw64 目錄移動到 C盤。

然後複製地址:C:\mingw64\bin

將這個地址複製到環境變數中:

設定:搜尋環境變數:“編 輯系統環境變數”:

選中 Path,然後點選編輯

點選新建,輸入之前複製的地址:C:\mingw64\bin。點選 確定

最後一路確定回去。

然後 Ctrl+R,輸入 cmd

輸入 g++ -v

如果出現以下結果則配置成功。

使用Vim模式(請先了解再配置,絕大多數人不需要)

  1. 在上方的首選項裡點選 " 設定(preferences->settings) "

  2. 在右側程式碼欄里加入這份程式碼:

    "ignored_packages": [],
    
  3. 儲存,在首選項中開啟 " 快捷鍵設定(preferences ->key bingdings) "

  4. 改為以下程式碼:

    [
     { "keys": ["k", "j"], "command": "exit_insert_mode",
     "context":
     [
         { "key": "setting.command_mode", "operand": false },
         { "key": "setting.is_widget", "operand": false }
     ]
     },
    ]
    

    儲存,完工

大功告成!

Sublime Text 使用程式碼塊

(Tools --> Developer --> New Snippet )

預設出現以下程式碼:

<snippet>
	<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
	<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
	<!-- <tabTrigger>hello</tabTrigger> -->
	<!-- Optional: Set a scope to limit where the snippet will trigger -->
	<!-- <scope>source.python</scope> -->
</snippet>

然後備註一下意思:

<snippet>
	<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.//這一行替換成你需要寫成模板的程式碼塊
]]></content>
	<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
	<!-- <tabTrigger>hello</tabTrigger> --> //將兩個 “<!-- -->” 刪掉,這是註釋符,然後將 hello 替換成你想給程式碼塊取的名字。
	<!-- Optional: Set a scope to limit where the snippet will trigger -->
	<!-- <scope>source.python</scope> -->
</snippet>

其他的我也不知道什麼意思。。

雜項:

側邊欄檔案目錄

Sublime 支援側邊欄預覽檔案目錄,(View -> Side Bar --> Show Side Bar),然後右側就會出現側邊欄,將目錄檔案劃入即可。

一些實用的油猴外掛

首先,你當然需要安裝油猴,可以去 官網 安裝,如果是 Chrome 瀏覽器,可以點選右側的那個灰色打包按鈕,下載一個 crx 檔案。

然後在擴充套件程式裡開啟開發者模式,將 crx 檔案匯入即可。油猴外掛可以從 greasyfork 內安裝需要的指令碼(注意開啟搜尋所有語言的結果,更加全)。

這裡將我常用的檔案打包,油猴 crx 檔案也在內:

  • tampermonkey_stable.crx 這就是油猴外掛本體

  • tampermonkey-backup.txt 這是一些外掛的油猴備份檔案,可以透過油猴皮膚的匯入功能自動匯入。裡面包含以下外掛

    • Atcoder Better: Atcoder 翻譯美化指令碼

    • CodeForces Better: CodeForces 翻譯美化指令碼

    • AtCoder predictor 預測分數變化指令碼

      打包連結 提取碼: iuMx

一些高階用法

這裡不會講的很詳細,配不好基本上也不會用。。。

首先介紹一下, Sublime 的使用者檔案(外掛,程式碼塊等等),都在這個目錄內。

透過 Sublime 視窗點選 (Preferences -> Browse Packages),自動開啟檔案目錄。

自動獲取 AtCoder/CodeForces/各OJ 題目樣例

首先需要再瀏覽器上安裝一個外掛作為連線:competitive companion

這裡是 打包連結

這裡注意,Chrome 壓縮包直接拖入即可,Edge 需要將字尾名更改為 crx 才能匯入(直接改字尾)。

大概擴充套件程式選項,在 Custom ports 內輸入 12345

然後就 OK 了。

然後我們需要在 Sublime Text 中安裝兩個外掛。

Ctrl + shift + P

然後輸入:Install Package Control,換行。

右下腳會有一個 = 在來回擺動,說明正在安裝了,等待即可。

如果你沒有安裝成功:

首先需要將這個檔案 Package Control 下載,解壓縮,將目錄名字改成 Package Control,然後移動到 Preferences -> Browse Packages 所在的目錄內,重啟 Sublime Text。

然後就安裝好了 Package Control。

Ctrl + Shift + P,輸入 Package Control: Install Package

換行,等待。出現的視窗就可以進行安裝外掛了。

如果很慢並且有條件可以嘗試魔法上網。

然後我們在這個視窗輸入一個外掛名:CppFastOlympicCoding。換行安裝。

如果還是不能安裝請手動安裝:CppFastOlympicCoding,將目錄放在 sublime 目錄下即可。

然後如果是 windows 系統,需要在 (Preferences --> Package Setting --> FastOlympicCoding) 檔案中

修改成以下程式碼:

{
	"close_sidebar": false, //注意如果你想要使用目錄功能,一定加入這一行,防止推出目錄。
	"tests_file_suffix": "__tests"
}

這樣就行了,Ctrl + Alt + B 就可以編譯執行了,可以支援儲存樣例、AC摺疊收縮,(這個對於從 OJ 提取樣例有用)。

預覽圖:

接下來,我們需要安裝一個與瀏覽器中 Competitive Companion 樣例檔案作連線的 Sublime 本地外掛:FastOlympicCodingHook打包下載連結

然後我們重啟 Sublime,在文件中右鍵,第一行出現 Listen to Competitive companion,這個就是和網頁瀏覽器連線的按鈕。

開啟一個 cpp 檔案,然後右鍵,點選 Listen,然後瀏覽器開啟要做的題的網頁,點選右上角的這個外掛,等待上方出現一條藍條閃過,樣例就儲存到本地了。

然後如果覺得用滑鼠右鍵+點選過於愚蠢,可以在 (preferences ->key bingdings) 檔案中新增以下這一行:

{
	{ "keys": ["ctrl+shift+l"],"command": "fast_olympic_coding_hook"},
}

然後如果覺得用滑鼠點選瀏覽器上的外掛過於愚蠢,其實 Competitive 有快捷鍵,是 Ctrl+Shift+U (可以根據自己習慣更改,我改成了 Ctrl+B


最後恭喜你,獲得了一個簡潔、大方、免費,好用、自動化,人性的編輯器了!

祝你 rp++。

相關文章