にしし らぼらとりー

にしし(西村文宏)製スクリプトの公開開発実験場(ラボラトリー)です。各種スクリプトの最新版やβ版の動作確認ができます。バグ報告や、機能面でのご要望などもお気軽にお知らせ下さい。

※当ウェブサイトは、にしし製フリーCGIなどの動作確認サンプルを公開したり、製作進行に関する呟きを掲載している実験場のようなものです。 各種CGIスクリプトの配布パッケージを入手したい場合や、にしし(西村文宏)の個人サイトをお探しの場合は、 本家サイト「にしし ふぁくとりー」へお越し下さい。(╹◡╹)ノ

RSS Feed

開発放言 No.2237, No.2236, No.2235, No.2234, No.2233, No.2232, No.2231[7件]

新規投稿 / 管理用

Markdown記法ってクライアントでパースできるのか。全然知らなかった。
ググったところ、markdown-itだとスクリプト本体は100KBしかなくて、CDNで配信されているようなので、ユーザ側には何の追加設置も求めることなく、単に読み込むだけでMarkdown記法が使えるようになるのだろうか……。
そんな簡単だったの……?
スクリプトを読み込んだ後、
var md = window.markdownit();
var result = md.render( マークダウンで書かれた文字列 );

とかやれば良いっぽい。
Markdownって100KB程度のJavaScriptでどうにかなるものだったのか……。

by nishishi. 開発ネタ <310文字> 編集

投稿されたのがどれくらい前なのかを「40秒前」とか「3分前」とか「12時間前」とか「50日前」とか表示できるようにした。投稿日時を表示できる [[DATE:~]] 記法で、
  • 「A」と記述すれば、5秒前、6分前、7時間前、8日前、9年前 のように表示(未来の日付だと、1日後、2時間後、3分後のように表示)
  • 「a」と記述すれば、5秒、6分、7時間、8日、9年 のように表示(未来の日付だと、-1日、-2時間、-3分のように表示)
するようにした。なので、表示するかどうかはスキンの書き方次第だ。(記号にAを採用したのは、Agoの意味で。)

デフォルトのスキンでどうするかは考え中。あまりにも加えすぎると画面が煩すぎる気がするので、サイトマップページ用スキンに加えておくくらいに留めておくので良いかもしれない。全投稿を一覧で見るための(サイトマップページ)スキンなら、何日前に投稿されたのか、という表示もあれば分かりやすくて便利な気もしないでもないので。

図は標準スキンの投稿日時区画で、[[DATE:Y年G月N日(b) h:m:s (A)]] と書いてみたところ。
20221025140239-nishishi.png

by nishishi. てがろぐ <489文字> 編集

あまり必要性はないと思っていたので公式サイト上でも軽く述べるに留めて詳しくは解説していなかったのだけども、てがろぐには『サーバに存在しないモジュールは、tegalog.cgiと同じディレクトリ上に(モジュールのディレクトリ構造を維持した状態で)アップロードした上で、89行目にある#use lib '.';の先頭の # を削除すれば動く』という仕様が用意してある。自力でPerlモジュールをインストールできない場合にはこの方法が使える。この方法が必要っぽい状況があることも明らかになったことだし、もうちょっと具体的に解説しておくと後々役に立つかもしれない。

by nishishi. てがろぐ <278文字> 編集

Twitterで直近投稿に表示されるような「n秒前」、「n分前」、「n時間前」、「n日前」みたいな表示ができる日付表記オプションもそういえば簡単にできそうなので作ろうか……。Twitterでは「n日前」とは出ないけども。「前」は含めない方が良いか。数値+単位(秒・分・時間・日)だけの出力にすれば、自由な文字と組み合わせて表示をカスタマイズしやすい気がする。需要があるかどうかは分からないけども。#済 >>2236

by nishishi. てがろぐ <207文字> 編集

以下の2つが同じファイルを読み込むようになるようINCLUDEの仕様を修正した。どちらも「現在適用中のスキンが存在するディレクトリ内にある hogehoge.html の中身」を読み込んで挿入する。
[[INCLUDE:FROM-THIS-SKIN-DIR:hogehoge.html]]
[[INCLUDE:[[PATH:SKINDIR]]hogehoge.html]] ←ドット記号は不要。

PATH:~記法は、必ず「/」記号で始まって「/」記号で終わることが保証されている仕様。
INCLUDE:~記法に「/」で始まる絶対パスが指定された場合は、WebサイトのDocument Rootからの絶対パスだと解釈して読み込まれる。(従来は、相対パスだけで記述するようリファレンスに書いていた。)

さらにサブディレクトリに存在するファイルを読むこともできる。
[[INCLUDE:FROM-THIS-SKIN-DIR:moemoe/sakura.txt]]
[[INCLUDE:[[PATH:SKINDIR]]moemoe/sakura.txt]]
どちらも「現在適用中のスキンが存在するディレクトリ内にあるサブディレクトリ「moemoe」の中にある sakura.txt の中身」を読み込んで挿入する。

同じことができる記法が2つあってもあんまり意味はないが。
後者の書き方は、バリエーションとしては以下のようなこともできる。
[[INCLUDE:[[PATH:SKINDIR:GALLERY]]hogehoge.html]] ←ギャラリーモードに指定されているスキンのディレクトリ内にあるhogehoge.htmlが読み込まれる。
[[INCLUDE:[[PATH:SKINDIR:SITEMAP]]hogehoge.html]] ←サイトマップページモードに指定されているスキンのディレクトリ内にあるhogehoge.htmlが読み込まれる。

同様に [[PATH:IMAGEDIR]] を使って画像保存用ディレクトリにあるファイルを読み込むこともできるが、あまり需要はない気はする。HTMLに画像データ(バイナリ)を読み込んでも意味がないし。

スレッドを時系列順に見る

by nishishi. てがろぐ <965文字> 編集

たしかに、「アスキーモードでの転送」でうまくいくのは、「FTPソフトに設定された『サーバ側の改行コード』」が正しい場合に限るわな。……と思ったのだが、もしかしてFFFTPに『サーバ側の改行コード』を設定する機能って存在しない……? なんかあったような気がしていたのだが。問答無用でLFに揃える機能だったっけ? 「改行コードがLFだと動かない」ようなサーバを見たことがないので、改行コードは全部LFなら良いのではないかという気はする(なので、てがろぐ3.0.0からは改行コードがLFだけになっている)。ただ、Windows環境でソースを編集すると一部に[CR+LF]が混入する可能性はあって、そこを防ぎにくい。設定を全部 config.pl とかに分離しても良いのだが、そうしても1行目の #! /usr/bin/env perl を修正する必要(がある可能性)は残るからな……。

by nishishi. 開発ネタ <393文字> 編集

サーバ上では Perl 5.8.9 と 5.14.4 で動作確認していて、ローカルでは Perl 5.32.0 で動かしながら開発しているので、Perlのバージョン違いで動いたり動かなかったりという可能性はあまりないと思っているのだが。(最新のPerlは 5.36.0らしいのでそれでは確認できていないけども。)なお、Perl 5.6以上でしか使えない機能を使っているので、Perl 5.6未満だと動かないのは間違いない。ただ、もはやPerl 5.6(2000年5月22日リリース)未満が稼働しているレンタルサーバはないと言って良いのではないかとは思っている。

by nishishi. 開発ネタ <281文字> 編集

Powered by てがろぐ Ver 4.6.0.

DASHBOARD

■開発放言について

にしし製CGIの開発進行に関する放言です。思いついたことを適当に放り込む空間なので、どんな呟きも確定的な開発予定というわけでは全くありません。しかしながら、機能面でのご要望や開発予定機能への支持表明はお気軽にどうぞ。ただし、ここには直接は投稿頂けませんので、公式動作テスト用てがろぐ等をご利用下さい。

編集

■全文検索:

■日付検索:

■カレンダー:

2022年10月
1
2345678
9101112131415
16171819202122
23242526272829
3031

■ハッシュタグ:

▼現在の表示条件での投稿総数:

7件

▼最後に投稿または編集した日時:

2025年05月25日(日) 12:08:17