dsh-theme-newsprint:報紙襯線主題插件

DeepSeek Harness(DSH)採用插件化架構,開發者可以通過安裝社區主題插件快速切換界面風格。dsh-theme-newsprint 是一款將 Typora newsprint 主題的報紙排版氣質移植到 DSH Web GUI 的插件。它通過純 CSS 實現暖白報紙與暖褐暗色方案,並引入襯線字體棧和特定的排版筆畫,爲 DSH 提供一份具有閱讀感的視覺風格。

核心特性

插件核心特性包括:
* 純 CSS 實現:無 hooks,無圖片資產,無運行時依賴。
* 雙配色方案:支持暖白紙張與暖褐暗色兩套配色。
* 襯線字體棧:正文使用 Georgia → PT Serif → 思源宋體 → 宋體 的降級字體棧。
* 排版筆畫:包含 h1、h3、blockquote 等元素的報紙排版筆畫。
* 埋點機制:使用 cordis 埋點插件,不依賴 @deepseek-ai/dsh-client-ui-theme。

安裝

通過 dsh plugin 命令安裝,插件本身是一個普通的 profile bundle。

# 從倉庫安裝
dsh plugin --profile web add github:2754LM/dsh-theme-newsprint

# 或安裝預構建包
dsh plugin --profile web add https://github.com/2754LM/dsh-theme-newsprint/releases/latest/download/dsh-theme-newsprint.tgz

安裝完成後刷新瀏覽器即可生效。若主題未出現,需重啓一次 dsh(bundle 列表在啓動時讀取)。

啓用與停用

通過編輯配置文件控制主題的啓用與停用。

  1. 打開配置文件:~/.dsh/profiles/web/cordis.patch.yml。
  2. 添加或修改條目:
    - id: newsprint
      disabled: true    # true = 停用;false 或刪除這一行 = 啓用
加載器會自動熱重載。插件以客戶端模式運行,修改配置後普通刷新瀏覽器即可生效,無需重啓 dsh。

排版與配色

排版筆畫

排版的核心在於筆畫。插件定義了以下排版規則:

元素 處理方式
h1 下方一條 1px 細線,常規字重,上方留 2em
h3 恢復常規字重,不逐級加粗
blockquote 左側 5px 粗邊框 + 斜體 + 弱化墨色
thead th 大寫
tr:nth-child(even) 斑馬行
hr 只保留一條 1px 底線
a 默認無下劃線,懸停時顯示
img 題注使用暗磚紅調

配色方案

配色方案集中在 lib/client.js 的 SCHEMES 中。兩套方案共用 buildTokens() 角色映射,修改一處即可全局生效。

  • 亮色:底色爲暖白 #f5f3ed,墨色爲深褐 #1f0909,強調色爲海藍 #065588。
  • 暗色:底色爲暖褐黑 #1a1815(非純黑),墨色爲暖白 #ece7dd,強調色提亮爲 #5aa9d6。

開發調試

若要修改配色,只需編輯 lib/client.js 中的 SCHEMES。修改後刷新瀏覽器即可,因爲插件的 <style> 是客戶端掛載時注入的。

迴歸測試需要本機有 Chrome:

npm test

若 ws 不在本包旁邊,可用 DSH_ROOT 指向任一帶 ws 的 checkout:

DSH_ROOT=/path/to/deepseek-harness npm test

注意事項

  1. 字體依賴:插件字體均調用系統已有的字族,不內嵌任何字體文件。
  2. 多主題衝突:多主題並存會互相疊加,建議只留一個啓用,其餘寫上 disabled: true。
  3. 暗色邏輯:暗色不是亮色的機械反轉,而是暖調暗色,暗階間距比亮階更寬。
  4. 許可證:插件採用 MIT 許可證。

dsh-theme-newsprint 通過純 CSS 和系統字體棧,爲 DSH 帶來了報紙級的閱讀體驗。更多細節與源碼,請參考 GitHub 倉庫:https://github.com/2754LM/dsh-theme-newsprint。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜