• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/編集]] [[:t/UI]] [[:t/エディター]]

ページ編集のためのUIについて。
→ [[:t/編集 :t/UI>AND検索:t/編集 :t/UI]]

----

#contents



***[[:i/ページを書くときのUI]] [#x1c5b2f2]
中心はエディター。その左右に関連情報を表示。エディターだけを表示すること(ディストラクションフリーモード?)も可能に。


***[[書くときの一覧]] [#yfcca010]
Wiki内に存在する言葉を一覧化。書くときはそこからコピペしたり自動補完(オートコンプリート)したり。
***ページ名をコピペしやすいように [#p337c6ca]
編集時、ページ名はコピペしやすいようにテキストボックスで表示。編集ページなら「[ページ名]の編集」のように。
リンクにはしない。それはトピックパスにあるので。ページ更新はトピックパスの末尾(ページ名)クリックか、ブラウザーの機能で。編集を頻繁にするなら[[→:編集者モード]]で常に編集ビュー。

ページ名を表示するようなブックマークレットがあればiPhone版Safariでも便利。
ページ名になる記法をページ編集以外にどこでも使えるようにすることでも解決できそう。
[[:i/コピペ用テキスト]]


*あとでなおす [#q19f5999]

**編集/UI [#d2528ca3]
多彩な記法で書くテキストエリア使用時でも閲覧ビューを再現
編集対象になっていない部分を閲覧ビューのままで表示。
閲覧ビューの中に編集ビューがあるような印象に。

閲覧ビュー/編集ビューの差を減らして分かりやすく。

RIGHT:[[:t/編集]] [[:t/UI]]


**引用にはタイトルを [#z827272c]
1行目または最後の行にタイトルを書けるように。
記法/タイトル記法?
**個人用スタイル、ビュー [#z60a417c]
あまり深刻にならない範囲で、認証済みユーザーはビューを選択可能に。
1.スタイルシートだけ
工夫なしにできる。
2.ビュー全て
システムの既定値と互換性がないと。

ビューとはページ。内容はフォームも含めてNotationになっているのでページ化できる。
つまり個人用編集ページ。

**テキストエリアを使わずに(テキストで)編集したい [#f13fdaba]
編集した行頭にマークを付けようとしても、テキストエリアの中にマークを入れないといけないが、送信されたときにマークを削除しなければならなくて不便。
(クライアント側で調整しない限り)テキストエリアでは閲覧時とフォントが異なるため、閲覧ページと同じ文字で編集したい。


**マウス用UI [#z7fdb17e]
例えばリスト編集専用の、ドラッグ操作で項目の順序を入れ替えるUI。
編集ページはテキスト用なので、閲覧用ビューか、また別のビューで。
RIGHT:[[:t/柔らかいUI]]
**%%次へ%% [#n1b7fb40]
%%iPhoneのSafari用に。%%
%%ページの更新ボタンを押す必要があるとき、「次へ」ボタンで更新ボタンのそばまでスクロールできる。%%

→iPhone用なら、ページングか、WikipediaのようなCollapse/Expand式に。
**編集直後のページ表示では、編集した行に「更新した」というマークを [#j00fba3e]
章立てになっていても、1つの章が長い場合もあるので、行単位で。

つまり、差分表示のページへ遷移。
差分表示はWikiTextソースではなく、閲覧用の表示で行ないたい。
見やすいので。

**編集後は差分表示へリダイレクト [#yb6d6182]
誤った編集をしても、前のページが表示されているのですぐにコピペできる。(リバートは場合によっては適切ではない。やり直しになってしまう。やり直しよりは編集前を見ながら訂正した方が簡単)

差分表示にはWikiTextのほか、HTML表示(閲覧時そのまま)も付けて。



**追加用のテキストエリアを一行テキストボックスに変更可能に [#wd0e0290]
Enterで送信できるのが良い。
この場合、改行を別の文字で代用。送信されると改行になる。
記法 \\ で良い。''閲覧時に''<br />に変換。編集時に置き換えなくてもいい。

一行タイプにするかどうかは追加コマンドとは別に「一行追加コマンド」でも作ればいい。
付け足しだけで実現できる。

挙動は[[Google:checkpad.jp]]のように。
**ページ/継承欄 [#n12d2dc2]
なおす。

ページ/継承される可能部分を書く。

ページの属性を決めるような機能はページ本文とは別に書きたい。
本文を書くときに邪魔になったり、いつの間にか重複していたりするので。
欄内では呼び出し記述ごとにソート。

テキストエリア。
1行に1つ。

閲覧時展開で本文とマージ(連結)、1つのテキストとして処理するので、本文内に書いた場合と変わらない。
編集ごとにソートされる点が本文欄と違う。
ソートされることを利用して、こちらに本文を書くこともできる。

編集時に本文と別れていればいい。
**プレビューは入力欄と違うページに [#we7ee581]
新しいウィンドウかインラインフレームで。
本当のページでなければプレビューにならない。
**プレビュー不要 [#ad56218e]
戻しやすく戻したときに跡が残らない「更新」を導入する。
→これで編集とプレビューをまとめる。
→他ページから参照される部分もプレビューできる。プレビューが他のページに影響を与えるところも確認できる。

プレビューページは参照不可能でそのうち削除されるページ。
%%機能のトリガーのため。%%
%%UIから使うためのもの。機能でなら元から可能だから。%%

RIGHT:[[:t/機能]] [[:t/いろいろなページ]]


**プレビューでも「ページ/最新の差分を強調」 [#df3a658b]
章のサブページ化があるので変更した部分は追いやすくなるけど。
**消すボタン封じ [#b72c4280]
IEであってもESCキーで消えないように。
ESCキーは「範囲選択を解除」とか「IMEの状態を初期化」だけでいい。
**リロード時のページ破棄封じ [#ga7b3727]
ページの有効期限を適切に付けて。
またはページ遷移封じを。ページ遷移でフォームの内容が残るならリロードだけを封じて。
**フォーム [#s56e3c97]
ページを作るボタンにはテキストボックスを。つまり「…というページを作る」ということ。
「ページを作る」よりも「見たいページ」のほうがいい。「…というページを見る」。作成と閲覧と検索のUIを一つに。
検索ボックスでいいかも知れない。検索結果にはページ作成フォームがあるので。

RIGHT:[[:t/検索]]

「…というページはありません」ではなく「…について書いてください」というメッセージ。
**%%間違えにくいショートカットキー%% [#ia13b88b]
%%ページの編集のUIで、Alt+SやAlt+PよりもAlt+f 1回、Alt+f 2回のほうが間違えにくい。%%
**ヘルプ内検索ボックス [#d1356327]
編集中にヘルプを読みたいことがある。

-編集ページにヘルプへのリンクを
-ヘルプには類義語を含めて、検索しやすいようにしておく。
(コンテンツだけの話。システムではサポートしなくていい)
-テンプレートもヘルプの一種
テンプレートはそのサイトのローカルルールのヘルプ。

RIGHT:[[:t/ヘルプ]] [[:t/検索]]
**テンプレート一覧 [#d3a2d32f]
編集欄の傍らにテンプレート一覧とその検索ボックスを。ヘルプ検索と統合してもいいかも。ヘルプは見るだけの(コピペしない)テンプレート。

テンプレート項目は1行〜3行程度。
検索ボックスに入力→絞り込み、ソート順は前方一致したもの>部分一致したもの。第二キーは辞書順。

アクセスキーやマウスで選択→カーソル位置に挿入。
例えば…
 [[Googleで検索:検索キーワード]]
テキストボックスが文字装飾可能なら、「検索キーワード」の部分は淡い文字で表示。

RIGHT:[[:t/テンプレート]] [[:t/検索]] [[:t/ヘルプ]]

テンプレートの他、添付ファイルの一覧も同じ一覧に含めて。添付ファイルを埋め込むような記法で。
**とりあえず投稿 [#q48aec39]
一部でも投稿できるように。
Wikiは推敲できるのが特徴だから。

ページ名が無い、内容が無い、機能に必要な引数が無い、設定が無い、クエリーが無いなど。

後で編集できるように。
※作成時と同じUIで。


**型やフォーマットよりも用途を選ぶ [#p2e3c334]
一つの用途は複数のデータ型でできている。
一つのフォーマットを返すだけで完結するユースケースはまずない。

が、一つのユースケースは、フォーム呼び出し→入力(Ajaxでの入力補助含む)→リクエスト→レスポンス、で達成されるのがいい。リクエストがバックグラウンドで行われるなら、リクエストとレスポンスの代わりに「ユーザーが結果に満足して次へ」になる。

なので、一つのレスポンスにはそれだけでユースケースを達成するように複数のフォーマットを混在させることになる。
**%%新規作成時に既存ページ名を参照したい%% [#sda6636c]
-%%既存ディレクトリの下にページを作るために。%%
-%%ページ名を統一するために。%%

→追記先検索の機能で。


**新規作成時、履歴が目に留まるように [#r9fa6305]
ページ新規作成時の追記先探しにそのページ(が削除される前の)の履歴も含める。

**新規作成時、Googleのサジェストを見たい [#ief78fb4]
吹き出しで、Google先生はこうおっしゃっていると。
**ページ/編集ページにGoogle検索リンクを載せたい [#rd90e821]
編集ページの定義に、ページ名(フルパス)を検索するリンクを入れればいい。
ルートページの名前も含めれば、そのWikiに関連するページだけが検索されるはず。

コンテンツだけで可能。
ページ名をスペース区切りにするような機能も必要?
**ファイル取り込み [#xfa56264]
特定ディレクトリに置いてあるファイルを自動的に取り込む。
+ファイルを作る
+FTPクライアントなどでどこかにアップロード
他サーバーでも可?
※ファイル一覧が得られないと不可能。
+取り込み
+マークアップをページに書き込むことで貼り付け

%%取り込む際、ファイル名がページ名になる。(だから/が使えない)%%

拡張子次第で取り込み方振り分け。
結果は取り込みログ専用ページ(単一)に。取り込みがあれば通常通りのページ更新。通知機能なども働く。
ログ内容は記録とすぐ活用するための何か(イメージなら貼り付け用の記法など)

この一覧のテンプレートはページになっていて、編集可能。

[[:t/インポート]]
**画像を貼りやすく [#xaaa4133]
%%画像やその他ファイルを貼るとき、既存のファイル名を調べたりしなくていいように。%%
-%%名前(利用者が扱う名前)が重複したら自動的に変更。%%
%%RIGHT:[[:t/ページ/内部名]]%%
-%%時刻を名前にする。%%
%%機能呼び出しには近い時刻を付ければいい。%%

%%…のどちらかで。%%

%%「1つ前の」という指定で埋め込める。%%
%%編集時に展開されるように。%%

%%ファイルの種別はMIMEか拡張子から自動判別。%%

RIGHT:[[:t/添付]]

%%→検索可能な一覧を編集ページに。%%

----

→テンプレート一覧に添付ファイルも含める機能で。
どこにも貼られていない添付ファイルが分かるような色づけで。

**WYSIWYG編集 [#ibf10045]
利点
-プレビューせずにカーソル位置で自動リンクを作れる
ちゃんとリンクすることをすぐに確認できる。(オートフォーマットでもできること)
*早く入力するために [#c8e1e863]
**続けて新規作成 [#q9057bcb]
新規作成ページはページ一覧を備える。
で、送信後にまた空の新規作成ページを返すように。
続けて新規作成ができるようになる。

新規作成ページを別フレームにするのもいい。


コンテンツだけで可能。
**投稿時にページ遷移なし [#vb94f04b]
編集・投稿→そのまま。投稿処理はキューイング。
投稿に必要なトークンは更新するか再び使用可能。

投稿後に閲覧ビューを呼ぶと2つのユースケースを同時に行うので遅い。分ければ体感速度は早くなる。
**フォーム2つに [#f204ae2c]
フォームを2つ用意、Tabキーでフォーカスを移して、1文字でも入力した時点で前のフォームを(バックグラウンドで)送信。
というのもいい。
1文字入力を待つのは間違い防止のため。
全てのページを打ち終わったら「送信」ボタン。最後のフォームを送信してページ遷移。

コンテンツの追加だけで可能。
**テキストボックス化 [#bc7c1d47]
最近編集したページ一覧で。
ページ名を選択するとテキストボックス化。ページ内容が読み込まれる。
編集後、送信。ページは更新され、テキストボックスはページ名に戻る。

編集日時などは更新してもページリロードまでソートしないこと。
**「かんたん機能入力サポート」 [#lb40bcd5]
[[@wiki>http://atwiki.jp/]]の「かんたん機能入力サポート」のようなものはどうか?
要はパラメータの意味を出すヘルプがあればいい。入力欄は分けないほうがいい。

打っているそばから表示更新…はカーソル位置が得られないと…差分を得て…は重くて無理。
→選択すると表示。


→テンプレート一覧のような検索可能な一覧で実現。
**クリックで章追加 [#wfb1ee72]
最初の章と最後の章には「ここに追加」ボタンを。
全章に付けてもいい。
ページの途中、任意の章の前に追加するのをやりやすく。


**ユニバーサルエディットボタン(Universal Edit Button) [#g82ca541]

 <link rel="alternate"
  type="application/wiki"
  title="このページを編集..."
  href="?%E3%83%9A%E3%83%BC%E3%82%B8%2F%E7%B7%A8%E9%9B%86%2FUI&cmd=edit"
 />

†[[http://universaleditbutton.org/%E6%97%A5%E6%9C%AC%E8%AA%9E]]
*方法 [#od8c2fef]

**よく出てくる単語(頻出語)の一覧 [#ja7b2592]
新しいページを作るきっかけなので、「新規ページ作成」ボタンの前に利用者に見せたい。
新規作成のページで表示するのもいい。ページ名を統一するために。似ているページ名を探すのに役立つ。

独立したページにすべき。
活用しやすくするため。1ページが1つのDBテーブルのようなもの。

頻出語のリストには、最後に発見された(システムが見つけた)日付も。
データを活用するために。

→[[:i/機能/テンプレート生成]]

RIGHT:[[:t/動的]] [[:t/ページ]] [[:t/編集]]
**削除できない [#u58b0fd9]
「削除」という言葉を排除。管理者以外は削除できないので。
代わりに「アーカイブにしまう」か「履歴にしまう」か「用済みにする」か「無効化する」という表現を。

付け加えるなら「最新版を見えなくして」とか「最新版を削除して」…
**フォーム生成時すでにパーマリンク [#o465a5d9]
永続的なURIでページ作成。
戻るボタンを押して戻れたり、ページ作成画面をブックマークできたりするように。

「存在しないページは新規作成」なので、予めURIを作っておいたほうが実装はシンプルになる。
**編集キャンセルはリンク [#q5cdd93e]
ページ移動するだけなので。プレビューWiki終了にしても一時データはまだある。ブラウザーの戻るボタンで戻れるように。
**一定割合以上変更されるなら確認 [#x3bb6130]
SPAM対策と誤り防止。
一定割合以上変更されたら(編集前後の共通点が一定割合以下なら)確認のページ。権限は特に要らない。
割合はサイトの設定による。
**閲覧時編集 [#ede45a64]
チェックボックスなどは閲覧時に編集したい。
[[検索:チェックボックス]]
チェックを入れるとページ更新


**編集/ [#qd75983e]
#ls