發表文章

目前顯示的是 1月, 2023的文章

使用Netlify發佈Obsidian筆記

圖片
前言 寫好的Obsidian 筆記想要公開在網站分享給別人,目前我使用的有幾種方式: EverNote。 Notion。 Blogger。 以上三種在過程中,都需要一些小調整。若筆記有修改,除了Blogger會更新,通常也不會再去更新已分享出去的筆記。 若不想要那麼麻煩,Obsidian也有付費方式,可以發行。 參考此篇 10個如何將Obsidian公開在網路 ,選定了一個功能較完整的版本,例如支援: Graphic 、左方選單、筆記之間的連結等。 架構 使用Netlify靜態網站,免費、支援自訂網域。 個人使用起來比Github Page好用,易上手。 網站樣板 obsidian-zola ,透過javascript,將Obsidian筆記變成Html網頁顯示。 Github,你的Obsidian儲存庫。 你原本的Obsdian不用作修改,只需加一個netlify.toml即可。 使用方式 在Github建一個新的Repository,將你Obsidian要公開的筆記及.obsidian資料夾複製過來,並新增檔案 Home.md 及 netlify.toml ,如下圖所示 Home.md 不用修改,只是作為入口首頁。 neltify.toml 修改參數: REPO_URL : Github 位置 SITE_URL: netlify的URL [build] command = "rm -rf __obsidian __site && mkdir __obsidian && mv * __obsidian || true && git clone https://github.com/ppeetteerrs/obsidian-zola.git __site && __site/run.sh" publish = "public" [build.environment] LANDING_BUTTON = "進入我的大腦" LANDING_TITLE = "首頁標題" LANDING_DESCRIPTION = "首頁副標題" # 首面的筆記名稱 LANDING_PAGE = "home"

Obsidian DataviewJs的應用

圖片
Foreword DataviewJs為Dataview的更進一步應用,使用javascript撰寫。 筆記示範,如何使用DataviewJs並結合CustomJs讓取得Tasks的方式可以在多個筆記引用。 Content 安裝PlugIn CustomJs 指定js的資料夾 撰寫 MyTask.js 取得所有 未完成的工作 ,並濾掉不需要的 資料夾 及 header class MyTask { getTasks(dv) { let tasks = dv.pages().where((f) => f.file.path.indexOf("60.Extra") == -1).file.tasks; tasks = tasks.where( (t) => !t.completed && t.section.subpath.indexOf("Routine") == -1 ); tasks.sort((t) => t.due); return tasks; } } 完成後放到資料夾 60.Extra/67.Assets/js DataviewJs顯示Tasks 透過customJs 使用MyTask,並呼叫getTasks取得待處理工作。 針對 各狀態 過濾,顯示 標題及Tasks 。 若要顯示結果,將dataviewjs- marked ,的 -marked 移除。 const isDue =(t)=>{ var result= moment(new Date(t.due)).isBefore(moment(),"day"); return result; } const isToday =(t)=>{ var result= moment(new Date(t.due)).isSame(moment(),"day"); return result; } const isUpcoming =(t)=>{ var result= moment(new Date(t.due)).isAfter(moment(),"day&q

git 修改最後一次的commit

圖片
  前言 你是否會常commit了變更後,發現少寫了什麼或某段程式寫錯了,然後就會修改後,再commit一次,假設你又跟我一樣常犯傻,剛的情況又來一次的話, history就會長得如下3個commit,多了v2,v3 。 解決方法 針對commit了,又後悔想修改的話,針對幾個情境的解決方式。 1. 修改/新增併入最近的commit 如前言所述,最近的commit為“訂單新增API v3”,如圖,我想再將修改內容,併入v3的commit。 使用方式 將修改的先加入暫存區 (同Visual Studio 加入到stage) git add --all 簽入加上參數 –amend –no-edit git commit --amend --no-edit -–amend: 將暫存區的加入最近一次的commit -–no-eidt: 不需要commit message commit沒有增加,但內容已由v3變成 v3-1 2.修改最近commit的訊息 有時簽入時,才發現訊息寫錯了,想修改該如何做? 本例示範將“訂單新增API v3” 改成“訂單新增API v3 OK ” 使用方式 簽入加上參數 --amend -m 參數 git commit --amend -m “訂單新增API v3 OK” 一樣是3個commit,但最後一個訊息已加上“OK” 注意事項 上述的兩種方式,其實都是撒掉前一次的commit,再換一個新的commit,仔細看的話,ID是不一樣的。在本地的commit可以任意使用,但針對 已push出去的commit ,儘量 不要這樣用 ,以免造成別人在處理衝突的困擾。 總結 以上兩個指令,可以大量減少一些不必要的commit,讓整個歷史記錄更清楚明瞭。 白話文:可以簽了又簽、簽了又簽,還是一個commit。 相關參考 git 修改歷史訊息

Obsidian 上傳圖片到Github

圖片
前言 在Obsidian將複製的圖片貼到筆記裡時,照預設的方式,會放到相對應或你指定的本機目錄內。目前有些筆記需要分享出去或公開的Blog,在轉出去的過程,針對那些在本機的圖片,需要再處理一次,轉成網路的位置,處理一次就令我頭痛了。所以之後的筆記只要是插入圖片,都是來自網路資源。 插入來自網路圖片,代表著勢必要先上傳到網路某個空間,且支援公開的靜態資源,然後取得URL,再放到筆記內…..這個作法,太土炮,作個幾次,就想翻筆電了XD。 本文會介紹如何在寫筆記的過程,將複製的圖片貼到筆記時,先上傳圖片到Github上,並取得圖片在Github上公開的URL,貼到筆記內。 如何使用 前置設定 先到Gitthub建立一個respository,本文: ObsidianAssets。 到 Github個人設定 ,建立Token ,只會顯示1次,要保存好。 下載Upgit ,upgit_win_amd64.exe(windows),放到你指定的位置,例如:D:.exe 在剛的位置,新增新增config.toml,並將github的資訊填入 # 預設上傳者 default_uploader = "github" # 圖片位置設定 rename = "{year}/{month}/upgit_{year}{month}{day}_{unix_ts}{ext}" [output_formats] "bbcode" = "[img]{url}[/img]" "html" = '<img src="{url}" />' "markdown-simple" = "![]({url})" # Github 上傳者 [uploaders.github] # 保存文件的分支,例如 master 或 main branch = "master" pat = "你的Token" # 您的respository repo = "ObsidianAssets" # 您的 Gtihub 用户名 username = "kimx" 設定好後