[分享] BBS 程式碼上色器
軟體名稱:BBS 程式碼上色器
軟體連結:https://bbs-code-highlighter.netlify.app
安裝方式:網頁版免安裝
前陣子想找類似的工具沒找到,
後來想想這題目也蠻有趣的,就自己動手寫了一個。
由於 BBS 的顏色較少且較鮮豔,
所以上色時我有稍微節制一些,盡可能不要弄得太花。
另外,程式碼的解析是我從頭寫的,
所以嚴謹度可能還無法跟一些成熟的工具相比,
而且目前也只支援 C++(Qt/STL) 等幾種語言選項而已。
好了廢話不多說,先給大家看看上色後的程式碼:
01. /***************************
02. * C++ Sample Code
03. * Date Modified: 2021/3/11
04. ***************************/
05.
06. #include <string.h>
07. #include <stdio.h>
08.
09. class Movie {
10. public:
11. unsigned long id;
12. char name[32];
13. float rating;
14. char site[64];
15. };
16.
17. // <param name="m">Reference to Movie object</param>
18. void printMovie(const Movie &m) {
19. printf("Movie(%ld, %s, %.3f, %s)\n", m.id, m.name, m.rating, m.site);
20. }
21.
22. int main() {
23. Movie *m = new Movie();
24. m->id = 0xCF164uL;
25. strcpy(m->name, "The Avengers");
26. m->rating = 0x.0Fp8f - 70.0e-1F;
27. strcpy(m->site, "\"https://www.imdb.com/title/tt0848228/\"");
28.
29. if (m->rating > 6.0f ? true : false) {
30. printMovie(*m);
31. }
32. delete m;
33. return 0;
34. }
左邊要不要加上行號是可以勾選的。
如果有行號的話,在手機上閱讀應該會清楚一些。
最後補充說明一點,
目前後端程式是跑在免費的伺服器上,所以會有時數上的限制。
另外如果超過 30 分鐘沒有收到任何請求,後端也會被自動關閉。
如此一來,下次收到請求時會因為需要重啟,反應會稍微慢一些,請大家見諒。
恩,大概是這樣子,如果有什麼問題或建議,也歡迎大家留言告訴我。
祝大家上色愉快!:)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.218.168.129 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1615459179.A.C16.html
推
03/11 18:55,
3年前
, 1F
03/11 18:55, 1F
推
03/11 19:50,
3年前
, 2F
03/11 19:50, 2F
謝謝,我也是 VS Code 的愛用者 ^^
推
03/11 21:45,
3年前
, 3F
03/11 21:45, 3F
推
03/11 21:54,
3年前
, 4F
03/11 21:54, 4F
推
03/11 22:13,
3年前
, 5F
03/11 22:13, 5F
→
03/11 22:35,
3年前
, 6F
03/11 22:35, 6F
→
03/11 23:01,
3年前
, 7F
03/11 23:01, 7F
→
03/11 23:02,
3年前
, 8F
03/11 23:02, 8F
已加上程式碼超過畫面寬度的警告 (全形字及行號也有考慮在內)。
另外若偵測到 tab 字元也會跳出警告。
推
03/12 06:27,
3年前
, 9F
03/12 06:27, 9F
→
03/12 06:27,
3年前
, 10F
03/12 06:27, 10F
感謝建議,不過目前還沒有整合其它工具的規劃。
話說回來,如果有天整合了 formatter 進來,
這軟體的名稱應該要從"上色器"升級成"美化器"了~
推
03/12 15:34,
3年前
, 11F
03/12 15:34, 11F
→
03/12 15:35,
3年前
, 12F
03/12 15:35, 12F
有上色的部分大概就如 sample code 所顯示的那樣~
至於有點花的問題,如內文所述我有試著處理,但無法做到很理想,
例如程式碼的關鍵字密集度如果很高,畫面就容易變得花。
但如果把部分顏色換成暗色,又覺得有點太暗,不太好拿捏...
推
03/13 02:44,
3年前
, 13F
03/13 02:44, 13F
→
03/13 02:45,
3年前
, 14F
03/13 02:45, 14F
謝謝!不過很抱歉沒有...
至於複製到剪貼簿這功能,確實有不少東西可以探討。
但我在這邊只簡單用了 document.execCommand("copy") 來實作,
在比較舊的瀏覽器其實有複製失敗的可能性。
不過我相信有在寫程式的人應該不會用太舊的瀏覽器的 ^^
推
03/14 02:35,
3年前
, 15F
03/14 02:35, 15F
推
03/14 15:16,
3年前
, 16F
03/14 15:16, 16F
推
03/15 23:32,
3年前
, 17F
03/15 23:32, 17F
竟然意外釣出 L 大本尊!!
推
03/16 10:59,
3年前
, 18F
03/16 10:59, 18F
※ 編輯: pinefruit (180.218.168.129 臺灣), 03/16/2021 15:24:30
推
03/16 23:50,
3年前
, 19F
03/16 23:50, 19F
推
03/17 10:40,
3年前
, 20F
03/17 10:40, 20F
推
03/17 14:45,
3年前
, 21F
03/17 14:45, 21F
推
03/17 23:03,
3年前
, 22F
03/17 23:03, 22F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章