0-Notion寫程式好幫手:封面
0-Notion寫程式好幫手:封面

內容大綱

前言

還沒接觸 Notion 時的我都是利用 Evernote + 馬克飛象來做程式筆記,程式筆記比較難以用紙筆作為筆記工具,要找某個片段也很難搜尋,但在使用 Evernonte 時最大的困擾是它的程式碼片段太過於簡單,也無法增加註解或是連結到筆記其他頁面做相關說明,導致無法做知識管理庫、知識串連的效果,只能單篇存筆記。

直到我發現了 Notion, Notion 提供程式碼編輯區塊不僅可以標記是哪種程式語言,主流語言都可以選擇,也能做程式碼高亮 Height Light,也能標記是屬於哪個檔案

1-Notion寫程式好幫手:範例
1-Notion寫程式好幫手:範例

上圖可以看到我選擇語言為 JavaScript,也能夠標示此處程式碼為 permission.js 檔案,於是我立刻拋下 Evernote ,轉向 Notion 懷抱。

下面我會圖文做範例,向你展示 Notion 程式碼區塊功能到底有哪些,以及 2021.7月 Notion 也開放 嵌入Replit 囉!在自己的筆記上也可以輕易跑程式碼囉,範例部分參考官方說明文件

Notion 程式碼高亮

可以直接用 /code 來呼叫程式碼區塊(Code Block),下面的程式碼區塊是以 JavaScript 來做範例

2-Notion寫程式好幫手:程式碼高亮
2-Notion寫程式好幫手:程式碼高亮

Notion 支援超多種格式,包含 Bash、C、Clojure、C++、CSS、Dart 、Docker、Go、HTML、Less、JavaScript、Markdown、Php、Python、R、SQL、TypeScript、 XML、Sass、Scss、Shell、Scheme,我並沒有完整列出來,實際上還有更多!

Notion 程式碼區塊可以讓我們展示之外,也能夠分享給其他開發者,或是你想要做一個 Library 記錄程式碼片段(Code Snippets)

新增 Code Block

點擊加號圖案之後,再輸入 Code 按下 Enter,也可以用 /code 按下 Enter 來快速呼叫程式碼區塊,你便可以在底下輸入框打下程式碼,也可以貼上程式碼,別忘了選擇程式語言是哪一種

3-Notion寫程式好幫手:新增 CodeBlock
3-Notion寫程式好幫手:新增 CodeBlock

排列程式碼區塊

利用拖曳方式將程式碼區塊移動,變成一行有兩欄的成果,當你滑鼠移到區塊最左邊會出現⋮⋮ Icon,便可以開始拖曳

4-Notion寫程式好幫手:排列程式碼區塊
4-Notion寫程式好幫手:排列程式碼區塊

程式碼自動換行

程式碼區塊太長,不喜歡出現橫向捲軸怎麼辦?Notion 也有提供 Wrap Code 的功能,也就是自動換行。

將滑鼠移到程式碼區塊,會出現••• Icon,點擊後會出現選單,再將 Wrap Code 開啟即可,它會將過長的程式碼自動換行,消滅橫向捲軸

5-Notion寫程式好幫手:程式碼換行
5-Notion寫程式好幫手:程式碼換行

一鍵複製程式碼

Notion 也有提供複製程式碼的功能,將滑鼠移到程式碼區塊右上角,會出現「Copy to clipboard」的按鈕,點擊後便會複製整個區塊程式碼,你可以貼在任何你喜歡的地方

注意:若是僅能閱讀(Read-Only)的使用者,是看不到「Copy to clipboard」按鈕的

6-Notion寫程式好幫手:複製程式碼
6-Notion寫程式好幫手:複製程式碼

程式碼加上說明、評論

你可以在程式碼區塊(Code Block)留下評論,就像其他區塊留下評論的操作一樣。

滑鼠移到程式碼區塊最左邊會出現••• ,點擊 Icon,會出現小選單,其中點擊 Comment,便可以留下評論

你也可以和協作對象用 @ 標記他們,當評論完成後,Notion 便會跳通知給你的協作對象

7-Notion寫程式好幫手:加上評論
7-Notion寫程式好幫手:加上評論

此此之外 Notion 也開放嵌入 Replit 囉!這代表著你可以在 Notion 寫 Code 也可以直接運行代碼

Replit 是什麼

如果你沒有聽過 Replit,你有可能聽過 CodePen,這些服務都是相同的,讓你直接在瀏覽器上編輯和執行程式,有效降低你在學程式初期因為架設環境的難題而放棄,你可能有聽過諸如此類的話:「從 0 到 1 放棄學程式」,都是因為光是架設環境寫出一句 Hello World 就會讓很多初學者放棄

Replit 提供目前常見的程式語言,包含像是 Java、Python、Php 、JavaScript 等等,也是一個很好的教學平台,有些線上課程像是 知名AlphaCamp 也曾用過 Replit 作為學生練習平台。

8-Notion寫程式好幫手:Replit
8-Notion寫程式好幫手:Replit

Embed Replit

在 Notion 貼上 Replit 網址,出現小選單,選擇 Embed a Repl,便會自動嵌入

9-Notion寫程式好幫手:示範Replit
9-Notion寫程式好幫手:示範Replit
索取免費資源

黑手將會寄送給你 Notion 實用模板包含台股、課程管理知識庫、閱讀知識庫