「
連番を挿入
」を編集中
2019年12月21日 (土) 21:56時点における
Masme
(
トーク
|
投稿記録
)
による版
(マクロ更新)
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
<div style="float:right">__TOC__</div> カーソル行頭 or 選択範囲行頭に連番を挿入するマクロです。 [[ファイル:InsertSequentialNumber_Popup.png]] {|class="wikitable" ! 連番を挿入 | 連番の挿入を実行します。 |- ! 形式 | 連番の種類(スタイル)。<br>プリセット(あらかじめ用意した設定)の適応もここで行います。 |- ! 開始 | 開始番号(0以上の整数)。 |- ! 個数 | 行数(1以上の整数)。<b style="color:#c00;">範囲選択時は変更できません。</b><br><code>..数値</code> と入力すると、数値を終了番号とみなします。<br>たとえば、<code>..9</code> なら9までで終わる連番になるよう個数を逆算します。 |- ! 増分 | 増加幅(0以上の整数)。 |- ! 桁数 | 最低桁数(0以上の整数。0 で最長桁揃え)。<br>桁埋めしたくない場合、1 を指定してください。 |- ! 桁埋 | 桁埋め文字(1文字)。<b>結合文字列には対応していません。</b><br>空欄にすると、スタイル既定の桁埋め文字が適用されます。 |- ! 接頭<br>接尾 | 連番の前後に付加する文字列。下記の特殊記法が使えます。<br><code>%t</code> (タブ)、<code>%%</code> (文字 %)、<code>%A</code> (始値)、<code>%Z</code> (終値) |- ! (プレビュー)<br>もっと見る | 連番の内容(最初と最後)の下見です。<br><b>[もっと見る]</b> で最初6個と最後6個を下見できます。 |} ==注意点== * 範囲選択時は行全体を選択してから、論理行頭(論理座標)に連番を挿入します。 * 連番の限度は <b style="color:#c00;">9007兆</b>1992億5474万0991 (2<sup>53</sup>−1) です。超過した場合の動作は保証しません。<br>JavaScript の仕様では、この数値を超えると整数の取り扱いに不都合が生じます。 * 個数の限度は <b style="color:#c00;">42億</b>9496万7295 (2<sup>32</sup>−1) です。メモリ不足の場合の動作は保証しません。 * 桁埋・接頭・接尾の入力時にキャンセルすると、前の状態に戻るのではなく、空欄となります。<br>これは仕様上解決できませんので、ご了承ください。 * 桁埋・接頭・接尾・プレビューでは、下記のような代替表示が行われます。 ** 半角空白 (U+0020) → <code>␣</code> (U+2423) と表示 ** 全角空白 (U+3000) → <code>〼</code> (U+303C) と表示 ** 水平タブ (U+0009) → <code> › </code> (U+203A) と表示 * プレビューでは、最長桁数を実際より少なく見積もることがあります。 ==ソースコード== ダウンロード→ [[メディア:連番を挿入.zip|連番を挿入.zip]] * 拙作ですがアイコンファイル (連番を挿入.ico) を同梱してあります。<br>Mery 2.4.7 以降の場合、マクロ (連番を挿入.js) と同じフォルダに、<br>Mery 2.4.6 以前の場合、Mery.exe と同じフォルダに、<br>アイコンファイルを配置しておくとツールバーにアイコンが読み込まれます。 ==更新履歴== [[ファイル:連番を挿入.zip]] ; 2019/12/21 (rev.2) * アイコンファイルを同梱し、読み込むようにした。 * 連番の挿入を実行後、実行範囲を行選択するようにした。 * 「プレビュー」を一番下に移動し、「もっと見る」を追加。 * スタイルの概念を導入(英字・仮名・ローマ数字・漢数字連番などに対応)。 ** 「形式」を追加。「プリセット」は削除。 * 個数で、<code>..数値</code> と入力すると終了番号とみなすようにした。 * 指定した桁数までしか桁埋めしない仕様に変更。 ** 桁数を 0 にすると、最長桁揃えができるようにした。 * 桁埋を空欄にした場合、スタイルの既定を適用する仕様に変更。 * 接頭・接尾で、% による特殊記法を導入。 * 入力ダイアログの見出しを「項目名:」→「項目名: 現在値」に変更。 * 開始・個数・増分・桁数で、限度を超過した数値を受け付けないようにした。 * 桁埋で、2文字以上を指定した場合、最初の1文字のみ受け付けるようにした。 * 桁埋・接頭・接尾・プレビューで、文字 & が正常に表示されないのを修正。 * 代替表示の対象に全角空白を追加。空欄を除外。 * サロゲートペアに対応。 ; 2013/08/25 (rev.1) * 初版公開。 ==連番の形式== 「形式」の内容は、ソースコードの最初あたりで定義されています。 <source lang="javascript"> //■形式 // ----------------- ↓ここより下に定義を追加 /* スタイル切替の例 */ ,{text:"%{style.text}\t%{style.pad}埋", style:"dec"} ,{text:"%{style.text}\t%{style.pad}埋", style:"up-roman"} ,{text:"%{style.text}\t%{style.pad}埋", style:"up-latin"} ,{text:"%{style.text}\t%{style.pad}埋", style:"hira"} ,{text:"%{style.text}\t%{style.pad}埋", style:"kanji"} /* プリセットの例 */ ,{text:"(1),(2),(3) ...", style:"dec", prefix:"(", suffix:")"} ,{text:"1.␣,2.␣,3.␣ ...", style:"dec", prefix:"", suffix:". "} ,{text:"1/Z › ,2/Z › ,3/Z › ... (Z:終値)", style:"dec", prefix:"", suffix:"/%Z%t"} ,{text:"A ... Z [%{count}個]", style:"up-latin", start:"1", count:"26", step:"1"} ,{text:"あ ... ん [%{count}個]", style:"hira", start:"1", count:"48", step:"1"} ,{text:"北海道 ... 沖縄県 [%{count}個]", style:"pref", start:"1", count:"47", step:"1"} </source> <pre> ,{text:"表示文", style:"スタイル", start:"開始", count:"個数", step:"増分", digit:"桁数", pad:"桁埋", prefix:"接頭", suffix:"接尾"} </pre> ; style, start, count, step, digit, pad, prefix, suffix : 適用する設定。 : ※<code>style</code> に存在しないスタイル名を指定すると、適用時にエラーになります。 : ※範囲選択時は個数が固定されるため、<code>count</code> の指定は無視されます。 ; text : メニューに表示する文章。下記の特殊記法が使えます。 :* <code>%{xxx}</code>:適用する設定 xxx の値。たとえば、<code>%{start}</code> など。 :* <code>%{style.xxx}</code>:適用する style の xxx の値。たとえば、<code>%{style.text}</code> など。 : ※ xxx が存在しない場合、<code>%{...}</code> 部分は置換されず、そのまま表示されます。 : ※<code>pad</code>, <code>prefix</code>, <code>suffix</code> の値には代替表示が適用されます。 ===定義済みスタイル=== 初期状態で定義されているスタイルです。 {|class="wikitable" ! style !! 形式表示 !! 例 !! 説明 |- | dec || 1,2,3 || 0,1,2,3 ... 9,10,11 ... || 算用数字(アラビア数字)。 |- | dec-full || 1,2,3 || 0,1,2,3 ... 9,10,11 ... || 全角算用数字。 |- | dec-kanji || 一,二,三 || 〇,一,二,三 ... 九,一〇,一一 ... || 漢数字・位取り表記。 |- | up-roman || I,II,III || I,II,III ... IX,X,XI ... ||rowspan="2"| ローマ数字(英字表記)。1から3999まで。<br>0と4000以上は算用数字になります。 |- | lo-roman || i,ii,iii || i,ii,iii ... ix,x,xi ... |- | up-latin || A,B,C || A,B,C ... Z,AA,AB ... ||rowspan="2"| 英字(ラテン・アルファベット)。26種。 |- | lo-latin || a,b,c || a,b,c ... z,aa,ab ... |- | up-latin-full || A,B,C || A,B,C ... Z,AA,AB ... ||rowspan="2"| 全角英字。 |- | lo-latin-full || a,b,c || a,b,c ... z,aa,ab ... |- | up-greek || Α,Β,Γ || Α,Β,Γ ... Ω,ΑΑ,ΑΒ ... ||rowspan="2"| ギリシャ文字。24種。 |- | lo-greek || α,β,γ || α,β,γ ... ω,αα,αβ ... |- | hira || あ,い,う || あ,い,う ... ん,ああ,あい ... ||rowspan="2"| 仮名文字・五十音順。48種。 |- | kata || ア,イ,ウ || ア,イ,ウ ... ン,アア,アイ ... |- | kata-half || ア,イ,ウ || ア,イ,ウ ... ン,アア,アイ ... || 半角カタカナ・五十音順。46種(「ヰヱ」が無い)。 |- | hira-iroha || い,ろ,は || い,ろ,は ... す,いい,いろ ... ||rowspan="2"| 仮名文字・いろは順。47種(「ン」が無い)。 |- | kata-iroha || イ,ロ,ハ || イ,ロ,ハ ... ス,イイ,イロ ... |- | kanji || 一,十,百 || 〇,一,二,三 ... 九,十,十一 ... || 漢数字。 |- | daiji || 壱,拾,百 || 零,壱,弐,参 ... 九,拾,拾壱 ... || 漢数字・大字。 |- | circled-num || ①,②,③ || ①,②,③ ... ⑨,⑩,⑪ ... || 丸数字。1から20まで。 |- | stem || 十干 || 甲,乙,丙 ... 癸,甲,乙 ... || 十干(天干 / Heavenly Stems)。10種ループ。 |- | branch || 十二支 || 子,丑,寅 ... 亥,子,丑 ... || 十二支(地支 / Earthly Branches)。12種ループ。 |- | stem-branch || 六十干支 || 甲子,乙丑,丙寅 ... || 六十干支。60種ループ。 |- | pref || 都道府県 || 北海道,青森県,岩手県 ... || 都道府県(prefecture)。47種ループ。 |- | hitotsu || 一 || 一,一,一 ... || 一つ書き。1種ループ。 |- | naka || ・ || ・,・,・ ... || 中黒・中点。和文の箇条書きで用いられる。 |- | disc || • || •,•,• ... || Bullet(ビュレット)。欧文の箇条書きで用いる。 |- | none || 無し || || 連番無し。 <!-- |- | up-hex || 1,F,10 || 0,1,2,3 ... F,10,11 ... ||rowspan="2"| 十六進数(hexadecimal)。 |- | lo-hex || 1,f,10 || 0,1,2,3 ... f,10,11 ... |- | up-roman-full || I,M || I,II,III ... ||rowspan="2"| ローマ数字(全角英字表記)。 |- | lo-roman-full || i,m || i,ii,iii ... |- | up-roman-num || Ⅰ,Ⅹ || Ⅰ,ⅠⅠ,ⅠⅠⅠ ... ||rowspan="2"| ローマ数字。1から39まで。 |- | lo-roman-num || ⅰ,ⅹ || ⅰ,ⅰⅰ,ⅰⅰⅰ ... |- | up-roman-lig || Ⅰ,Ⅱ,Ⅲ || Ⅰ,Ⅱ,Ⅲ ... Ⅸ,Ⅹ,ⅩⅠ ... ||rowspan="2"| ローマ数字(合字表記)。1から39まで。 |- | lo-roman-lig || ⅰ,ⅱ,ⅲ || ⅰ,ⅱ,ⅲ ... ⅸ,ⅹ,ⅹⅰ ... |- | circled-num || ①,②,③ || ⓪,①,②,③ ... ⑨,⑩,⑪ ... || 丸数字。0から50まで。⓪と㉑以上は Unicode 文字。 --> |} ===スタイルの定義=== スタイルについては HTML / CSS の @counter-style を一部参考にしています。 * [https://www.w3.org/TR/css-counter-styles-3/ W3C - CSS Counter Styles Level 3] / [https://triple-underscore.github.io/css-counter-styles-ja.html 非公式日本語訳] <source lang="javascript"> //■スタイル // ----------------- ↓ここより下に定義を追加 /* system:"numeric" の例 */ ,"dec":{label:"1,2,3", text:"1,2,3 ... 9,10,11 ...", system:"numeric", pad:"0", zero:"0", symbols:"0123456789".split("")} /* system:"alphabetic" の例 */ ,"up-latin":{label:"A,B,C", text:"A,B,C ... Z,AA,AB ... (26種)", system:"alphabetic", pad:" ", symbols:"ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("")} /* system:"cyclic" の例 */ ,"stem":{label:"十干", text:"甲,乙,丙 ... 癸,甲,乙 ... (10種)", system:"cyclic", pad:" ", symbols:"甲乙丙丁戊己庚辛壬癸".split("")} /* system:"additive" の例 */ ,"up-roman":{label:"I,II,III", text:"I,II,III ... IX,X,XI ... (~3999)", range:[1,3999], system:"additive", pad:" ", symbols:[1000,"M",900,"CM",500,"D",400,"CD",100,"C",90,"XC",50,"L",40,"XL",10,"X",9,"IX",5,"V",4,"IV",1,"I"]} /* system:"kanji" の例 */ ,"daiji":{label:"壱,拾,百", text:"壱,弐,参 ... 九,拾,拾壱 ...", system:"kanji", pad:" ", zero:"零", symbols:[["","壱","弐","参","四","五","六","七","八","九"],["","拾","百","千"],["","万","億","兆"]]} </source> <pre> ,"スタイル名":{label:"形式表示", text:"表示文", range:[下限値,上限値], system:"生成方式", pad:"桁埋", zero:"ゼロの表現", symbols:配列} </pre> ; label : 形式表示。メニューの「形式: ○○○」の ○○○ 部分に使用されます。 ; text : 表示文。<code>%{style.text}</code> で表示される文章。 ; range : 生成できる連番の範囲。範囲を超えると算用数字の連番に移行します。 ; pad : スタイル既定の桁埋め文字。 ; zero : ゼロの表現。省略するとゼロ非対応とみなし、算用数字の <code>0</code> を出力します。 ; system, symbols :{|class="wikitable" ! system !! 説明・例示 |- | numeric || 位取り記数法式の連番を生成します。<br><code>symbols:["0","1","2"]</code> → 1, 2, 10, 11, 12, 20, 21 ...<br><code>symbols:["a","b","c"]</code> → b, c, ba, bb, bc, ca, cb ... |- | alphabetic || アルファベット式の連番を生成します。<br><code>symbols:["a","b","c"]</code> → a, b, c, aa, ab, ac, ba ...<br><code>symbols:["0","1","2"]</code> → 0, 1, 2, 00, 01, 02, 10 ... |- | cyclic || 巡回する連番を生成します。<br><code>symbols:["a","b","c"]</code> → a, b, c, a, b, c, a ... |- | symbolic || 段々重ねとなる連番を生成します。<br><code>symbols:["a","b","c"]</code> → a, b, c, aa, bb, cc, aaa ... |- | additive || ローマ数字式の連番を生成します。 |- | kanji || 漢数字式の連番を生成します。 |}
編集内容の要約:
MeryWikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MeryWiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の数式を計算してその答えを欄に入力してください (
ヘルプ
):
いちたすには =
編集を中止
編集の仕方
(新しいウィンドウで開きます)
スポンサーリンク
案内メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
スポンサーリンク
スポンサーリンク
案内
メインページ
ヘルプ
よくある質問
マクロリファレンス
マクロライブラリ
プラグインライブラリ
構文ファイル
テーマ
寄付・開発支援
練習用ページ
開発室
開発者のブログ
ツール
スポンサーリンク