前言
在使用 Typora 的時(shí)候,我將圖片的保存路徑設(shè)置為了如下所示:
這樣設(shè)置是為了更方便的管理筆記中的圖片,但圖片文件夾卻也顯示在了側(cè)邊欄中,隨著筆記增多,我的側(cè)邊欄越來越亂...
難道要忍氣吞聲嗎?那必不可能,在經(jīng)過長時(shí)間的尋找,終于有了解決辦法!
解決方法
參考這篇文章「md之Typora如何將圖片集中保存到統(tǒng)一的文件夾內(nèi),并使用相對(duì)路徑 」我發(fā)現(xiàn),當(dāng)文件夾的名稱以 .
開頭時(shí)是不會(huì)顯示在側(cè)邊欄中的。于是將圖片保存路徑更改為: ./.${filename}.assets
修改了幾個(gè)已有的文件夾,發(fā)現(xiàn)確實(shí)有效:
但更改設(shè)置只能應(yīng)用于新筆記,對(duì)于已有的筆記沒有作用??粗约旱囊淮蠖压P記,我知道手動(dòng)操作肯定是不行的,于是就去寫了一個(gè)小的 python 程序來自動(dòng)操作。
代碼
2023/5/8 19:13
1.修復(fù)上一版本筆記中圖片地址替換產(chǎn)生的文本內(nèi)容錯(cuò)亂
2.增加筆記中img標(biāo)簽的路徑替換
代碼奉上:
import os
import re
def modify_content(path, md_name):
try:
# 臨時(shí)文件名
md_name_temp = 'temp_' + md_name
os.chdir(path)
# 打開md文件,fr用來讀取,fw用來更改后寫入生成新文件
with open(md_name, 'r', encoding='utf8') as fr, \
open(md_name_temp, 'w', encoding='utf8') as fw:
# 讀取文件內(nèi)容
data = fr.read()
# 替換文件內(nèi)容
title = (md_name.split('.'))[0]
data = re.sub('src="' + title + '\.assets', 'src=".' + title + '.assets', data)
data = re.sub('\(' + title + '\.assets', '(.' + title + '.assets', data)
# 寫入文件并關(guān)閉資源
fw.write(data)
fr.close()
fw.close()
# 刪除原文件并用新文件替換
os.remove(md_name)
os.rename(md_name_temp, md_name)
print(f'{md_name} done...')
except FileNotFoundError as e:
print(e)
if __name__ == '__main__':
# 要處理的目標(biāo)路徑
work_dir = r'D:\CHD\NoteBook'
try:
for root, dirs, files in os.walk(work_dir):
# 跳過.開頭的隱藏文件夾和.assets文件夾
if re.search('\.', root): continue
print('========================================')
print(f'Path: {root}')
count = 0
for dir in dirs:
match_img_foler = re.search('\.assets$', dir)
os.chdir(root)
if match_img_foler:
# 匹配到.assets文件夾,修改文件夾名
new_name = '.' + dir
os.rename(dir, new_name)
print(f'{dir} done...')
# 修改同名md文件內(nèi)容
md_name = re.sub('assets', 'md', dir)
modify_content(root, md_name)
count += 1
print(f'{count} Item Done!')
except Exception as e:
print(e)
設(shè)置工作路徑 work_dir
,程序會(huì)自動(dòng)遍歷所有子路徑下的 assets 文件夾和 md 筆記并進(jìn)行修改操作:
個(gè)人編碼水平較為淺薄,程序僅作為一個(gè)思路進(jìn)行分享,如有不足和改進(jìn)之處還請(qǐng)指出。
提醒:數(shù)據(jù)無價(jià)!執(zhí)行程序前請(qǐng) 提前做好備份 ,重要文檔請(qǐng)謹(jǐn)慎操作。
參考
md之Typora如何將圖片集中保存到統(tǒng)一的文件夾內(nèi),并使用相對(duì)路徑文章來源:http://www.zghlxwxcb.cn/news/detail-425993.html
用 Python 批量替換 md 文件內(nèi)容文章來源地址http://www.zghlxwxcb.cn/news/detail-425993.html
到了這里,關(guān)于Typora 隱藏側(cè)邊欄圖片文件夾的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!