2024年5月 この範囲を時系列順で読む この範囲をファイルに出力する
🍨Re:4471◆隠された範囲をSmooth展開するのは、現状のてがろぐの仕様で可能でしょうかね……?(どなたか実現なさっている方がいらっしゃったら教えて下さい!)なんとなく難しそうな気がします。デフォルト設定では、隠された範囲(のspan要素)は表示時に display:inline; のスタイルが付加されますしね(その値は設定で変更可能ですが)。
◆現状のような「JavaScriptで表示/非表示を切り替える」方法で隠す手段以外に、現在で(たぶん)主流な <details><summary>見せる部分</summary>折りたたむ部分</details> のようにHTMLだけで実現できる折り畳み機能で出力される記法も追加した方が良いかな……という気はなんとなくしています。今のところそのような要望は来ていないので、まだ「なんとなく思っているだけ」の状態ですけども。そちらの方がCSS(やJavaScript)で装飾しやすいだろうな、という気はします。
◆SNSシェアボタンで「特定のスキンを適用したURL」がシェアされるようにするには、[[PERMAURL]]系の記法の直後に(空白を挟まずに)&skin=skin-nameのような感じでパラメータを加えれば良いだけです。具体的にどのように書けば良いかは、お使いの「シェアボタン」の仕様次第ですので、(具体的な記述も知りたい場合は)まず現状の記述がどうなっているのかをお知らせ頂く必要があります。
🍨Re:4472◆てがろぐをご活用下さってありがとうございます。(╹◡╹)ノ
少なくとも(私が直接使っている範囲では)5千件や1万件程度の投稿総数では特に体感できるほどの変化は出ていません。
なお、今ご覧になっているこの動作試験場では、現状で4,350件近くの投稿数がありますので、実際に「5千件近くの投稿がある状態の動作」をご体感頂けています。(╹◡╹)
下記のⒶとⒷは私(だけ)が書いているページ(てがろぐ)で、Ⓒはここです。それぞれの大まかな総投稿数とデータサイズを調べてみました。
- Ⓐ 今日のひとことログ :総投稿数 12,200件超 データファイル 6.27MB
- Ⓑ てがろぐリリースノート :総投稿数 43件 データファイル 0.61MB
- Ⓒ 動作試験場(ここ) :総投稿数 4,300件超 データファイル 2.94MB
実際に生成ページにアクセスしてみると、投稿総数が1万2千件を超えているⒶよりも、わずか43件しかないⒷの方が、むしろ表示までにかかる動作は比較的もっさりしている気がしませんか? これは、Ⓑでは文字装飾記法が山ほど使われているために(てがろぐ内部で)独自記法をHTMLに展開する処理がたくさん発生するためだろうな……という気がしています。まあ、Ⓑはさすがに『1投稿に2万文字近くある』ような長文投稿ばかりなので、かなり極端な例ですが。(笑)
なお、管理画面の応答速度は、ⒶⒷⒸどれも同じ感じです。(ミリ秒単位で計測したら何らかの差はあるかもしれませんが、体感できるほどの差はありません。)
ただ、CGIなので、動作の重たさは『アクセスがどれくらい集中するか』の方が影響すると思います。
Botからの大量アクセスを受けると、あっという間に重たくなるケースはありました。
てがろぐは、ページを生成する際に(毎回)データファイルを全部読み込みますので、毎秒数十件みたいな極めて高い頻度でのアクセスが続いてしまうと、サーバ自体がかなり重たくなりますね。(その辺は、サーバ側の性能にも影響するとは思いますが。)
なので、アクセス数が多いサイトの場合は特にWAF(Web Application Firewall)を併用して、悪質なBotは(CGIに届く前にサーバ側で)排除される環境にしておく方が望ましいです。
というわけで、てがろぐは(データベースを使っていないシステムなので、極端にデータサイズが大きくなればそれに比例して重たくなるだろうと予想はしているのですけども)、1万2千件程度の投稿数なら特に気にならない、とは言えそうです。10万件だとどうなるのかはまだ分かりませんが。^^;(上記で述べたとおり、投稿の内容次第でもあります。)
投稿総数が莫大になる予想があるのであれば、その「即メモ」と「ライフログ」は、1つのてがろぐで運営するのではなく、最初から複数個のてがろぐに分散させておくと、なお安心かもしれません。
(とはいえ、1つのてがろぐで運営していた内容を、後から複数のてがろぐに分割するのは、テキストエディタでデータファイルを直接分離すれば簡単ですが。どの投稿をどこに分けるのかを判断しやすくするために、カテゴリ等を使って事前に分類されていると望ましいですね。)
➡『てがろぐに「簡易適用スキン」の設定が勝手に切り替わるバグがあった話』
簡単に述べると、以下の2条件を同時に満たしている場合にだけ、表示上の問題が発生します。
- 【条件①】未来の日時を『予約投稿として扱う』よう設定されている。(=予約投稿機能をONに設定している)
- 【条件②】メインで使うスキン以外のスキンに、新着投稿リストを表示するための記法 [[LATESTLIST]] が記述されている。(=メインで使うスキン以外のスキンで生成されるページ上に、新着投稿リストが表示されている)
なので、予約投稿機能をOFFにしているなら(※デフォルトでOFFです)全く問題は生じません。
次のバージョンで修正しますが、上記の2条件に現状で該当する場合には、一時的に予約投稿機能をOFFにしておくことをお勧め致します。
詳しくは上記の記事本文をご覧下さい。
ただ、Ver 4.0.0(※β版も含めると、Ver 3.9.3β)以降で発生していたバグですので、昨年の4月の時点で既に存在していたバグですから、『今まで問題がなかったなら、たぶん問題ない』と考えても良いとは思います。(1年間も問題が生じなかったわけですから。)
畳む
とりあえず、バグを解消した次のバージョン(4.3.1)は、おそらく今月末までには公開できると思っています。(今のところ)
素敵なCGIをありがとうございます!
現在は個人サイトで公開する形で使用していて、あまりに軽快で使い心地が良いのでプライベートの即メモとライフログも移行してこようかな、と思い始めたのですが、投稿数が極端に増えてくると動作が重くなったりするんでしょうか…?
現在使用しているぶんが1000投稿ほどで全く支障なく動いているのですが、これが5000,100000になったときにどんな風になるんだろう?とほんのり気になっています(1日に10も20も書き込むと思うので…笑)
さて、質問が2点あるのですが、どなたかご存知であれば教えていただきたいです。
・隠す機能の続きを読むボタンをクリックしたときにスムースに開閉出来る方法
・Xにシェアするボタンを使っているのですが、普通のURLをシェアしてしまいます。特定のスキンを適用したURL(末尾にskin=〇〇)をシェアする方法
よろしくお願いします
プリンを食べられるのはいつだ!?
🍮Re:4468◆詳しい情報をどうもありがとうございます。てがろぐ側で外部サービスの埋め込み機能を用意するには、その外部サービスの仕様が「埋め込み用のHTMLソースを『URLに含まれている情報だけ』から生成できる」という仕様である必要があるのですが、残念ながらSoundCloudはそのような仕様になっていないようなので(その解釈が正しければ)残念ながら埋め込み機能の実装は無理なように思います。例えば、 https://soundcloud.com/skrillex/skrillex-peekaboo-flow... の曲を埋め込むためには、https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1595701743… というようなURLを生成してiframeに指定しないといけないようですが、この「1595701743」という情報はSoundCloudのURLからは得られないので、てがろぐ側では埋め込み用のソースを生成できないのです。畳む(Blueskyの投稿を埋め込めない理由と同じです。)
将来的に、HTMLを何でも書けるオプションを用意したときには、SoundCloud側が提供しているシェア用のHTMLをそのまま貼ることで埋め込めるようにはなります。
🍮Re:4469◆ご報告をどうもありがとうございます。(╹◡╹)ノ
環境はさくらのレンタルサーバのスタンダードです。
PHPのバージョンは8.1.27です
4464です。ご返信いただき、ありがとうございます。
https://soundcloud.com/skrillex/skrillex-peekaboo-flow...
(曲は何でも良いのですが)曲の個別ページを開き、Share>Embedを選択するとiframeのコードが出てきます。
https://help.soundcloud.com/hc/en-us/articles/11500356...
英語ですが、このような公式サイトの解説もあります。
とはいえ、珈琲ゼリーは美味しかったです😋
🍮Re:4462◆早々のバージョンアップをどうもありがとうございます!
🍮Re:4463◆TegUpのご試用もありがとうございます。さすがにそろそろVer.1として配布しても良さそうだな、と思っています。
🍮Re:4464◆soundcloudはドイツの会社のサービスですかね? Webページへの埋め込み方法の解説ページがあるようなら教えて下さい。
🍮Re:4465◆新バージョンのご活用をどうもありがとうございます。TegUpの報告もありがとうございます。新機能がお役に立っていると分かるととても嬉しいです。(╹◡╹)ノ
🍮Re:4466◆そうでした。おっしゃるとおり .decorationF は出力されません。最後の段落は忘れて下さい。┌(:3」└)┐ なんとなく、文字装飾機能では .decorationX というようなclassを出力しているハズだという思い込みがあって、隠される範囲全体も .decorationH で囲んでいるだろうと思っていたのでした。で、解説を書くためにサンプルソースを見たときに、(実際には .decorationH は出力されていないわけですが)先の解説で出力されていた .decorationF を「隠したい範囲を囲んでいるclassだ」と勘違いしたようです。(^_^;)
今のところ、隠す装飾だけで両ボタンを同じ位置にする方法はなさそうですね。なんかよほどアクロバットなことをしたらできるかもしれませんが……。
それよりも、『隠す範囲全体を <span class="decorationH"> ~ </span> で囲む』仕様を追加した方が良いような気がしてきました。たぶんそうすると、他の装飾用途にも活用しやすくなりそうな気がしたりしなかったり。(その仕様を加えても、既存の装飾に悪影響はなさそうだと思うのですけども。どうかな……。)
🍮イーロンがどうとう twitter.com を x.com へリダイレクトするようにしてしまいました。ツイートの埋め込みは(今のところ)どちらのドメインでも可能ですが、もし今後に(さすがにそうはしないと思いますが) x.com だけでしか埋め込まれないように改悪されたとしても、てがろぐ側で変換するようにしますので、(たとえそうなっても)自前のデータファイルを書き換えたりしなくて大丈夫です。(埋め込み機能自体を廃止されたらどうにもなりませんが……。)
自由装飾記法を使えば「続きを読む/畳む」ボタンを同じ位置にすることができました。
ありがとうございます!
ただ、.decorationFにCSSを指定して、全ての「続きを読む/畳む」ボタンを同じ位置にする方法は上手くいきませんでした。
[H : 隠したい範囲]と書くだけでは.decorationFは出力されないのではないでしょうか……?
自由装飾記法を併用する方法で事足りてはいるのですが、[H : 隠したい範囲]と書くだけで、全ての「続きを読む/畳む」ボタンを同じ位置にする方法もあれば知りたいです。
よろしくお願いいたします。
P.S.
てがろぐ4.3.0にバージョンアップしました。いつもありがとうございます!
サイト上で日記を書く際に重宝しています。
TegUpでの4.3.0への更新できました。
環境はロリポップのエコノミープランです。
「その状況で表示対象になっている投稿」だけに限定した隣接投稿に移動できる機能、とても便利で大変助かっています。ありがとうございます。
いつもお世話になっております。
soundcloudの埋め込み機能が実装されると嬉しいです。
いつもお世話になっております。
以下の環境でTegUpを使用し、4.2.0→4.3.0へのアップデートに成功しました。
サーバ:リトルサーバ
PHP:バージョン8.1
いつもありがとうございます!
隣接・近傍投稿の一括表示モード、表示対象(同一カテゴリ等)だけに限定した隣接投稿への移動機能、ログイン者限定表示機能、編集画面に自由なHTMLをスキン別に追加できる機能、限定表示中のカテゴリの各種情報の挿入記法、ゲストを読み専IDにする機能、SITEMAP XMLの静的出力機能などの追加が主な更新点です。その他、細々した仕様改善や機能追加を含んでいます。
➡ https://www.nishishi.com/cgi/tegalog/
バージョンアップするには、
- 1クリックでバージョンアップできる専用PHP「TegUp」のご使用がお勧めです。
- もしくは、最新版のZIPの中から tegalog.cgi と fumycts.pl の2ファイルだけを抜き出して上書きアップロードして下さい。
🆕 Ver 4.3.0の更新点(概要):
《▼大きな機能追加》
●隣接・近傍投稿の一括閲覧機能(隣り合う数投稿をまとめて表示する機能)の追加。
●「その状況で表示対象になっている投稿」だけに限定した隣接投稿に移動できる機能(※同カテゴリに限定した隣接投稿への移動機能)の追加。
●条件指定パラメータを引き継いだ単独投稿にリンクできる記法(=「その状況で表示対象になっている投稿」だけに限定した隣接投稿に移動できる機能が使える状態の単独投稿へリンクできる記法)の追加。
●ログイン済みでないとどのページも閲覧できなくする「ログイン者限定表示」機能の追加。
●新規投稿/編集画面に自由なHTML(edit.htm)をスキン別に加える機能の追加。
《▼その他の機能追加》
●そのとき限定されているカテゴリの各種情報を挿入できる専用記法の追加。
●ゲストIDで投稿を禁止する設定(=ログイン者限定表示と併用することで「読者用ID」になる機能)の追加。
●リスト記法で、リストの種類や記号を指定するオプションを使っている場合でも、さらに任意のclass名を指定できる機能を追加。
●SITEMAP XMLを静的ファイルに出力する機能を追加。
●カテゴリの概要文でHTMLを使えるようにできる設定の追加。
《▼細かな機能追加》
●カスタム絵文字のファイル名にハイフン・ドット・アンダーバーが含まれているとき、それらで分割した文字列を使ったclass名をさらに加える機能を追加。
●アタック目的のアクセスを簡易的に検出して拒否する(400 Bad Requestを返す)機能を追加。
《▼仕様改善》
●既存ハッシュタグ簡単挿入機能で、ハッシュタグの後ではなく前に半角スペースを挿入できる(または一切挿入しない)設定機能を追加。
●「任意URLリンク」ボタンで、リンク先が丸括弧で囲まれる場合には、直後に半角スペースを自動挿入しない仕様に改善。
●データファイルを読むよりも前にパラメータの不正をチェックすることで、無駄なデータ読み込みを発生させないよう改善。
●QUICKPOSTで投稿欄が空っぽの状態で投稿したときの動作を改善。
●投稿単独表示時の隣接投稿への移動先解釈の改善。
●管理画面のボタンの行高を固定することで、一部のモバイル端末でボタンの高さがガタガタになる現象を解消。
●YouTubeの埋め込みに「ライブ動画の共有用URL」も使用可能に。
《▼不具合修正》
●URLを丸括弧で囲む [ラベル](URL) 記法の直後に半角丸括弧を書いたとき、記法末尾の「)」記号がURLの一部だと誤解されてしまう不具合を修正。
更新点について詳しい解説は、リリースノート(No.43)をご参照下さい。
アナウンス:
✔Twitter:
(ツイート埋め込み処理中...)Twitterで見る
✔Bluesky
✔Pawoo(Mastodon)
🥮Re:4459◆たぶん、自由装飾記法を使ってボタンの掲載位置を調整すれば、お望みの表示は今のバージョンでもできそうな気がします。
まず、隠したい範囲を [H:隠したい範囲] だけでなく、自由装飾記法を使って、[F:btnfirst:[H:隠したい範囲]] のように書いておきます。
次に、以下の2つのCSSを加えます。
.deco-btnfirst {
display: block;
position: relative;
padding-top: 1.5em; /* ※後述 */
}
.deco-btnfirst .readmorebutton {
position: absolute;
top: 0;
left: 0;
}
すると、「続きを読む」ボタンも、「畳む」ボタンも、どちらも同じ位置(先頭)に見えるようになります。
「※」部分の 1.5em は、お好みで調整して下さい。0にすると隠している範囲に続く1行に重なってしまいますので、1以上の値にする必要があります。
(ボタンの大きさも揃える方が望ましいと思いますが、そこはお使いのスキン次第なので、スキン側のCSSを調整して下さい。)
その場合は、隠したい範囲はいつも通り [H:隠したい範囲] と書くだけで済みます。
こんにちは、「続きを読む(一部を隠す)」機能についての要望です。
現在、この機能を使い「続きを読む」ボタンをクリックすると、隠されていた本文の後ろに「畳む」ボタンが出てきますが、
本文の前(「続きを読む」ボタンと同じ位置)に「畳む」ボタンを置けるようにしたいです。
「畳む」ボタンの後ろに本文全文が見えるような形で……
ご検討いただけると嬉しいです。
🍩Re:4449◆あと、リリースノートさえ書けば、Ver 4.3.0正式版をリリースできる予定です。リリースノートさえ書けば……。_(┐「ε:)_
🍩Re:4450◆お役に立ったなら何よりです。^^
🍩Re:4452◆登校だけでなく下校も集団なんですね!? そういうパターンもあるんですねえ。
🍩Re:4453◆確かに、片道3kmは小学生だと厳しいでしょうね。歩けたとしても1時間は掛かりそうな。朝は5分でも長く寝ていたいのに……。(笑)
🍩Re:4454◆WAFの検出ログにたくさん出てくるのを見ると驚きますよね。うちのWAFログにも毎秒毎秒何かが記録されている感じです。とはいえ、ログにあるということは(悪意あるアクセスを)阻止はできているということなので、大きく気にする必要はないのではないかと思ってはいます。そこそこ検索にもヒットする感じのWebでお使いの場合は、「WAFは必須」と考える方が良さそうですね。そうでないと、これだけの莫大なアクセスがそのままCGIに渡ってしまうと、サーバの負荷がかなり高まりそうですので。
🍩Re:4455◆ご要望をありがとうございます。ToDoリストには入れておきます。
🍩Re:4456◆確かに自由装飾記法だけだと、見た目では隠せても、OGPやRSSにはそのまま出てしまいますね。
塗り潰しで隠す方法を考えて頂きありがとうございます。
見た目上は自由装飾で可能ですが、OGPに出力しない機能も使いたかった為
多少強引ですが以下のCSSで標準の隠す機能内で実現しました。
.readmorebutton
display: none !important
.readmorearea
display: inline-block !important
文字色と背景色指定
hoverでunset (モバイルはタップで動作します)
長文を折り畳む場合との使い分けは、片方のH:を自由装飾で囲むようにしました。
H:にも:CL()が使えるようになると助かります。
(装飾>隠すボタンがblock(畳む)とinline(伏せる)の二種類になると大変助かります)
現在YouTube動画の埋め込み機能がありますが、それと同じようにニコニコ動画の埋め込み機能も実装されると嬉しいです。
一方、子供達が通った小学校は集団登下校かスクールバス通学です(香川県西部)。児童数が少なすぎるのと、徒歩通学の子は最長片道3km歩かなくてはならないので、低学年だと厳しいのもあるかもです。
と言っても低学年と高学年は下校時間が異なるので、下校時は集団にすらならないんですが。末っ子のときはひとりで歩く距離が1kmちょっとあったので、1年の間だけは途中まで迎えに行ってあげてくださいと言われました。
自分が住んでるところ(奈良県香芝市)は、兵庫のような感じで集団登下校です。
個人的には、集団下校の方がいいんですけどねぇ...(特に、低学年が心配ですので。)
ありがとうございます!すごく嬉しいです…!
承知いたしました。のんびりとお待ちしております
いつもありがとうございます。
次のアップデートまでは②の空白を含める方法で回避します。
返信ありがとうございました!てがろぐにはいつも大変お世話になってます。
🍵Re:4446◆ちょいとソースを確認してみたところ、そんなに手間無く実装できそうな気がしましたので、そう遠くないうちに「2行目も常に見せる」的なオプション機能は加えられそうな気がします。ただ、もう次の正式版(Ver 4.3.0)の機能はFixしてしまったので、実装するとしてもその後のバージョンになります。気長にお待ち頂ければ幸いです。
🍵Re:4447◆分かりやすい解説とソースをどうもありがとうございます。まさしくその方法が簡便で良いですね! :activeでいけたんですねえ……。なんとなく:activeはリンクとかボタンとかフォーム要素とかでしか機能しなさそうな先入観があったので思い至りませんでした。^^; 元日の地震以後、どんな状況なのか気になっていましたが、余裕が回復したのは何よりです。
自サイト誘導すみません、不適切であれば削除してください。
てがろぐでも使えるテキスト隠しCSS | 10press
https://10prs.com/view/65
実現方法考えて頂く方向でとても嬉しいです!なにとぞよろしくお願いします。
現状で出来る方法もご教示頂き感謝いたします。すごい便利ですね……ただ、該当作品の数がかなり多いのでちょっと元気なときじゃないと難しいです(自分の気持ちの問題です)。教えて頂いて本当にありがとうございます!また元気な時に動作を見たいと考えております
🍵Re:4443◆URLが含まれていても自動でリンクにならないようにするには、「自動でリンクにはならないURLの書き方」をご活用下さい。◆その塗りつぶし機能なら、自由装飾記法を使えば実現できそうに思います。例えば、[F:fill:塗りつぶしたい範囲] のように書けば、その範囲が <span class="deco-fill">塗りつぶしたい範囲</span> のように出力されます。あとは、CSSでこの範囲の文字色を背景色と同じにすれば、お望みの初期表示になります。あとは、「クリックしたら文字色が変わる」という動作を加えれば済みます。「マウスが載るだけ」で良いなら :hover を使えば良いですが、モバイル端末に対応するにはその方法では不十分ですね。CSSだけで実現できる方法もありそうな気もするのですが、ぱっとは思いつかないので、とりあえずJavaScriptで書くとすると、
var decoFillElements = document.querySelectorAll('.deco-fill');
decoFillElements.forEach(function(element) {
element.addEventListener('click', function() {
this.style.color = 'black';
});
});
とする方法はありそうな気がします(クリックで文字色を黒色にする場合)。もうちょっと何か短くスマートに実現する方法もありそうな気もするんですが。(どなたか思いついた方がいらっしゃったらぜひ教えて下さい。)◆画像に付与する属性値に投稿IDを含める方法は今のところはないんですが、何かそういう情報を含めようと思えば含められるようにできるような(例えば「data-scriptname="tegalog @ID@"」のように書くと @ID@ が投稿IDになるような)感じの機能はToDoリストに入れておきます。
🍵Re:4444◆なるほど、確かに1行目をタイトルとして使っているスキンでは、隠されている内容の説明は2行目に書きたいでしょうね。状況の説明をどうもありがとうございます。何か実現方法を考えてみます。
現在のバージョンでどうにかするには、タイトル掲載部分を [[COMMENT:TITLE]] ではなく [[COMMENT:LINE:1]] で作っておいて、投稿本文の1行目を
タイトル [F:guide:鍵付き内容の説明]のように書く手はあるかもしれません。CSSで、 .deco-guide の部分だけはタイトルとしては表示せずに、鍵付き投稿の場合に限って説明文として表示させるように書く感じです。(※スキン側では [[COMMENT:TITLE]] だとプレーンテキストで出力されてしまうので装飾が無視されてしまいますから、 [[COMMENT:LINE:1]] にする必要があります。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175