「Mery 電卓 (bc コマンド使用版)」の版間の差分

Yuko (トーク | 投稿記録)
編集の要約なし
Yuko (トーク | 投稿記録)
 
(2人の利用者による、間の4版が非表示)
1行目: 1行目:
== 概要 ==
== 概要 ==


「Mery 電卓 (bc コマンド使用版)」は、 [https://www.haijin-boys.com/wiki/Mery_%E9%9B%BB%E5%8D%93 Mery 電卓] の派生版で、Meryエディタ上で数式を計算するためのマクロです。オリジナルの「Mery 電卓」よりも対応する数学関数が少ない代わりに起動が早いため、日々の利用の中で軽快に使用することができます。
「Mery 電卓 (bc コマンド使用版)」は、 [[Mery 電卓]] の派生版で、Meryエディタ上で数式を計算するためのマクロです。オリジナルの「Mery 電卓」よりも対応する数学関数が少ない代わりに起動が早いため、日々の利用の中で軽快に使用することができます。


Linux でお馴染みの bc コマンドを計算エンジンとしており、標準的な数式と一部の数学関数をサポートしています。カーソル位置の行または選択したテキストを数式として解釈し、結果を表示します。計算結果は自動的にクリップボードにコピーされ、カンマ区切りの数値として表示されます。
Linux でお馴染みの bc コマンドを計算エンジンとしており、標準的な数式と一部の数学関数をサポートしています。カーソル位置の行または選択したテキストを数式として解釈し、結果を表示します。計算結果は自動的にクリップボードにコピーされ、カンマ区切りの数値として表示されます。
114行目: 114行目:
     try {
     try {
         var exp_replaced = replaceExpression(exp)
         var exp_replaced = replaceExpression(exp)
             .replace(/([^;]*%[^;]*)/g, "scale=0; $1; scale=10; "); // 剰余計算を整数にする
             .replace(/([^;]*%[^;]*)/g, "scale=0; $1; scale=15; "); // 剰余計算を整数にする
         const exec = shell.Exec(busyboxPath + " bc -l", "scale=10; " + exp_replaced);
         const exec = shell.Exec(busyboxPath + " bc -l", "scale=15; " + exp_replaced);
         if (exec.ExitCode !== 0) {
         if (exec.ExitCode !== 0) {
             throw new Error("計算エラー: " + exec.StdErr);
             throw new Error("計算エラー: " + exec.StdErr);
122行目: 122行目:
         var result_str = exec.StdOut
         var result_str = exec.StdOut
             .trim()
             .trim()
             .replace(/^\./gm, "0.")
             .replace(/^(-)?\./gm, "$10.")
             .replace(/(\.[0-9]*?)0+$/gm, "$1");
             .replace(/(\.[0-9]*?)0+$/gm, "$1")
            .replace(/\.$/gm, "");
     } catch (e) {
     } catch (e) {
         if (exp_replaced === undefined) {
         if (exp_replaced === undefined) {
273行目: 274行目:
== 更新履歴 ==
== 更新履歴 ==


* 2025-11-29 計算結果が「-0.1」のような1未満の負の小数になる場合に「-.1」のような表示になってしまう不具合を修正。小数計算精度を scale=10 から scale=15 へ調整
* 2025-10-26 「5 - 3.0」のような「小数以下が『.0』になる計算」で「.」だけが出力に残ってしまう不具合を修正
* 2025-10-25 公開
* 2025-10-25 公開
スポンサーリンク