編集に関するいろいろなUI.

UI全般については

UI
  • -

目次 Edit

  1. 目次
  2. 関連
  3. UI周辺のタグ
  4. ページ/編集/UIとは
    1. ボタン
  5. 思い付き
    1. 個人用スタイル、ビュー
    2. 全画面モード
      1. メニューバー
    3. テキストエリアを使わずに(テキストで)編集したい
    4. マウス用UI
    5. 次へ
    6. 編集直後のページ表示では、編集した行に「更新した」というマークを
      1. メール投稿
    7. 編集後は差分表示へリダイレクト
    8. 追加用のテキストエリアを一行テキストボックスに変更可能に
    9. ページ/継承欄
    10. プレビューは入力欄と違うページに
    11. プレビュー不要
    12. プレビューでも「ページ/最新の差分を強調」
    13. 消すボタン封じ
    14. リロード時のページ破棄封じ
    15. フォーム
    16. 間違えにくいショートカットキー
    17. ヘルプ内検索ボックス
    18. テンプレート一覧
    19. とりあえず投稿
    20. 型やフォーマットよりも用途を選ぶ
    21. 新規作成時に既存ページ名を参照したい
    22. 新規作成時、履歴が目に留まるように
    23. 新規作成時、Googleのサジェストを見たい
    24. ページ/編集ページにGoogle検索リンクを載せたい
    25. ファイル取り込み
    26. 画像を貼りやすく
    27. 下位ページを含む編集が分かりやすいように
    28. WYSIWYG編集
  6. 早く入力するために
    1. 続けて新規作成
    2. 投稿時にページ遷移なし
    3. フォーム2つに
    4. テキストボックス化
    5. 「かんたん機能入力サポート」
    6. クリックで章追加
    7. ユニバーサルエディットボタン(Universal Edit Button)
  7. 実装
    1. 削除できない
    2. フォーム生成時すでにパーマリンク
    3. 編集キャンセルはリンク
    4. 一定割合以上変更されるなら確認
    5. 閲覧時編集
    6. 全画面
    7. 編集欄に前空行
    8. ユーザーから見たページ構成
    9. 削除時の警告
    10. 属性変更
    11. ページ遷移なし編集を実装するなら
  • -

関連 Edit


検索:UI

UI周辺のタグ Edit

Array

ページ/編集/UIとは Edit


ページ編集のためのUIについて。

ボタン Edit


ペンタブレット + 手書き文字(あるいはオンライン手書き文字認識)なら、ボタンが便利な省入力になる。ページ/編集時に記法を追加するボタンを用意したり。

iPhoneが登場して、スマートフォンでの省入力が一般的になったので不要。

思い付き Edit


ページ名を表示するようなブックマークレットがあればiPhone用Safariでも便利。

ページ名になる記法ページ編集以外にどこでも使えるようにすることでも解決できそう。

よく使うボタンが強調表示になるだけでもいい!!

:i/よく使うボタンを強調表示

入力補助なので、クライアント側でやるべき。WikiEngineに組み込むならサーバーにあるデータを選べるようなものを。実装するならWebブラウザーのカスタマイズとして。

→ テキスト選択して、JavaScriptで加工するようなアプリが併用できるので、それでいい。

個人用スタイルビュー Edit


あまり深刻にならない範囲で、認証済みユーザービューを選択可能に。

1.スタイルシートだけ

工夫なしにできる。

2.ビュー全て

システムの既定値と互換性がないと。

他には自動処理、マクロ処理的なことをボタンにするといい。

→ テキスト処理を自動化するアプリがあるので、なんでも記法で済ませられればそれで済む。

ビューとはページ。内容はフォームも含めてNotationになっているのでページ化できる。

つまり個人用編集ページ

全画面モード Edit


Macのテキストエディターにあるような全画面テキストエリアのモード。

トグルスイッチで、値は永続化

行単位編集。1行ごとにマークアップしないといけない記法に(引用とか)。でもそういうのは記法を改善すべき。

黒背景テーマと合わせて。

メニューバー Edit


要、安心感。データが失われることのないように。

テキストエリアを使わずに(テキストで)編集したい Edit


編集した行頭にマークを付けようとしても、テキストエリアの中にマークを入れないといけないが、送信されたときにマークを削除しなければならなくて不便。

クライアント側で調整しない限り)テキストエリアでは閲覧時とフォントが異なるため、閲覧ページと同じ文字で編集したい。

その場編集UIを作成する機能。

ブックマークを作るようにメニュー項目作成。

メニューに載せるページで「+」アイコンクリック→メニューバーに追加。

マウス用UI Edit


例えばリスト編集専用の、ドラッグ操作で項目の順序を入れ替えるUI

編集ページはテキスト用なので、閲覧用ビューか、また別のビューで。

次へ Edit


iPhoneのSafari用に。

ページの更新ボタンを押す必要があるとき、「次へ」ボタンで更新ボタンのそばまでスクロールできる。

ページ内のリンクをメニューバーにドロップ→メニューバーに追加。

iPhone用なら、ページングか、WikipediaのようなCollapse/Expand式に。

編集直後のページ表示では、編集した行に「更新した」というマークを Edit


章立てになっていても、1つの章が長い場合もあるので、行単位で。

メニューバーの専用編集モードでドラッグして順序入れ替えとか。

つまり、差分表示のページへ遷移。

差分表示はWikiTextソースではなく、閲覧用の表示で行ないたい。

見やすいので。

メニューバーをショートカットキーヘルプにするのも。

メール投稿 Edit

編集後は差分表示へリダイレクト Edit


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

メールで投稿。:/Twitterからとも似ている。

追加。

機能/メール取り込み。mailin.

追加用スペースに。「*草稿(追加待ち)」wikiの組み方で。システムがサポートする機能ではなく。

メールだと元になったが分からないし、元とするを取り寄せてから編集、投稿では手軽さが無いので。

差分表示にはWikiTextのほか、HTML表示(閲覧時そのまま)も付けて。
  • 誰でも可
  • 承認したアドレスからのみ可
    アカウントと合わせて。
  • 投稿用アドレスを隠す

投稿結果を返信。

対象ページへのリンク付き。

後でメール投稿したページを再編集しやすいように。

誰かの利用者ページ(のサブページ)に追記出来れば、メールとして使える。

Edit

追加用のテキストエリアを一行テキストボックスに変更可能に Edit


Enterで送信できるのが良い。

この場合、改行を別の文字で代用。送信されると改行になる。

記法
で良い。閲覧時に<br />に変換。編集時に置き換えなくてもいい。
CreateJS

http://www.createjs.com/

音声を読み込んで再生。

一行タイプにするかどうかは追加コマンドとは別に「一行追加コマンド」でも作ればいい。

付け足しだけで実現できる。

環境音を加工したり、環境音に連動して何かを鳴らせないか

参考:OmmWriter

挙動はGoogle:checkpad.jpのように。

ページ/継承 Edit


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

ページ属性を決めるような機能はページ本文とは別に書きたい。

本文を書くときに邪魔になったり、いつの間にか重複していたりするので。

欄内では呼び出し記述ごとにソート。

テキストエリア。

1行に1つ。

閲覧時展開で本文とマージ(連結)、1つのテキストとして処理するので、本文内に書いた場合と変わらない。

編集ごとにソートされる点が本文欄と違う。

ソートされることを利用して、こちらに本文を書くこともできる。

編集時に本文と別れていればいい。

プレビューは入力欄と違うページ Edit


新しいウィンドウかインラインフレームで。

本当のページでなければプレビューにならない。

プレビュー不要 Edit


戻しやすく戻したときに跡が残らない「更新」を導入する。

→これで編集とプレビューをまとめる。

→他ページから参照される部分もプレビューできる。プレビューが他のページに影響を与えるところも確認できる。

プレビューページは参照不可能でそのうち削除されるページ

機能のトリガーのため。

UIから使うためのもの。機能でなら元から可能だから。

プレビューでも「ページ/最新の差分を強調」 Edit


章のサブページ化があるので変更した部分は追いやすくなるけど。

消すボタン封じ Edit


IEであってもESCキーで消えないように。

ESCキーは「範囲選択を解除」とか「IMEの状態を初期化」だけでいい。

リロード時のページ破棄封じ Edit


ページの有効期限を適切に付けて。

またはページ遷移封じを。ページ遷移でフォームの内容が残るならリロードだけを封じて。

フォーム Edit


ページを作るボタンにはテキストボックスを。つまり「…というページを作る」ということ。

ページを作る」よりも「見たいページ」のほうがいい。「…というページを見る」。作成と閲覧と検索UIを一つに。

検索ボックスでいいかも知れない。検索結果にはページ作成フォームがあるので。

「…というページはありません」ではなく「…について書いてください」というメッセージ

間違えにくいショートカットキー Edit


ページ編集UIで、Alt+SやAlt+PよりもAlt+f 1回、Alt+f 2回のほうが間違えにくい。

ヘルプ検索ボックス Edit


編集中にヘルプを読みたいことがある。

テンプレート一覧 Edit


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

テンプレート項目は1行〜3行程度。

検索ボックスに入力→絞り込み、ソート順は前方一致したもの>部分一致したもの。第二キーは辞書順。

アクセスキーやマウスで選択→カーソル位置に挿入。

例えば…
[[Googleで検索:検索キーワード]]

テキストボックスが文字装飾可能なら、「検索キーワード」の部分は淡い文字で表示。

テンプレートの他、添付ファイルの一覧も同じ一覧に含めて。添付ファイルを埋め込むような記法で。

とりあえず投稿 Edit


一部でも投稿できるように。

Wikiは推敲できるのが特徴だから。

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

後で編集できるように。

※作成時と同じUIで。

やフォーマットよりも用途を選ぶ Edit


一つの用途は複数のデータでできている。

一つのフォーマットを返すだけで完結するユースケースはまずない。

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

なので、一つのレスポンスにはそれだけでユースケースを達成するように複数のフォーマットを混在させることになる。

新規作成時に既存ページ名を参照したい Edit


→追記先検索の機能で。

新規作成時、履歴が目に留まるように Edit


ページ新規作成時の追記先探しにそのページ(が削除される前の)の履歴も含める。

新規作成時、Googleのサジェストを見たい Edit


吹き出しで、Google先生はこうおっしゃっていると。

ページ/編集ページにGoogle検索リンクを載せたい Edit


編集ページの定義に、ページ名(フルパス)を検索するリンクを入れればいい。

ルートページの名前も含めれば、そのWikiに関連するページだけが検索されるはず。

コンテンツだけで可能。

ページ名スペース区切りにするような機能も必要?

ファイル取り込み Edit


特定ディレクトリに置いてあるファイルを自動的に取り込む。
  1. ファイルを作る
  2. FTPクライアントなどでどこかにアップロード
    他サーバーでも可?

    ※ファイル一覧が得られないと不可能。
  3. 取り込み
  4. マークアップをページに書き込むことで貼り付け

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

拡張子次第で取り込み方振り分け。

結果は取り込みログ専用ページ(単一)に。取り込みがあれば通常通りのページ更新。通知機能なども働く。

ログ内容は記録とすぐ活用するための何か(イメージなら貼り付け用の記法など)

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

:t/インポート

画像を貼りやすく Edit


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

…のどちらかで。

「1つ前の」という指定で埋め込める。

編集時に展開されるように。

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

検索可能な一覧を編集ページに。
  • -

テンプレート一覧に添付ファイルも含める機能で。

どこにも貼られていない添付ファイルが分かるような色づけで。

下位ページを含む編集分かりやすいように Edit


下位ページを含むような大きな見出し編集ボタンと、下位の編集ボタンは違うデザインで。

テキストで文字を付けたほうがいいかも知れない。見出しに合わせて大きな文字になるので。

WYSIWYG編集 Edit


利点
  • プレビューせずにカーソル位置で自動リンクを作れる
    ちゃんとリンクすることをすぐに確認できる。(オートフォーマットでもできること)

早く入力するために Edit

続けて新規作成 Edit


新規作成ページページ一覧を備える。

で、送信後にまた空の新規作成ページを返すように。

続けて新規作成ができるようになる。

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

コンテンツだけで可能。

投稿時にページ遷移なし Edit


編集・投稿→そのまま。投稿処理はキューイング。

投稿に必要なトークンは更新するか再び使用可能。

投稿後に閲覧ビューを呼ぶと2つのユースケースを同時に行うので遅い。分ければ体感速度は早くなる。

フォーム2つに Edit


フォームを2つ用意、Tabキーでフォーカスを移して、1文字でも入力した時点で前のフォームを(バックグラウンドで)送信。

というのもいい。

1文字入力を待つのは間違い防止のため。

全てのページを打ち終わったら「送信」ボタン。最後のフォームを送信してページ遷移。

コンテンツの追加だけで可能。

テキストボックス化 Edit


最近編集したページ一覧で。

ページ名を選択するとテキストボックス化。ページ内容が読み込まれる。

編集後、送信。ページは更新され、テキストボックスはページ名に戻る。

編集日時などは更新してもページリロードまでソートしないこと。

「かんたん機能入力サポート」 Edit


@wikiの「かんたん機能入力サポート」のようなものはどうか?

要はパラメータの意味を出すヘルプがあればいい。入力欄は分けないほうがいい。

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

→選択すると表示。

テンプレート一覧のような検索可能な一覧で実現。

クリックで章追加 Edit


最初の章と最後の章には「ここに追加」ボタンを。

全章に付けてもいい。

ページの途中、任意の章の前に追加するのをやりやすく。

ユニバーサルエディットボタン(Universal Edit Button) Edit

<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

実装 Edit

削除できない Edit


「削除」という言葉を排除。管理者以外は削除できないので。

代わりに「アーカイブにしまう」か「履歴にしまう」か「用済みにする」か「無効化する」という表現を。

付け加えるなら「最新版を見えなくして」とか「最新版を削除して」…

フォーム生成時すでにパーマリンク Edit


永続的なURIでページ作成

戻るボタンを押して戻れたり、ページ作成画面をブックマークできたりするように。

「存在しないページは新規作成」なので、予めURIを作っておいたほうが実装はシンプルになる。

編集キャンセルはリンク Edit


ページ移動するだけなので。プレビューWiki終了にしても一時データはまだある。ブラウザーの戻るボタンで戻れるように。

一定割合以上変更されるなら確認 Edit


SPAM対策と誤り防止。

一定割合以上変更されたら(編集前後の共通点が一定割合以下なら)確認のページ権限は特に要らない。

割合はサイトの設定による。

閲覧時編集 Edit


チェックボックスなどは閲覧時に編集したい。

検索:チェックボックス

チェックを入れるとページ更新。残る。

これをリスト記法 (ol, ul, 定義リスト) の機能にすれば…?
  • -
    行単位選択、行ごとに一つの記法で書き換えするツール編集時に使えるように。取り消し線をかけたり。

全画面 Edit


編集対象だけを表示するモード。ブラウザーの全画面モードと組み合わせればディスプレイ全体を使える。

全画面での閲覧ならブラウザー側でできる。利用者設定のペインを全ページの共通部分に表示すれば広い画面でも活用できる。閲覧ならブラウザーの機能と併用したほうがいいので、特別なUIは要らない。

編集欄に前空行 Edit


iPhoneでも追加しやすいように。

文頭、文末の空行は削除、必要なときに自動付与。

ユーザーから見たページ構成 Edit


階層化しても、上位ページ基準ページの1つ下)に統合されるように見える。

ページ/編集/UI → 「ページ」の一部になる。UI編集の一部でもある。全てのページUI/ページ/編集ページ/編集/UIとして表示される。

下位展開しないページを基準にするべき。

→一体化。

見出しを変更すると、基準ページ内の位置ばかりか対応する基準ページも変わる。

例:

ページ1を編集、「ページ2」で始まる見出しにすると投稿後にページ2の投稿した見出しにジャンプ。

削除時の警告 Edit


ページ内容を空にした瞬間、「このまま保存すると削除になり、下位ページもいずれ削除されます。」というメッセージを表示。

ダイアログではなく、表示するだけのもの。

空でなくなった瞬間に警告は消すこと。

空にしたときのメッセージに「削除する」ボタンを入れるのもいい。分かりやすい。

実際は「ページの更新」と同じボタン

属性変更 Edit


正規表現でページセット作成、それらの属性を指定した値に変更。

値名と値はどう指定するか。→文字列で。値を空文字列にすると削除。

ページ遷移なし編集を実装するなら Edit

ここに追加1.png

ここに追加2.png

章に付いている編集アイコンで章の編集

細部の編集用。

ここに追加1.png

ここに追加3.png

章末尾の追加アイコンでそこに追加。

編集で章より前に追加しても同じ。分かっている利用者にとってこのボタンは不要。


ページ遷移を伴うがっつり編集モードはページ冒頭のツールバーにでも置いた編集アイコンから。

編集サポートやツールが使いやすいモード。

編集後も画面遷移は無いので差分を確認したいなら差分コマンドを実行してもらう。