Scrapboxプロジェクト管理
現状の私の運用方法
普段はprivateプロジェクトでページを書き、公開したいページにだけ #public というハッシュタグをつける 定期的に半自動化したコードを動かして、ハッシュタグがついているページを/0xbara0にうつしている 前提
Macbook
処理フロー
1. privateプロジェクトにてページデータをexport
2. 指定フォルダにjsonファイルを追加するとフォルダアクションが発火しpythonファイルを実行 3. jsonファイルを読み込み、 #public があるページのみを抽出したjsonファイルを作成 4. publicプロジェクトにjsonファイルをinport
フォルダ構成
code: folder構成
├── exportedフォルダ・・・ここにexportしたjsonファイルを入れる
├── outputフォルダ・・・ここに処理後のファイルが入る
└── sc.py・・・処理コード
code:sc.py
import glob
import os
import copy
import json
list_of_files = glob.glob(exported_path+'*')
latest_file = max(list_of_files, key=os.path.getctime)
a = open(latest_file)#ファイル読み込み
b = json.load(a)
private_page_num_list=[]
for page_num in range(len(b"pages")): # print(text)
if "#public" not in text:
private_page_num_list.append(page_num)
for i in sorted(private_page_num_list, reverse=True):
page_list.pop(i)
with open(output_path+'for_input.json', 'w') as f:
json.dump(b, f, ensure_ascii=False, indent=4)
フォルダアクション
自分でやり方を検討した理由
ありがたいことに世の中には親切な方がいて、自動で同じことをするコードを公開してくれている。
でも私は自分でやりたかった。
私のコード読解能力が低すぎるから
理由2)Herokuが2022年下旬から無料ではなく、毎月数百円かかる
理由3)公開するという作業を重くすることで、公開時によりコンテンツを磨くようにしたい 試行錯誤の記録
cssファイルでタイトルに特定の文字列を含むページを隠す運用
参考
ページの並び順を自動で変える方法が分からず、空欄が出来てバレちゃう
settingsからどのページを隠しているのかがバレる?
pin止めしたページだけ表示する
これであれば必ず一番上に来るから、ページの並び順を固定出来なくてもOK
でもpin止めが増えるのが嫌だ、、、
そもそも全部publicでも良いのでは??
最初はすべてpublicにしていたが、privateな内容を書く際にためらってしまった