2005年 10月 14日(金)   友引    今日は何の日?   2008年の今日のエントリ 2007年の今日のエントリ 2006年の今日のエントリ

TopMovableTypeMTカスタマイズ > エントリ編集に3つ+αの小技

MTカスタマイズエントリ編集に3つ+αの小技 new

エントリを新規に投稿、または編集するときに 便利で楽チンになる技を 今まで あれこれ組み込んできましたが、
その中で 使用頻度が多い 3つのワザを 3.2 にも 呼び戻してみました。
こんな感じになりました。
3つとも /tmpl/cms/edit_entry.tmpl に ワザを仕込みます。

1.文中のリンクを 常に別窓で開くようにする (元ネタ : 編集を楽にする技ふたつ
編集画面にデフォルトで付いてる 「リンクを挿入」 ボタンを使ったとき、自動的に target=_blank と入ります。
今までは mt.js に 記述をプラスしてましたが、3.2 から新しくできたディレクトリ mt-static の中にある mt.js に
記述を追加してみたところ、機能しませんでした。そこで /tmpl/cms/edit_entry.tmpl に 直接 ↓ を追加。

function insertLink (e, isMail) {
if (!canFormat) return;
var str = getSelected(e);
var link = '';
if (!isMail) {
if (str.match(/^https?:/)) {
link = str;
} else if (str.match(/^(\w+\.)+\w{2,5}\/?/)) {
link = 'http://' + str;
} else if (str.match(/ /)) {
link = 'http://';
} else {
link = 'http://' + str;
}
} else {
if (str.match(/@/)) {
link = str;
}
}
var my_link = prompt(isMail ? 'Enter email address:' : 'Enter URL:', link);
if (my_link != null) {
if (str == '') str = my_link;
if (isMail) my_link = 'mailto:' + my_link;
setSelection(e, '<a href="' + my_link + '" target=_blank>' + str + '</a>');
}
return false;
}


2.デコードボタンを付ける (元ネタ : これで完成!エントリ編集便利ボタン
↑ 画像で B (太字) ボタンの 左横にあるのが それです。「>」 を &gt; にしたり、元に戻したりするボタンです。
これは、今日のような カスタマイズの覚えを記事にするときに 大活躍します。
以前は 欲張って こんな にたくさん 便利ボタンを 付けてましたが、中にはあまり使わないものもあったので、
今回は 一番よく使うのに デフォルトで付いてない デコードボタンだけを 増やしました。
 * 10月17日 「文字色」 ・ 「文字の背景色」 ・ 「文字の大きさ」 を指定できるボタンも増やしました。「追記」 を見てね。
/tmpl/cms/edit_entry.tmpl の <script> ~ </script> に
function replaceEntity(str) { // 置換処理
str = str.split("&").join("&amp;"); // & から変換すること
str = str.split("<").join("&lt;");
str = str.split(">").join("&gt;");
str = str.split('"').join("&quot;");
return(str);
}
function changeEntity(obj) {
if (document.selection) { // WinIE
obj.focus();
var str = document.selection.createRange().text;
if (str) {
document.selection.createRange().text = replaceEntity(str);
} else if (obj.value && confirm('テキストエリア内の「&,<,>,"」を実体参照化します。\n\nよろしいですか?')) { // 選択されていないとき
obj.value = replaceEntity(obj.value);
}
} else if ( (obj.selectionEnd - obj.selectionStart) > 0 ) { // Mozilla
var bgnPos = obj.selectionStart;
var endPos = obj.selectionEnd;
var bfrStr = obj.value.substring(0, bgnPos);
var fcsStr = replaceEntity(obj.value.substring(bgnPos, endPos));
var difLen = fcsStr.length - (endPos - bgnPos);
var aftStr = obj.value.substring(endPos, obj.value.length);
obj.value = Array(bfrStr,fcsStr,aftStr).join('');
obj.setSelectionRange(bgnPos,endPos + difLen); // 選択し直し
} else if (obj.value) { // Others (テキストエリア内全てが対象)
if (confirm('テキストエリア内の「&,<,>,"」を実体参照化します。\n\nよろしいですか?')) {
obj.value = replaceEntity(obj.value);
}
}
return;
}
function changeTag(str) { // 置換処理
str = str.split('&lt;').join("<");
str = str.split('&gt;').join(">");
str = str.split('&quot;').join('"');
str = str.split('&amp;').join("&"); // & は最後に変換
return(str);
}
function reverseEntity(obj) {
if (document.selection) { // WinIE
obj.focus();
var str = document.selection.createRange().text;
if (str) {
document.selection.createRange().text = changeTag(str);
} else if (obj.value && confirm('テキストエリア内の実体参照文字を「&,<,>,"」に変換します。\n\nよろしいですか?')) { // 選択されていないとき
obj.value = changeTag(obj.value);
}
} else if ( (obj.selectionEnd - obj.selectionStart) > 0 ) { // Mozilla
var bgnPos = obj.selectionStart;
var endPos = obj.selectionEnd;
var bfrStr = obj.value.substring(0, bgnPos);
var fcsStr = changeTag(obj.value.substring(bgnPos, endPos));
var difLen = fcsStr.length - (endPos - bgnPos);
var aftStr = obj.value.substring(endPos, obj.value.length);
obj.value = Array(bfrStr,fcsStr,aftStr).join('');
obj.setSelectionRange(bgnPos,endPos + difLen); // 選択し直し
} else if (obj.value) { // Others (テキストエリア内全てが対象)
if (confirm('テキストエリア内の実体参照文字を「&,<,>,"」に変換します。\n\nよろしいですか?')) {
obj.value = changeTag(obj.value);
}
}
return;
}

を追加、さらに ボタンの並びに エントリーの内容 (body) 用には
write('<a href="javascript:changeEntity(document.entry_form.text);"><img src="<TMPL_VAR NAME=STATIC_URI>images/jittai_1.gif" alt="<MT_TRANS phrase="jittai_1">" width="40" height="16" border="0" /></a>');
write('<a href="javascript:reverseEntity(document.entry_form.text);"><img src="<TMPL_VAR NAME=STATIC_URI>images/jittai_2.gif" alt="<MT_TRANS phrase="jittai_2">" width="40" height="16" border="0" /></a>');

追記 (more) 用には
write('<a href="javascript:changeEntity(document.entry_form.text_more);"><img src="<TMPL_VAR NAME=STATIC_URI>images/jittai_1.gif" alt="<MT_TRANS phrase="jittai_1">" width="40" height="16" border="0" /></a>');
write('<a href="javascript:reverseEntity(document.entry_form.text_more);"><img src="<TMPL_VAR NAME=STATIC_URI>images/jittai_2.gif" alt="<MT_TRANS phrase="jittai_2">" width="40" height="16" border="0" /></a>');

と 追加します。ボタンの画像は ご自分で用意されるか、よろしければ ここ のを使ってください。
(画像は mt-static/images に アップします。)

3.エントリに絵文字を使えるようにする (元ネタ : コメントとエントリ投稿用絵文字パワーアップ
これは、元ネタ を そのまま 3.2 でも使えました。ただ 今回は 画像の名前を日本語にしてると文字化けしたので
英数字だけ使いました。また、少し 絵文字の数を減らしました。Wink

これで 今までに より近い便利さが 取り戻せました。
今後は 不便だな~、と思うところから 徐々に 以前の状態に戻していこうと思っています。

Posted by Caetla at 12:00 | Category : MTカスタマイズ | Comments [8] | Trackbacks [11] | Clip!! | Ranking
Tag : MovableType , カスタマイズ , 別窓 , デコードボタン , 絵文字
この記事はどうでしたか?(お気軽に 記事に点数を付けてみてくださいね♪)
Bad ← 1 2 3 4 5 → Good
評定平均:(3.0) 総合点:(2920) 投票人数:(980)

エントリーURL


 

トラックバックURL


 

トラックバック

エントリー編集ボタン再カスタマイズ from http://cinamon.accela.jp/yum/archives/2005/10/17_1854.php grumble...
3.2にアップグレードしてからというもの、再カスタマイズに追われる日々を送っております(汗 それでその再カスタマイズの1つがエントリー編集ボ... [続きを読む]

Tracked on 2005年10月17日 20:23

エントリー時の文字色、フォントサイズを簡単に。 from http://14000.rev-limit.net/archives/2005/10/1491.php 14000.rev-limit.net/
タグ打ち込めばいいだけの話だけどメンドクサイ・・・・。 やむやむ様 : エントリ... [続きを読む]

Tracked on 2005年10月29日 00:29

MovableType3.2 コメント欄で絵文字を使う from http://mynoah.net/archives/2005/10/29_1343.php おじさんの備忘録
MovableType3.2のコメント欄で絵文字を使う [続きを読む]

Tracked on 2005年10月29日 13:43

デコードボタン MT3.2編 from 絵の才能はないけれど
MT3.2にしてからデコードボタンが機能しなくなったので、 別の所からMT3.2... [続きを読む]

Tracked on 2005年11月13日 02:13

エントリー画面にボタンを増やす from チエコエトセトラ。
カスタマイズ関連の投稿ばっかりですみませんです まとめてできるの週末だけだからと... [続きを読む]

Tracked on 2005年12月12日 00:25

色々弄ったよ。。。 from http://bird.lomo.jp/archives/2006/01/post_48.html カラスグミ
やむやむ:エントリ編集に3つ+αの小技 少しエントリ作成時にタグを埋め込みやすく... [続きを読む]

Tracked on 2006年01月06日 03:43

リンク先を別窓で開く from Free Style
投稿する時リンクに「target=_blank」を追記しなくても自動で入るような... [続きを読む]

Tracked on 2006年01月07日 19:36

Movable Type 3.2-ja-2 日本語版 アップデート from http://mizumizu.jp/queserasera/archives/2006/0105235536.html que sera sera
Movable TypeはこのBlogの心臓部です。 Movable Typeを... [続きを読む]

Tracked on 2006年01月07日 20:32

エントリー編集ボタン from http://f1box.moo.jp/blog/archives/2006/03/02-235810.php PIT IN
σ('_')が頻繁に使う<や>、文字色、フォントサイズをエントリーで... [続きを読む]

Tracked on 2006年03月15日 17:48

今回の覚え書き from dreaming purple blog
今回ブログをカスタマイズするのにお世話になったサイトなど。 テンプレートは「Or... [続きを読む]

Tracked on 2006年03月28日 00:30

PHPにおける文字化け from Shoulder.jp

1.Apacheでの設定(実行環境)

[続きを読む]

Tracked on 2006年06月01日 08:34
コメント
1

こんにちは。

1.と3.は、今度出すMT本第2弾で、プラグインを使ったカスタマイズ方法を紹介しています。
1は、常に「target="_blank"」をつけるのではなく、その都度選べるようにしています。

それから、2.は当方の改行変換のプラグインでできます。
ソースコードなどで、「」と「」で囲めばOKです。

Posted by ゲスト http://www.h-fj.com/blog at 2005年10月16日 10:44 [RES]
2

>>1 壱さん
w(°o°)w おおっ!!新しいご本も 楽しみにしています。
「常に・・・」 じゃなくて、選べるっていうのが いいですね。

Posted by 管理人 さえら http://caetla.oops.jp/blog2/ at 2005年10月16日 14:44 [RES]
3

こんにちは。

コメントの肝心なところがタグと認識されてしまって消えていますので(笑)、もう一度。
ソースコード等で<等を入れる場合、改行変換プラグインを使うように指定して、ソースコード等の前後を「<enchtml>」と「</enchtml>」で囲みます。

Posted by ゲスト http://www.h-fj.com/blog at 2005年10月16日 17:51 [RES]
4

>>3 壱さん
わざわざ どうもありがとうございます。あと、MT-Notifier の件でも 何度もすみません。

Posted by 管理人 さえら http://caetla.oops.jp/blog2/ at 2005年10月16日 17:52 [RES]
5

夜中にすみません・・・色々カスタマイズしておりますニャ。
聞きたいことがありますニャ。

tmpl/cms/edit_entry.tmpl に 直接 ↓ を追加。
(追加の部分にゃんですけども・・・)
どこに追加すればいいんですかニャ?色々、見て見たんですけども~分からにゃいんですニャ。
すみませんvv
よろしくお願いしますペ(´・(●●)・)(o´_ _)oペコリ

Posted by ゲスト feiにゃん at 2006年06月03日 01:44 [RES]
6

>>5 feiにゃん
追加するのは <script type="text/javascript"> ~ </script> です。
比較的 上の方になります。この方法で難しかったりうまくいかない場合は こちら をお試しになられてはどうでしょうか。

Posted by 管理人 さえら http://caetla.oops.jp/blog2/ at 2006年06月03日 08:10 [RES]
7

ありがとうございますニャ。
お気軽極楽ブログさんのを、そのまま使わせていただきましたぁー
そして、うまく表示されそして!使えますーハート これがやりたかったぁー投稿が楽しくにゃってきましたぁ!!!!

Posted by ゲスト feiにゃん at 2006年06月03日 19:18 [RES]
8

>>7 feiにゃん
こういうのあると便利ですよね。アハッ

Posted by 管理人 さえら http://caetla.oops.jp/blog2/ at 2006年06月04日 09:36 [RES]
Amazon Search
Google Similar