無料ブログ「rentafree.net」の管理人ブログ

バックアップの仕様を変更した

障害対策のバックアップで、
今までは要バックアップ部分だけ定期バックアップしていましたが、
要バックアップ部分の取りこぼしが発生したらマズイんで、
逆にバックアップ不要部分だけ除外して残り全部バックアップするように仕様変更しました。

table設定でリサイズの際に

table全体の設定のリサイズに関しては修正完了と思いましたが、
末尾がcolspan又はrowspanでセルが残る状態での縮小の場合にずれが残っていたので修正しました。

引き続きtableの件ですが・・・

colspan、rowspanの設定されたテーブルのリサイズ時にずれる可能性がある問題ですが、
引き続き修正をして、
行追加の際には手前の行で影響のあるcolspanが設定されている場合は、
colspanの値を+1してずれなくしました。

列追加に関しては元々ずれが生じる可能性はなさそうです。

table設定と行追加が問題なくなり、列追加は元々問題ないので、
後要確認は、
「行削除」「列削除」「右のセルと統合」「下のセルと統合」
の4つ。
問題の生じるパターンは残っていると思いますが、
対応できそうなら対応します。

<table>編集の際にサイズがずれる可能性がある問題ですが・・・

<table>編集の際にrowspanやcolspanが設定されている場合のリサイズ時にずれる可能性がある問題ですが、
かなり難しそうなんで放置にしようかと思いましたが、
<table>の全体設定時のコードがもっとシンプルに書けそうだったんで修正して、
その際に、
ちょっと複雑なんで不具合がある可能性もありますが、
<table>の全体設定に関してはrowspanやcolspanが設定されていても正しくリサイズできるようになりました。

あとは、
行挿入とセル統合の際に元々rowspanやcolspanが設定されている場合に問題があるパターンがあると思うんで、
修正できそうならどうにかするかもしれません。


Firefox用の新エディターのみ修正です。
旧エディターにも同じ問題があるはずですが、
そっちはブラウザのHTML5対応待ちで放置にしたい。

<tr>の改行に関しては修正しました

新ブログエディタの<table>挿入又は行挿入の際の、
<tr>の後ろに改行コードを入れる件は修正しました。
タグの直接編集がしやすくなったと思います。

行挿入の際にrowspanが設定されている場合にずれる問題に関しては、
対応しようと思うとその行より手前の全ての行を捜査してrowspanの影響を受ける行か確認する必要があり、
行挿入以外の場合でも、
<table>全体設定でリサイズした場合や、
rowspanかcolspanの影響があるセルでセル統合した場合にも問題があり、
ちょっと難しいので放置とします。

[続]エディター微調整

Firefox用の新しいブログエディターですが、再度微調整です。

<ul><ol>
で複数行のリストを作った際、
<li>単位で改行コードが入ってないと直接編集がしにくいと思うので、そこら調整しました。

新しい仕様では、<ul><ol>適用時には、
内部の改行コード(復帰コードやタブコードも)半角スペースに変換されます。
<pre>を内包する場合などは注意してください。
行頭、行末のスペース連続は削除されます。
空の行は&nbsp;となります。(元々)
<li>要素の後ろに改行コードが入ります。
行の追加時も<li>の後ろに改行コードが入ります。

また、前回の修正時に報告忘れていましたが、
以前は右クリックからの行追加の際には手前にしか挿入できませんでしたが、
後ろにも行追加ができるようになっています。


<table>
の方も</tr>で改行されてないと直接編集がしにくいと思いますので、
そっちも近いうちに修正します。

あと、 <table>の方は、
rowspanが設定されている行で行追加した場合に列がずれてしまう問題があるので、
そこも修正を検討してます。

Firefox8.0以上で推薦となっていましたが・・・

ブログのブラウザ対応表はFirefox8.0以上で推薦となっていましたが、
outerHTMLがFirefox11.0からなことに気づいた。

タグ直接編集機能はouterHTMLで実装しているため、
たぶんエラーになります。
Firefox11.0未満の人は最新版にアップできると思いますので、
クロスブラウザ処理は入れずにこのままにします。
Firefox8.0以上からは新型ブログエディターにはなるはずです。

エディター微調整

Firefox用の新しいブログエディターはちょくちょく修正入れてます。


上部ボタンでのタグ挿入はソースモード時でもエラーにはならなかったが、不可にしてメッセージ出すようにした。
width、height、margin、padding等の単位付き数値入力項目で単位なし数値入れた場合に自動で[px]にするようにした。
ボタンでCSS自動設定できる項目以外にもtitle属性で説明つけるようにした。
<img>の設定にaltを追加した。


ってなところです。

現状できる面の改良はこんなもんかな思うんですが、
コンテキストメニューはいずれ他のブラウザも実装すると思いますんで、
新しいブラウザが出たら確認して必要ならすぐに修正します。

あとは、色選択ツールのスライダーが独自実装になってますが、
<input type="range">つかえばもっと良くなると思うんですが、
<input type="range">はまだFirefoxに実装されてない・・・
Firefoxが実装したら旧バージョン切り捨ててでも実装したいと思います。

エディター修正第二弾

Firefox用の新しいブログエディターを再度大幅修正しました。


<変更点その1>
<span><div>適用時に設定画面が出ずにタグ適用となっていましたが、
<span><div>は何も設定しないと見た目変わりませんので、わかりにくいと思うので設定画面出すようにしました。

PCなら右クリックからの修正前提でもわかれば問題ないと思いますが、
右クリック前提だとタッチパネルとかだと不便すぎたんじゃないかと思いますが、その辺も改善したと思います。
まあ、タッチパネルでは編集しにくいと思いますけど。


<変更点その2>
今までは上部メニューに無いタグの挿入はHTML直接入力以外ではできませんでしたが、
右クリックメニューから他にもいくつかのタグを入れられるようにしました。

右クリックから挿入できるようになったのは、既存の、
<b><i><s><u><ul><ol><span><div><a><img><table>
に加え、
<hr><em><q><strong><sub><sup><blockquote><h1><h2><h3><h4><h5><h6><p><pre>
です。

エディタ上の選択範囲の有無で挿入できるタグが変わってきます。


<変更点その3>
今まではインラインタグとブロックタグで処理を分けて、インラインタグ内にはタグを内包できませんでしたが、
処理を共通化してインラインタグ内にタグを内包することもできるようになりました。

<a>タグの設定画面から「文字列」の項目が消えましたので、
範囲指定かタグ適用後に変更する必要があります。
今までは<a>内には<img>以外のタグは内包できませんでしたが(<img>の内包も不完全でしたが)、入れられます。


<変更点その4>
タグの設定画面の処理を共通化して、設定項目を増やしました。
<table>だけ特殊すぎるので共通化していません。
<span><div><a><img><td>
の設定項目が増えています。


<変更点その5>
色選択ツールのポップアップ処理を他のポップアップ処理と共通化しました。
元の仕様だと、ポップアップ中に後ろの領域がクリックできてしまっていましたが、クリックできなくなりました。
ドラッグでの移動もできるようになっています。


<変更点その6>
今までは上部のタグ挿入ボタンをクリックした際、
選択範囲の問題で挿入できない場合でもエラー表示はしませんでしたが、
挿入できない場合はメッセージが出ます。
<a><img><table>
は今まではセレクション又はキャレットがエディタ内にあれば挿入出来ましたが、
セレクション範囲の有無で判別するようにしました。



機能は旧エディタよりかなり増えてますが、
処理の共通化と、IE8を考慮しなくて良くなったので、
コード量は3割以上(30kB以上)削減されています。
シンプルになってメンテナンスもしやすくなった。

新エディター、もう一回大幅修正しそうです

Firefox用の新しいブログエディターですが、
さらに大幅修正してるんで、
近いうちにまたかなり仕様変わりそうです。

次回の変更内容(予定)ですが、


<その1>
<span><div>適用時に設定画面が出ずにタグ適用となっていましたが、
<span><div>は何も設定しないと見た目変わりませんので、わかりにくいと思うので設定画面出すようにします。

あと、PCなら右クリックからの修正前提でもわかれば問題ないと思いますが、
右クリック前提だとタッチパネルとかだと不便すぎたんじゃないかと。
まあ、タッチパネルはそもそも文章編集に向いてないと思いますけど。


<その2>
今までは上部メニューに無いタグの挿入はHTML直接入力以外ではできませんでしたが、
右クリックメニューから他にもいくつかのタグを入れられるようにします。
特定タグの内包が前提のタグはちょっと無理だけど、普通のインラインとかブロックで使いそうなのは用意する。
範囲無いのでも、<hr>なんか用意したい。


<その3>
今までは<b>等のインラインタグを適用する際にタグの内包ができませんでしたが、
HTML5はインラインタグにブロックタグ入れちゃ絶対ダメ!的な規則が無いようなんで、
<div>挿入時と同じ感じで何でも入れれるようにしました。
まあ、インラインはインラインで使ったほうがいいと思いますけど、何も入れれないと不便場合もあると思うので。

<a>タグに関しては、タグ内包できるようにすると文字列設定の項目が出せなくなってしまいますので検討中ですが、
今は一応<img>だけ内包できるようになっているんですが、<img>と文字の混在とか難しくなってるんで、
タグ直接編集機能もあるわけですし、文字列設定消してでもタグ内包できるようにするべきかなと考えてます。


<その4>
text-alignとかtext-decorationとかも設定できるようにしたり、
<div>でfont系の設定できるようにしたりとか。

<div>と<span>以外にも全部のタグにCSS設定できるようにしようと思ったが、
普通、元々ある<div><span><img><a><table>以外の修飾系のタグにCSS設定するもんじゃないと思ったんでやめた。
直接編集機能はすべてのタグで使えるようにするし、要らない。



まあ、だいたいそんな感じ。