Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

入力内容の履歴機能 #1

Closed
doraTeX opened this issue Dec 16, 2014 · 8 comments
Closed

入力内容の履歴機能 #1

doraTeX opened this issue Dec 16, 2014 · 8 comments

Comments

@doraTeX
Copy link
Owner

doraTeX commented Dec 16, 2014

入力内容の履歴機能を設けるか検討。(発端

  • コンパイルするたびに,処理したソース(プリアンブル+本文の揃った完全なソース)をどこかに保存
  • メニューから過去に処理した履歴を復元できるように

検討点

  • どこに保存する? ~/Library/Application Support/TeX2img/ あたりか。
  • ファイル名は連番?日時?
  • いくつまで保存する?「20個以上昔のものは自動削除」とか?それとも永久保存?
  • コンパイルに失敗したソースは保存しない?
  • 履歴からの復元のUIは?
  • 「履歴の消去」のUIも準備
  • 履歴から特定の一つだけ削除したりするUIも用意する?

参考

LaTeXiT の機能やUIを要研究。

@aminophen
Copy link

議論の発端となってしまったので、責任を持って私が想定した最初の発想をメモしておきます。
「すべての履歴というよりは、ユーザが指定した場合に保存というので十分かもしれない」
という思いもあります。
仮に「履歴を自動的に保存する」場合を想定すると

  • 「どこに保存する?」 ~/Library/Application Support/TeX2img/ に賛成。
  • 「ファイル名は連番?日時?」 日時に一票。
  • 「いくつまで保存する?」 20個以上昔のものは自動削除 に一票。
  • 「コンパイルに失敗したソースは保存しない?」 しない に一票。
    他は現時点ではパスします。

@abenori
Copy link

abenori commented Dec 16, 2014

「履歴」だと単に「画像変換時にどっかに保存」「どうにか復元できるようにする」でよいかなと言う気がします.保存形態は実装に都合よくでよいかなぁ.(個人的には設定を保存しているところにしておくのが楽かなと思っています.)特定の場所に保存されていて,それをユーザが使うことを想定するのはちょっと変な気がします.

むしろ

「すべての履歴というよりは、ユーザが指定した場合に保存というので十分かもしれない」

ならば,こちらが起点になるかと.

  • 現在の編集内容からTeXソースファイルを保存/復元する機能
  • 開いたり閉じたりしたファイルの履歴

@doraTeX doraTeX mentioned this issue Dec 16, 2014
@doraTeX
Copy link
Owner Author

doraTeX commented Dec 16, 2014

  • 現在の編集内容からTeXソースファイルを保存/復元する機能
  • 開いたり閉じたりしたファイルの履歴

その場合,TeX2img が通常のエディタのような振る舞いをすることになりますね。

すると,その次の議論として,通常のエディタのように,次のような機能を設けるのが自然という話が出てくるかもしれません。

  • 再開機能
  • 最終保存時からの変更の有無を表示
  • 保存されていない状態で終了しようとすると「保存しますか?」のダイアログを出す
  • 複数ウィンドウ対応

つまり,通常のマルチドキュメントアプリケーションとして実装し直すということになりますね。
これはそれなりに大変な道となりそうです。

これらの機能はあれば便利そうですが,その一方で,こういう形になるとTeX2imgの手軽さが失われるのではという懸念もあります。
TeX2imgはあくまで補助ツールであってメインで使うエディタではないので,終了時にいちいち「変更されていますが保存しますか?」などと聞かれるのは面倒な気がします。

だから,ファイル保存・復元機能を設けるにしても,

  1. 単純に「保存/復元」機能の範囲に留める
  2. マルチドキュメントアプリケーションを目指す

の2つの道であれば,個人的には 1. の方だけで良いかなという気がします。
再開機能だけはそれとは別にあってもよいかもしれません。)

@aminophen
Copy link

TeX2imgはあくまで手軽な補助ツールであるという意見に同意します。マルチドキュメントアプリケーション化する必要はないと思っています。

@abenori
Copy link

abenori commented Dec 17, 2014

だから,ファイル保存・復元機能を設けるにしても,
1.単純に「保存/復元」機能の範囲に留める
2.マルチドキュメントアプリケーションを目指す
の2つの道であれば,個人的には 1. の方だけで良いかなという気がします。
そうですね.別のところで言っていたとおり「インポート/エクスポート」という方が妥当でした.

  • 「履歴がほしい」ならば,編集エリアの内容(preambleは含まず)の履歴をとっておく.
  • 「編集している内容をファイルに保存したい」ならばインポート/エクスポートをつける

といったところかなぁと思います.(まぁどっちもつけてもいいけど.)

@aminophen
Copy link

GUI版の外部ファイル入力機能 #3 で述べた「インポート/エクスポート機能」さえあれば、履歴ほどの大げさな実装は必要ない気がしてきました。
私はエクスポートと保存は違うという認識ですので、終了時に「保存しますか」のようなダイアログも不要だと思います。
(そもそも最初に発言したときには「何らかの形で以前のソースが使えたら良いな」程度でした。よって、履歴とエクスポートのいずれか一方で十分です。)

@abenori
Copy link

abenori commented Dec 17, 2014

とりあえずインポート/エクスポートつけてみました.
http://1drv.ms/1uwNVCs
エラー処理とか甘いと思います.

文字コードは指定されていればそれに従いますが,指定なしの時は(入力にかかわらず)Shift_JISになっています.入力UTF-8ならばUTF-8でもいいかなとも思ったのですが,世のソースはShift_JISが多そうなので…….

インポートは自動推定した方がよいのかもしれません.

@aminophen
Copy link

abenori さんのWin版「インポート/エクスポート」試してみました。
インポート時にエンコードの自動推定ができないのは確かに気になりますね。
それから、問題が起きそうなソースのインポートを試してみると、本文に
\begin{verbatim}
\begin{document}
あいうえお
\end{document}
\end{verbatim}
のように \end{document} という行があるとこれがTeX2imgエディタでは欠落します。
現在のプリアンブルとソースの破棄確認は問題なさそうです。
ただ、表記は「プレアンブル」ではなく「プリアンブル」に統一したほうがいいですね。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants