Scrapboxでロックを実現したい
一旦ロック解除します
コメント歓迎
Idea by bsahd.icon
lock(排他制御)、編集ロックする
ページに上書きロックを掛けておきたいことがある
どのような背景化
コピペして他のエディタで編集する時、
途中で他人に編集されるとその人の編集が消えるので
or 他の人に編集されるとノイズになるので
複数人で設計ドキュメントを同時編集するのは難しいので排他制御したい
文書の一貫性を担保するには、永久にロックする必要があるw
マナーベースの運用でいいはず
編集が消された人への考慮
ロックを外されない場合
Template:工事中 - WikipediaやTemplate:現在編集中 - WikipediaのScrapbox版として使ってみたい
工事中
デメリット
ちょっと編集したいので閉じてもらって良いですか
Duplicate this pageでforkを作成して編集すれば()
会話ゾーンに書き込めばいいのか
ロックされてる場合にページ内で会話したい
Wikipediaにおける会話ページ・ノートページのようなものがあればいいのかな
罫線の上で会話すればいいのか
code:テンプレート.scrapbox
罫線より下は{編集者のアイコン}により編集ロックされています
編集してもいいですが、上書きで消える場合があります。
{「2024/11/3 15:50」形式のタイムスタンプ}ロック開始。
48時間編集がなければ(iマーク→Updetad 〇〇 agoを見る)撤去して構いません。
会話やコメントは罫線の上でお願いします
hr.icon
{ロック対象}
排他制御があれば編集APIもしたいなー
共通:リクエストボディにAPIキーを入れる
排他制御は機械が使うときや文章書きなど思考のリソースを他人に割かれたくないときに便利なんだよな
RESTじゃないのは許して
POST /api/editor/lock
ページ名はリクエストボディに入れる
ロック獲得
他人にロックされてたら、423 Locked(本来はwebdav用コード)で取得失敗になる
一つのAPIキーにつき1ページしか同時にロックできない
上書きAPIがテキスト内容とAPIキーのみを取り、同じAPIキーで複数ページロックされると区別できなくなるから
他ページをロックしているときにロック獲得しようとすると428 Precondition Required
ロック中は人間も編集できなくなる
POST /api/editor/read
読み込み
ロックしていない場合、428 Precondition Requiredで読み込み失敗
POST /api/editor/edit
上書き
ロックしていない場合、428 Precondition Requiredで上書き失敗
変更のあった行を計算し、変更された行のみテロメアを更新
リクエストボディにforceUpdateTelomereを指定すれば、全行(タイトル行含む)のテロメアが更新される
POST /api/editor/unlock
ロック解除
まだロックしていない場合、428 Precondition Required
2024/11/3 17:08 1600文字いったので一旦終了bsahd.icon