nana


誰
Twitter: @nonamea774
mail: nna star nna774.net
================================================================================
80i=<c-[>
================================================================================
for UserCSS
幅を広くする。
habahiro.css
.container, .col-page {
max-width: initial;
width: 85vw;
}
.page-column {
grid-template-columns: initial;
}
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/habahiro.css');
カラムが落ちちゃうのをなんとかする。
col.css
.title {
font-weight: 400;
}
col.css
span.code-block {
font-size: 88%;
}
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/col.css');
Alt+tで日付入力する際のフォーマット
日付を入力することあんまりないな となったので、Ctrl+iでアイコン出るやつがIMEに食われて出ないので変わりにそれを出す。
/help-jp/日付と時刻を入力する
ここでは日付を出す。
lib.js
if (scrapbox.Project.name === 'rebuild-kitashirakawa') {
scrapbox.TimeStamp.addFormat('[[]YYYY/MM/DD[]]')
} else {
scrapbox.TimeStamp.addFormat('[[nona.icon]]')
}
[[]nona.icon[]]
と書くのが正しいかのように一瞬/help-jp/日付と時刻を入力する#59afebff97c29100003fc707を見ると見えるが、そう書くと a
がformat文字列だと解釈されてしまうため、全体を2回囲むのが良い。/shokai/文字カウント
lib.js
import '/api/code/shokai/文字カウント/page.js'
import '/api/code/shokai/文字カウント/popup.js'
/Nota/nana#5c5c5a0cafd39200003984c4を読む。
読まない。
lib.js
// import '/api/code/Nota/nana/script_.js'
/shokai/行頭に引用符を付けるUserScript
lib.js
scrapbox.PopupMenu.addButton({
title: 'quote',
onClick: text => text.split(/\n/).map(line => `> ${line}`).join('\n')
})
/shokai/Tweet Menu
lib.js
scrapbox.PageMenu.addItem({
title: 'Tweet',
image: 'https://twitter.com/favicon.ico',
onClick: () => {
window.open(`https://twitter.com/intent/tweet?url=${encodeURIComponent(location.href)}&text=${encodeURIComponent(window.scrapbox.Page.title)}`)
}
})
lib.js
import '/api/code/rebuild-kitashirakawa/選択範囲をツイートする。/tweet.js'
モバイルでは + ボタンを表示しない(デカいので……)。
新しいページを作れなくなると困るので、メニューにでも入れておく(どうせ #nippo はリンクから作るのであんまり困らないのではないか?)。
no-new-button.css
.quick-launch .new-button {
display: none;
}
lib.js
scrapbox.PageMenu.addItem({
title: 'create new page',
onClick: () => window.location.href = 'new',
});
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/no-new-button.css');
とにかくスペースを詰める。
semai.css
.page {
padding-top: 12px;
padding-right: 12px;
padding-bottom: 12px;
}
.line.line-title .text {
padding-bottom: 0;
}
.col-page-side {
width: 0;
}
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/semai.css');
/kn1cht/embed-tweet
Tweetの埋め込み。
微妙に手を入れてある。
lib.js
import '/api/code/rebuild-kitashirakawa/embed_tweetの展開/expand.js'
script.jsにライブラリ的に使ってるやつはつなげとく。
気の狂ったインラインハイライトの謎の色付けを消す。
settings#5cda8afdafd3920000b6b525ここでも使うので、切り出す。
no-hightlite.css
code.code span {
color: inherit !important;
}
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/no-hightlite.css');
/moznion/input mode UserScript
lib.js
export let enableInputMode = () => {
let isInputMode = true;
const enterInputMode = (e) => {
if (!isInputMode) {
if (e) {
e.preventDefault();
}
$("#text-input").prop('disabled', false);
$("#text-input").focus();
$('.page').css('background', '');
isInputMode = !isInputMode;
}
}
const exitInputMode = (e) => {
if (isInputMode) {
$("#text-input").prop('disabled', true);
$('.page').css('background', '#dadada');
isInputMode = !isInputMode;
}
}
const modeSelectors = {
true: exitInputMode,
false: enterInputMode,
}
scrapbox.PageMenu.addMenu({
title: 'Input mode',
image: 'https://i.gyazo.com/5f2de2133ef5d9a35ac16b3b8aa1c6aa.png',
onClick: () => {
modeSelectors[isInputMode]();
},
});
$(window).keydown((e) => {
if (e.keyCode === 73) { // key code of "i"
enterInputMode(e);
}
if (e.keyCode === 27) { // key code of Esc
exitInputMode(e);
}
});
exitInputMode();
}
極悪
app.cssでdisplayが指定されているので、単純にnoneにできないので画面外に飛ばす。
no-show-plan.css
.plan-badge {
position: absolute;
top: -1000px;
}
lib.css
@import url('/api/code/rebuild-kitashirakawa/nana/no-show-plan.css');
過去の日報を書きはじめる。
これはこのプロジェクトでしか使えない(リダイレクト先のscrapbox projectがここに今のところ必ずなる)のでlibに書かずに直接scriptに書く。
他のプロジェクトでnippo書きたいことがもしあれば、sb-nippo-kakuにparameterでproject渡せるようにします(そんなことある?)。
実はYYYY/MM/DDのページならどこでも発動可能なので注意。
script.js
const YYYYMMDD = /^\d{4}\/\d{2}\/\d{2}/;
scrapbox.PageMenu.addItem({
title: 'Nippo Timemachine',
onClick: () => {
if (window.scrapbox.Page.title.match(YYYYMMDD)) {
window.location.href = `https://inside.kmc.gr.jp/~nona7/scrapbox/rebuild-kitashirakawa/nippo-kaku/?date=${encodeURIComponent(window.scrapbox.Page.title)}`
}
}
});
今日の日報を書く。
これも上記と同じような理由でscriptに直接書く。
script.js
scrapbox.PageMenu.addItem({
title: '#nippo kaku',
onClick: () => window.location.href = 'https://inside.kmc.gr.jp/~nona7/scrapbox/rebuild-kitashirakawa/nippo-kaku/'
});
外部リンクのお尻に印つけるやつが便利だったので、他のプロジェクトでも出るようにします。
lib.css
@import url('/api/code/rebuild-kitashirakawa/settings/show-blank.css');
lib.css
@import url('https://scrapbox.io/api/code/rebuild-kitashirakawa/gh:%E3%81%A7%E3%81%AF%E3%81%98%E3%81%BE%E3%82%8B%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E7%89%B9%E5%88%A5%E5%87%A6%E7%90%86/style.css');
lib.css
@import url('/api/code/rebuild-kitashirakawa/%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E8%A1%A8%E7%A4%BA%E7%B3%BB/lib.css');
Mermaidの表示
スクボ組込みになったからもういらない。
lib.js
//import '/api/code/rebuild-kitashirakawa/Mermaid/script.js';
lib.css
@import url('/api/code/rebuild-kitashirakawa/%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88%E3%81%A7%E3%81%AF%E8%89%B2%E3%82%92%E3%81%A4%E3%81%91%E3%82%8B/indent.css');
lib.css
@import url('/api/code/rebuild-kitashirakawa/%E3%81%AE%E3%81%B3%E3%81%AE%E3%81%B3%E3%83%89%E3%83%AD%E3%83%83%E3%83%97%E3%83%80%E3%82%A6%E3%83%B3/style.css');
iOS Safariは16px以下のtext inputにフォーカス入れると画面が自動的にズームしてしまう というおせっかい機能があるので、85%環境でそれを回避する。
safariの拡大率85%で生活していると、検索フォームにフォーカスをあてた時に不必要にズームされてしまう。
lib.css
input.for-mobile {
font-size: 20px !important;
}
↑ までのいろいろを読みこむ(こうしておくと他のプロジェクトでも↓を書けば使えるので)。
script.js
import { enableInputMode } from '/api/code/rebuild-kitashirakawa/nana/lib.js'
// enableInputMode()
style.css
@import url('/api/code/rebuild-kitashirakawa/nana/lib.css');
おかしいな? と思ったら。
#metapage