Thanks to visit codestin.com
Credit goes to github.com

Skip to content

hiro111suzu/hideup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

秀丸アップデーター v1.1

  • 作者: suzu

概要

  • 秀丸シリーズのソフトウェアのバージョン管理ツールです。
    • 秀丸シリーズは更新頻度も高くエディションもアドインもいろいろあり、ソフトウェアとしては素晴らしい状況といえます。
    • 一方で、ユーザーにとってバージョン管理が面倒という側面もあります。
    • 「秀丸アップデーター」はその面倒を低減させるためのツールです。
    • 秀丸エディタなどの各種ソフトウェアについて、公開バージョンの確認とインストーラーのダウンロード・実行をまとめて行います。
  • 多くのWindows環境で、そのまま実行できます。
    • WSH上で動くJScriptファイルです。(新機能)
    • 新品のPCに一発で、望みの秀丸シリーズ全部をインストールできます。
  • INIファイルの編集によって各種の設定を行います。
    • 初期値で、以下の9種のソフトの「通常の最新版」のインストール・更新に対応しています。
      • 秀丸エディタ
      • 秀丸パブリッシャー
      • 秀丸ファイラー
      • 秀丸メール
      • HTMLメールViewer
      • アドレス帳シンクロナイザ
      • 簡単ネット検索アドイン
      • 秀丸スタートメニュー
      • パスワード総合管理
    • ソフトウェア毎、あるいはまとめて、「開発版」「最新版」などの指定ができます。
    • 64bit版、音声化版などの各種エディションの指定も可能です。
    • 共通のINIファイルで、PCごとにインストールするソフトの種類、バージョンやエディションの個別指定もできます。

実行方法

  • 付属の hideup.js を実行します。
    • コマンドプロンプト(デフォルトターミナル)上で、スクリプトが起動される
    • インストールすべきソフトとバージョンが調査され、確認メッセージが表示される
      • よければ"y"と返答すると、ダウンロード・インストールが実行される
      • 変更したい点があれば中断し、INIファイルを編集し再実行

動作原理

動作

  1. 秀丸シリーズのウェブサイトから各ページを読み込む
  2. 公開されているバージョン番号を収集
  3. 「インストールされている」バージョンと照らしあわせ、更新があるか判断する
    • 詳細は後述
  4. 更新があればソフト名とバージョンを表示し、作業を実行するかユーザーに質問
    • 設定により、ソフトウェアの「改版履歴」ページを開く
    • ここで停止できるので、まずは確認してみてからの実行が可能
  5. 必要に応じて「インストーラー置き場フォルダ」にインストーラーをダウンロード
    • 古いバージョンのインストーラーファイルがあれば削除
  6. インストーラーを実行
  7. 設定に従ってソフトウェアを自動起動

ターミナル上での動作について

  • このスクリプトは、CUIでの動作を前提にしています。
    • wscript.exeで起動された場合(通常はそうなる)、cscript.exeで再起動する仕組み
  • まれにコンソール上での表示がうまくいかない場合があります。
    • ターミナル上で、cscript.exe .\hideup.jsのようなコマンドで実行すれば確実

「インストールされている」の判断について

  • インストールされているバージョンの確認法は2種類
    • レジストリモード
    • インストーラーファイルモード
  • レジストリモード(新機能)
    • レジストリから、インストールされているバージョンを取得し、公開バージョンと比較する
    • INIファイル(後述)で、キー regist の値が設定されているソフトウェアはレジストリモードになる
    • 「HTMLメールViewer」など、いくつかのソフトウェアで非対応
    • 複数のエディション(例: 32ビット版と64ビット版の両方)をインストールしているような状況や、別のエディションに切り替えるときなど、対応できない状況がある
  • インストーラーファイルモード
    • 「インストーラー置き場フォルダ」にそのバージョンのインストーラーファイルがあれば、インストールされている、なければインストールされていないという判断
    • 「インストーラー置き場フォルダ」は、C:\Users\ユーザー名\AppData\Roaming\hidemaru_updater
    • 実際にインストールされているバージョンを調べるわけではない
    • したがって、次のような問題がある
      • 初回起動時は何もインストールされていないものとして動作する
      • インストールのキャンセルやエラーは検知しない
      • 浮動小数点版などの別エディションへの変更後は、以前のインストーラーが削除されず、したがって追従できない
    • その反面、シンプルな挙動なので対応は容易
      • ファイルの有無で状況を確認できる
      • 矛盾の解消は、ファイルの削除や、インストーラー実行時のキャンセルなど、単純な方法で可能

設定方法

  • 設定は、INIファイル( hideup.ini )の編集で行います。
  • 簡単に設定変更できるように、INIファイル自体にもコメントで解説が入れてあります。

セクション [all]

  • num_ver
    • インストールするバージョンのデフォルト値を指定
意味
1 先行開発版(ベータ版)、なければ通常の最新版
2 通常の最新版
3 一つ前の版、なければ通常の最新版
  • no_ask
    • これを1にすると、確認無しでダウンロード・インストール作業が開始される
    • デフォルトは0、確認の質問が出る状態になっている
  • open_hist (新機能)
    • これを1にすると、更新のあるソフトウェアの改版履歴(リリースノート)ページが自動で開かれる
    • 無効にすると、コンソール上にURLが表示される
      • URLリンクに対応しているターミナルなら、手動で開ける

その他のセクション

  • セクション名
    • ソフトウェア名
    • 単に表示に使うだけなので、見分けやすい名称にすればよい
    • 32ビット版と64ビット版の両方入れる場合など、別セクションに分けることも可能
    • 以下のいずれかで、そのソフトウェアを無効にできる
      • 後述の ignore を使う
      • セクション全行をコメントアウト(先頭の文字を;(セミコロン) にする)
      • セクション全行を削除
  • url
    • ソフトの個別ページのアドレスの末尾(最後のスラッシュ以降)の部分
  • file
    • インストーラーファイルのバージョン番号を"<ver>"に変更したもの
    • 32/64bit版、浮動小数点版などの種類を、この値によって指定する
  • ignore
    • これを1にすると、そのソフトについてはなにも実行されない
  • num_ver
    • インストールするバージョン
    • セクション [all]num_ver と同様だが、こちらが優先される
    • ソフト個別に指定する場合はこの値を指定する
  • regist
    • バージョン番号を読み取るレジストリ名
    • このキーからバージョン番号を読み取る(???の部分を書き込む)
    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\???\DisplayVersion
  • autorun
    • これを1にすると、インストール作業後に動作していないソフトウェアを自動起動する
    • regist が設定されているソフトウェアのみ

PCごとの設定

  • 上述のキー名の後に"_"(アンダーバー)とPC名を追加すると、そのPCのみの設定となる
    • 例: num_ver_pc1 = 1 とすると、「pc1」というPCではベータ版優先のインストールとなる
    • 共通のINIファイルで、特定のPCは「秀丸メールをインストールしない」とか、「32bit版を入れる」とか、そういった指定が可能
    • OneDriveなどのクラウドストレージ上に置くことを想定

更新

  • v1.1
    • レジストリから秀丸メールのバージョン番号を正しく読み取れなかったバグを修正
    • ベータ版が複数公開されていると、バージョンがずれるバグを修正
  • v1
    • 言語をPHPからWSH JScriptに変更
    • レジストリからのバージョン番号読み込み
    • 改版履歴ページ(リリースノート)ページを開く機能
    • インストール終了後のソフトウェアの自動起動
  • バージョンなし
    • 公開

使用について

  • 複製、改造、再配布に制限はありません。
  • 無保証です。