emphasis.inc.php

サマリ圏点表示
リビジョン1.01
対応バージョン1.5.x
投稿者M.Taniguchi?
投稿日2019-08-03 (土) 00:48:46

概要

文字列に圏点(傍点・脇点)を付加するプラグイン。
CSS3の text-emphasis-style を利用するため、対応ブラウザーでのみ有効。

使い方

  • &emphasis(){文字列}
  • &emphasis(圏点種別){文字列}


引数

  • 文字列 … 圏点を付加したい文字列
  • 圏点種別 … [filled|open] [dot|circle|double-circle|triangle|sesame] (CSSの text-emphasis-style 構文に準じる。省略時のデフォルトは filled circle)


使用例

これは&emphasis(){強調文字列}です。

コード

emphasis.inc.php

<?php
/*
PukiWiki - Yet another WikiWikiWeb clone.
emphasis.inc.php, v1.01 2019 M.Taniguchi
License: GPL v3 or (at your option) any later version

文字列に圏点(傍点・脇点)を付加するPukiWiki用プラグイン。
CSS3の text-emphasis-style を利用するため、対応ブラウザーでのみ有効。

使い方:
&emphasis(){文字列}
&emphasis(圏点種別){文字列}

引数:
文字列 … 圏点を付加したい文字列
圏点種別 … [filled|open] [dot|circle|double-circle|triangle|sesame](CSSの text-emphasis-style 構文に準じる。省略時のデフォルトは filled circle)
*/

define('PLUGIN_EMPHASIS_USAGE', '&emphasis([emphasis type]){words};');
define('PLUGIN_EMPHASIS_CLASS', false);	// style属性の代わりにclass属性を付加

function plugin_emphasis_inline() {
	$argNum = func_num_args();
	if ($argNum <= 0) return PLUGIN_EMPHASIS_USAGE;

	$emphasis = 'filled';
	if ($argNum == 1) {
		list($body) = func_get_args();
	} else {
		list($emphasis, $body) = func_get_args();
	}

	$body = strip_htmltag($body);
	if ($body == '') return PLUGIN_EMPHASIS_USAGE;

	$emphasis = strip_htmltag($emphasis);

	if (PLUGIN_EMPHASIS_CLASS) {
		$emphasis = str_replace(' ', '-', $emphasis);
		$html = '<span class="emphasis-' . $emphasis . '">' . $body . '</span>';
	} else {
		$html = '<span style="-webkit-text-emphasis-style:' . $emphasis . ';text-emphasis-style:' . $emphasis . ';">' . $body . '</span>';
	}

	return $html;
}
?>
 

ダウンロード
https://misc.masatotaniguchi.jp/pukiwiki-plugins#h.p_j7qc_-HXcfJo

ライセンス

GPL v3

ユーザ定義ルール版

このプラグインを導入しなくても、default.ini.php の $line_rules に次の記述を追加すれば同様の機能を実現できます。
プラグインを作ったあとで気づきました。

'EMPHASIS\(([^\(\)]*)\){([^}]*)}' => '<span style="-webkit-text-emphasis-style:$1;text-emphasis-style:$1">$2</span>',
 

使い方

EMPHASIS(filled){強調したい文字列}
EMPHASIS(open sesame){強調したい文字列}


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-08-03 (土) 10:25:58
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.185 sec.

OSDN