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

OS X 10.6 以下で自動更新を無効にできるか? #32

Closed
aminophen opened this issue Aug 24, 2015 · 10 comments
Closed

OS X 10.6 以下で自動更新を無効にできるか? #32

aminophen opened this issue Aug 24, 2015 · 10 comments
Labels

Comments

@aminophen
Copy link

いま配布サイトで「Lion 以上」と書いてはありますが、記憶が正しければ Sparkle Framework 依存だった気がします。OS 判定を入れて「10.6 以下なら自動更新を無効化(または警告)」のようなことはできないでしょうか。(機能は制限されるかもしれないけど、動く部分だけでも使えたらという希望があってもおかしくないかなと思っています)

@doraTeX
Copy link
Owner

doraTeX commented Aug 24, 2015

いま配布サイトで「Lion 以上」と書いてはありますが、記憶が正しければ Sparkle Framework 依存だった気がします。

当初はそうだったのですが,現在では,もっと色々なところで「10.7 以上」という条件に依存しています。

そのうち,

  • 文字情報パネル(NSPopover によるポップオーバーは 10.7 以降の新機能であるため)
  • NFKC_Casefold による正規化

などは付加的な機能であって,これらが使えなくても大して問題はありません。
しかし,**「NSRegularExpression による正規表現が使えるのが 10.7 以降」**という,今となっては致命的な制約があります。

NSRegularExpression による正規表現を使っている機能を列挙してみると……

  • Ghostscript のバージョン判定
  • ドラッグ&ドロップによるソースのインポート機能(ソースをプリアンブルと本文部に分解するのに使用)
  • SVGの寸法情報の削除
  • 文字情報パネル
  • 「現在の環境を閉じる」機能
  • Modified NFC / Modified NFD 正規化

があります。特に gs のバージョン判定は致命的です。

まあ,gsのバージョン判定くらいであれば,正規表現を使わないように書き直すことも難しくはありませんが,今後機能を追加するにあたって正規表現の使用をためらわざるを得ないとなると,コーディングの自由度に大きな制約が生じてしまいますので,あまり乗り気がしませんね……。

10.6 以前の時代には,OgreKit, RegexKit,RegexKitLite など,オープンソースで作られた私家版の正規表現フレームワークが盛んに用いられていました。Apple公式の NSRegularExpression ではなく,再び昔のように私家版正規表現フレームワークに戻るという時代逆行的な手をとる方法もなくはありません。ですが,同梱フレームワークが増えて容量が増えますし,NSRegularExpression が実装された今となってはそれらの私家版フレームワークの将来性も疑問ですので,あまりとりたい手ではありません。

@aminophen
Copy link
Author

当初はそうだったのですが,現在では,もっと色々なところで「10.7 以上」という条件に依存しています。

なるほど、情報ありがとうございます。TeX2img 1.7.7 が公式にリンクされているので問題になることはないでしょうし、このままでいきましょう。

@doraTeX
Copy link
Owner

doraTeX commented Aug 28, 2015

アップデートのサーバ側のSparkle設定ファイルにおいて,10.7 未満のOSからのアップデート問い合わせには「アップデートなし」と返答するように設定しておきました。
(もっと早くそう設定しておくべきでしたが,そういう設定があるのを今回調べてみて初めて知りました……。)

@aminophen
Copy link
Author

アップデートのサーバ側のSparkle設定ファイルにおいて,10.7 未満のOSからのアップデート問い合わせには「アップデートなし」と返答するように設定しておきました。

あ、可能だったのですね。ありがとうございます。

@doraTeX
Copy link
Owner

doraTeX commented Sep 6, 2015

ふと思い立って,現在の Ver. 2.0.1 をベースにして,10.7 以降依存の機能を削除,または別の実装法で代替するなどして,10.6 で動くバージョンを作成してみました。

バージョン番号の付け方に悩みましたが,Ver. 1.10.0 としてみました。
今後

  • 2.x 系列:10.7 以降
  • 1.10.x 系列:10.6 でも動く機能削減版

という形を考えています。

とはいえ,1.10.0 はこれ以上機能追加はせずに,バグ修正のみに留める感じでよいと思いますが。(←TeXみたいですね😏)

Ver. 2.0.1 → Ver. 1.10.0 での変更点

  • Sparkle による自動アップデート機能を削除(それに関連するメニュー項目も削除)
  • 正規化機能のうち,Modified NFC / Modified NFD / NFKC_Casefold を削除
  • 文字情報表示機能を削除
  • 自動判定対象選択機能を削除。自動判定対象は昔のように "pLaTeX + dvipdfmx" に固定。
  • 不可視文字表示の文字種選択機能を削除
  • シンタックスハイライトの表示色変更機能を削除
  • Retinaディスプレイ対応を削除(Retina ディスプレイ搭載 Mac で 10.6 が動く機種は存在しないので無問題)
  • 「現在の環境を閉じる」機能を削除
  • SVGの寸法情報削除機能は別の方法で実装
  • 外部ソースのインポート機能も別の方法で実装
  • gsのバージョン判定機能も別の方法で実装

@doraTeX doraTeX reopened this Sep 6, 2015
@doraTeX doraTeX added the done label Sep 6, 2015
@doraTeX
Copy link
Owner

doraTeX commented Sep 6, 2015

配布サイトで「Snow Leopard 専用版」として Ver. 1.10.0 の配布を始めました。

@aminophen
Copy link
Author

うちでは Snow Leopard の実機がないので試せませんが、従来の 1.7.7 から比べると 1.10.0 は大きく改善しているはずですね。

@doraTeX
Copy link
Owner

doraTeX commented Sep 7, 2015

こちらも実機はないのですが,仮想環境で一応動作確認しています。
mudraw を10.6対応でビルドしておいたことが今頃活きてきました。

@aminophen
Copy link
Author

Snow Leopard 対応版と最新版のバージョン番号の対応づけが欲しいとふと思いました。今後は 1.10.x = 2.0.x のような感じですかね?(2.0.x の更新が Snow Leopard 版に反映されない場合は 1.10.x のバージョン番号もスキップし、2.1.x になったら 1.11.x になるというイメージ)

@doraTeX
Copy link
Owner

doraTeX commented Sep 10, 2015

なるほど,その対応は分かりやすいですね。ではそうしましょう。(即断)

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

No branches or pull requests

2 participants