2. 文字頻道
文字頻道是 HakoSpace 中進行非同步討論的主要場所。本章說明訊息輸入框、HakoSpace 完整支援的文字格式語法、訊息上的互動操作(反應 / 釘選 / 回覆 / 編輯 / 刪除),以及多媒體與連結在訊息中的呈現方式。所有以 # 為前綴的頻道都套用相同的訊息行為,差別包括誰能看見、誰能發言、能不能編輯、刪除或釘選訊息,以及附加檔案與保留訊息的規則(這些由持有「管理頻道」權限的成員在頻道設定中決定,owner 與 admin 一律包含在內)。論壇類型的特殊頻道見 §5。
2.1 訊息輸入框
Section titled “2.1 訊息輸入框”訊息輸入框位於訊息區下方。輸入框內預設顯示「在 #{頻道名稱} 中發送訊息」的提示文字(私訊則顯示「傳送訊息」)。基本操作:
- 輸入內容後按 Enter 送出。
- 按 Shift + Enter 換行(不送出)。
- 用注音等輸入法選字時按的 Enter 與 Esc 只用在選字上,不會送出訊息。
- 單則訊息最多 10000 字元。
- 輸入框會隨輸入長度自動長高,到一定高度後切為內捲動。
輸入框旁有一排工具按鈕:
- 附加檔案:點擊開啟本地檔案選擇器,可上傳圖片、文件或其他檔案,也可以一次選多個。
- 插入貼圖:開啟貼圖選擇器,挑選伺服器或個人類別的貼圖插入訊息。
- 格式說明:點擊彈出「格式與功能」小卡,列出 HakoSpace 支援的所有 Markdown 語法(詳見 §2.2)。
- 顯示預覽 / 隱藏預覽:切換輸入內容的即時預覽,送出前先看格式套用後的樣子。
輸入框右側是送出按鈕。送出過程中按鈕會切為載入動畫,避免重複送出。
一則訊息最多可以附加 10 個檔案。 把檔案加進來有三種方式:
- 按「附加檔案」,在檔案選擇器裡選一個或多個檔案。
- 把檔案拖到訊息列或輸入框上放開(見下方「拖放檔案」)。
- 在訊息輸入框裡貼上:剪貼簿裡的圖片(例如截圖)或其他檔案都會加進來;只貼文字或連結時,照常貼進輸入框。
加進來的檔案會先放在輸入框上方的待送區,送出訊息時才會上傳。有檔案被擋下時,畫面上會寫出原因(見下方「檔案沒有加進來時」)。
待送區的呈現方式:
- 圖片附件:顯示縮圖。
- 一般檔案附件:顯示檔案圖示、檔名與大小。
- 每個附件的右上角各有一顆 X,按一下就把它從待送區移除。
- 整排附件的下方有一顆「標記為防劇透」按鈕,旁邊以
3/10這樣的格式顯示已附加數量與上限;附滿之後「附加檔案」按鈕會變灰。
防劇透是整則訊息的設定。 標了防劇透之後,這則訊息的所有附件都會被蓋住 —— 包含非圖片的檔案卡,連檔名都看不到;對方點一次就全部揭露。「標記為防劇透」按鈕的文字不會變,目前是開還是關由它的顏色表示。
拖放檔案:HakoSpace Desktop 與 HakoSpace Web 都可以用拖放的方式附加檔案。從資料夾視窗或電腦桌面把檔案拖進來,在訊息列或輸入框上放開即可,一次拖好幾個也可以。文字頻道、私訊、語音頻道的文字聊天區都能這樣附加,在論壇貼文裡回覆時也一樣。
檔案拖進來、還沒放開時,訊息列與輸入框會被一層提示蓋住。提示寫著「放開以附加檔案」,下面一行是「一則訊息最多 10 個」;待送區裡已經有檔案時,這一行會變成例如「一則訊息最多 10 個,目前已附加 3 個」。放開後,檔案只是進到待送區、還不會送出,你可以直接接著輸入要一起送出的文字。
當下不能附加檔案時,這層提示會改成「無法在此附加檔案」,下面一行寫出原因;這時放開,什麼都不會加入。原因可能是:
- 「附件已達上限 10 個」:待送區已經放滿。
- 「上傳中…」:按下送出後,檔案還在上傳。
- 「此頻道已停用傳送功能」:這個頻道目前不開放你傳送訊息。
- 「此頻道已關閉檔案上傳」:這個頻道目前不開放你上傳檔案。
- 「此貼文已封存,無法回覆」或「此貼文已鎖定,僅 admin 可回覆」:論壇貼文的狀態限制了回覆(見 §5.4)。
檔案沒有加進來時:拖放時如果提示寫著「無法在此附加檔案」,原因就寫在那層提示上(見上方「拖放檔案」)。其他時候,不論是用「附加檔案」選檔、貼上,還是放開拖進來的檔案,只要有檔案被擋下,輸入框上方就會出現一條紅色橫幅說明原因。
橫幅上的這些說明數秒後會自動消失,也可以按 X 先關掉。可能看到的說明包括:
- 「一則訊息最多 10 個附件,其餘未加入。」:超過 10 個的部分沒有加進來。
- 「不允許 {副檔名} 檔案類型。」:伺服器不接受這種副檔名的檔案。
- 「超過此頻道的單檔上限({上限}),未加入:{檔名}」:檔案超過這個頻道允許的單檔大小。
- 「已經加過,未重複加入:{檔名}」:待送區裡已經有的檔案,再選一次或再拖一次不會重複加入。
- 「無法附加資料夾。」:拖進來的資料夾不會被附加,同一次拖進來的其他檔案照常加入。
- 「此頻道已關閉檔案上傳」:貼上的檔案不會加入。這時「附加檔案」按鈕也會變灰,游標停在按鈕上會顯示同一句。
如果你正在回覆某則訊息,輸入框上方會出現一條回覆提示列,顯示「回覆」、對方的名稱與被回覆訊息的預覽。提示列右端有 X 按鈕可取消回覆,回到一般發言模式。
輸入框變窄時的排法:輸入框獨佔上面一整列,工具按鈕移到下方一列,送出按鈕固定在右邊。工具列永遠只有一列高;空間不夠時整列可以左右捲動,此時邊緣會有一顆按鈕露出一半並帶漸層淡出,提示那個方向還有東西。送出按鈕不會被推走。
訊息沒有送出去時:訊息還沒送出就失敗時(例如未連線、附件上傳失敗),輸入框上方會出現一條紅色橫幅說明原因,你打的字與已經附加的檔案都還留在輸入框裡。常見的原因包含未連線(「未連線 — 訊息沒有送出,內容仍保留在輸入框。」;有附件時是「未連線 — 訊息沒有送出。附件仍在輸入框,再送一次不會重新上傳。」)與附件被頻道的檔案空間設定擋下(「上傳被拒絕,訊息沒有送出:」後面接原因)。這條橫幅會一直留著,直到你按 X 把它關掉、或下一則訊息成功送出為止。
訊息送出之後才被伺服器拒收時,該則訊息在訊息列中會標上「(傳送失敗)」或「(失敗)」,輸入框上方另外出現一條提示:「伺服器未接受這則訊息:」後面接原因。這條提示數秒後自動消失,也可以按 X 關掉。訊息含有伺服器設定的禁用字而被擋下時例外:那則訊息會從訊息列消失,提示改為「您的訊息包含禁用字,無法發送。」
「上傳被拒絕,訊息沒有送出:」後面接的是下列三種原因之一:「此頻道已關閉檔案上傳」、「超過此頻道的單檔上限({上限})」、「此頻道的檔案空間不足(上限 {上限})」。上傳因為其他原因失敗時,橫幅直接顯示伺服器回覆的原文,或「上傳失敗 — 訊息沒有送出。」。「伺服器未接受這則訊息:」後面也可能是這三種原因,其他原因照伺服器回覆的原文顯示。頻道的這些設定見《管理員手冊》§2.1。
2.2 文字格式與 Markdown 語法
Section titled “2.2 文字格式與 Markdown 語法”HakoSpace 訊息支援 Markdown 風格的文字格式。完整行內語法如下:
| 語法 | 效果 |
|---|---|
@使用者名稱 |
提及用戶 |
**文字** |
粗體 |
*文字* |
斜體 |
***文字*** |
粗斜體 |
~文字~ |
|
||文字|| |
防劇透 / 隱藏文字(點擊揭露) |
`文字` |
行內程式碼 |
{font:字體名稱}文字{/font} |
自訂字體區域(不同字型的特殊文字效果) |
防劇透文字:用 || 包住的內容,在揭露之前會被一塊色塊整個蓋住。色塊蓋住的是這段文字本身,裡面的連結、提及、行內程式碼與 emoji 都一起蓋住,色塊裡的連結要等揭露之後才能點;訊息下方如果出現連結預覽卡,預覽卡不會被蓋住。點一下色塊就會揭露;用鍵盤時,按 Tab 移到色塊上,再按 Enter 或空白鍵。
除了行內語法,HakoSpace 也支援以下 Markdown 區塊語法:
- 標題:
# 一級到###### 六級 - 引言:
> 引用文字 - 無序清單:
- 項目或* 項目 - 有序清單:
1. 項目、2. 項目…… - 多行程式碼區塊:用三個反引號 ``` 開頭與結尾包住內容,可選擇加上語言名稱。內容太寬時,程式碼區塊本身可以左右捲動 —— 訊息中的其他內容(長網址、長暱稱、寬圖片)一律自動換行或縮到容器內,只有程式碼區塊保留左右捲動,因為強制換行會破壞縮排
- 水平分隔線:
---
忘了語法時,點訊息輸入框旁邊的「格式說明」按鈕可以隨時查閱。
2.3 訊息上的互動操作
Section titled “2.3 訊息上的互動操作”把滑鼠移到訊息上方時,訊息右上會出現一條操作列。在行動裝置上則改為長按訊息(約 0.5 秒)跳出相同的選單,並伴隨輕微的觸覺回饋震動。操作列由左到右包含:
- 新增反應:點擊開啟 emoji 選擇器,可從快速 emoji(👍 ❤️ 😂 😮 😢 🎉 🔥 👀 💯 🙏)挑選,或點圖示打開完整 picker 找其他 emoji。
- 釘選 / 取消釘選:把訊息固定在頻道頂部 / 取消釘選。釘選後該訊息會多出一個小釘子圖示,方便你日後從訊息流中辨識。
- 回覆:引用該則訊息回覆。輸入框上方會出現回覆提示列(見 §2.1);訊息送出後,你的訊息上方會帶一個小型引用框(被回覆訊息的作者與內容),點擊引用框會自動滾動到被引用的訊息。
- 編輯:僅自己的訊息可編輯。進入編輯模式後輸入框會直接覆蓋原訊息位置,下方會出現提示「按 Esc 取消 • 按 Enter 儲存」。編輯後的訊息會顯示「(已編輯)」標籤。
- 刪除:點擊後跳出確認對話框,按下紅色確認鈕才會刪除。被刪除的訊息會直接從訊息流中消失,不會留下「此訊息已刪除」的占位。
訊息下方的反應顯示為一排小膠囊,每個膠囊顯示 emoji 與該 emoji 的累計人數。已點選過的反應以強調色標示;再次點擊同一個膠囊可取消你的反應,點擊未點選的膠囊則加入反應。游標停在膠囊上時會顯示有哪些成員加了該反應。
2.4 圖片、檔案與連結
Section titled “2.4 圖片、檔案與連結”訊息可以附帶多種媒體與連結內容:
- 圖片(
.png/.jpg/.jpeg/.gif/.webp):訊息中顯示的是縮小過的版本,載入快也省流量;點擊會以全螢幕的圖片檢視器開啟原圖。圖片在載入完成前就先佔好版面位置,所以載入時下方的訊息不會被往下推。同一則訊息裡連續的圖片會收成一組格狀排列,檔案卡則留在原本的順序位置。 - 防劇透圖片:發送圖片時可標記「防劇透」,圖片會以模糊預覽呈現,點擊後才揭露原圖(見 §2.1)。
- 其他檔案:訊息附帶非圖片檔案時,會以檔案卡片呈現,顯示檔案圖示、檔名、類型徽章與下載按鈕;點擊卡片可開啟或下載。檔名顯示的是上傳時的原始檔名;類型徽章取自伺服器實際存放的檔案,知道大小時會一併顯示(例如
PDF · 1.2 MB)。 - 連結:訊息中的網址會自動轉成可點擊的超連結。若該網站支援預覽,訊息下方會出現一張 URL 預覽卡,內含網站名稱、標題、描述與封面圖。
- 貼圖:訊息中如果只有 1–3 個貼圖、無其他文字時會以大尺寸顯示;混合在文字訊息中時則以小尺寸顯示。已被刪除的貼圖會以占位圖代替(不再顯示原圖)。
已移除的檔案:文字頻道與語音頻道可以把「檔案空間滿了時」設成「移除最舊的檔案」(見《管理員手冊》§2.1)。檔案被移除後,訊息本身仍然保留,原本的位置改成一張小卡,顯示圖示、檔名與「已依頻道檔案空間規則移除 · {日期}」,日期是移除的那一天;圖示是畫斜線的圖片(原本是圖片時)或打叉的檔案(原本是檔案時)。在收成一組格狀的圖片裡,被移除的那一格只顯示圖示與這行字。圖片檢視器只在還留著的圖片之間切換。
載入不到的圖片:圖片載入失敗時,原本的位置改成一張小卡,顯示畫斜線的圖片圖示、檔名與「無法載入此檔案」;在收成一組格狀的圖片裡,載入不到的那一格只顯示圖示與這行字。
圖片檢視器的操作:點擊訊息中的圖片會開啟全螢幕的圖片檢視器。一則訊息有多張圖片時,畫面下方顯示目前是第幾張、共幾張,兩側有切換箭頭。
用滑鼠或觸控板時,上方按鈕列由左到右是:放大、縮小、目前的縮放倍率(點一下回到原始大小)、下載、開啟原始檔、關閉。另外還可以:
- 滾輪縮放,以游標所在位置為中心;在圖片以外的深色背景上滾動也有效。觸控板的兩指開合同樣是縮放圖片。
- 放大後按住左鍵拖曳平移,游標會變成抓取的形狀。
- 雙擊在原始大小與放大之間切換,以你點的位置為中心。
- 鍵盤:
+放大、-縮小、0回到原始大小、Shift+ 方向鍵平移;方向鍵切換上一張 / 下一張,Esc關閉。
在觸控裝置上,上方按鈕列只有下載與關閉,縮放與切換改用手勢:
- 兩指開合縮放,以兩指中間為中心。
- 放大後單指拖曳平移。
- 雙擊在原始大小與放大之間切換。
- 向上或向下滑動關閉,圖片會跟著手指走、背景同時淡出。
- 未放大時左右滑動切換上一張 / 下一張。
平移有邊界,圖片不會被拖出畫面之外。