表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
5/5

なろう正規傍点対応



同じようにルビ、傍点の書式に関してエッセイを書かれている方から感想でコメントを頂き、感謝しつつ。


なろうタイプの傍点形式が本来、正規であるとのことでそっちのプログラムも作ってみました。

大きな理由としては、半角等の対応とのことで。ウチの想定では半角は使用しない前提だったので、前回のやりかたでも特に問題はないですが。確かに、半角が混ざるとズレそうな感じ。


ってことで、表示差異確認しつつ、なろう正規Verの変換プログラムソースなど。


元 :これがぼうてんだ

簡易:これがぼうてんだ(▽▽▽▽▽▽▽▽)

正規:()()()()()()()()


元 :これが ぼうTenだ

簡易:これが ぼうTenだ(▽▽▽▽▽▽▽▽▽▽)

正規:()()() ()()()T()e()n()()


元 :これがBou-Tenだ

簡易:|これがBou-Tenだ《▽▽▽▽▽▽▽▽▽▽▽》

正規:()()()B()o()u()-()T()e()n()()


これで見ると、やっぱり半角、スペース交じりだと簡易タイプは対応しきれない感じだねえ。

あと、正規版でも、半角スペースが混ざるとちょっと変w ここは後日対応かなぁ


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ここから

# クリップボードにコピーした文字列に、カクヨム&小説家になろうで表示できる傍点を付加してクリップボードに返すプログラムです。

SET Mt_Flag TO 0

LOOP WHILE (Mt_Flag) = (0)

# クリップボードからコピーした文字列と、その文字数を取得します。

Clipboard.GetText Text=> ClipboardText

SET Text_Length TO ClipboardText.Length

# 傍点の基本フォーマット(ルビ機能)を準備します

SET Default_Format TO $'''テキスト(おきかえもじ)'''

# ※上記が傍点のフォーマットになるため、 /をパイプに、<<と>>をルビのコマンドに置き換えて下さい。

# ルビとして振る 記号 の一覧を準備します。 デフォルトは『・』(中黒)です。任意に異なる記号を選択できます。

Variables.CreateNewList List=> List

SET Default_Bouten TO $'''・●ヽ△▲▽▼◇◆□■'''

SET Counter TO 0

LOOP WHILE (Counter) < (Default_Bouten.Length)

Variables.AddItemToList Item: Default_Bouten[Counter] List: List

Variables.IncreaseVariable Value: Counter IncrementValue: 1

END

Display.SelectFromListDialog.SelectFromList Title: $'''傍点を選ぼう!  傍点の種類を選んで下さい''' Message: $'''対象【%ClipboardText%】''' List: List IsTopMost: True AllowEmpty: False SelectedItem=> SelectedItem SelectedIndex=> SelectedIndex ButtonPressed=> ButtonPressed

# コピーした文字列=傍点を付けたい文字列の文字数分、傍点記号を複製して文字数をあわせます。

SET Counter TO 0

SET Bouten TO SelectedItem

# 傍点ルビのフォーマットに、コピーした文字列の中の一文字と、作成した傍点記号の文字列をセットします。

SET Formated_Text TO NULL

LOOP WHILE (Counter) < (ClipboardText.Length)

Text.Replace Text: Default_Format TextToFind: $'''テキスト''' IsRegEx: False IgnoreCase: False ReplaceWith: ClipboardText[Counter] ActivateEscapeSequences: False Result=> Replaced

Text.Replace Text: Replaced TextToFind: $'''おきかえもじ''' IsRegEx: False IgnoreCase: False ReplaceWith: Bouten ActivateEscapeSequences: False Result=> Replaced

SET Formated_Text TO $'''%Formated_Text%%Replaced%'''

Variables.IncreaseVariable Value: Counter IncrementValue: 1

END

# 出来上がったテキストをクリップボードに逆コピーします。

Clipboard.SetText Text: Formated_Text

Display.ShowMessageDialog.ShowMessage Title: $'''傍点のフォーマットを完了。以下のテキストをクリップボードにコピー済み''' Message: $'''%Formated_Text%

※OKを押すと、次のクリップボードを処理します。キャンセルで終了します''' Icon: Display.Icon.Information Buttons: Display.Buttons.OKCancel DefaultButton: Display.DefaultButton.Button1 IsTopMost: False ButtonPressed=> ButtonPressed2

IF ButtonPressed2 = $'''Cancel''' THEN

# キャンセルボタンを押した場合、プログラムを終了します。OKボタンの場合、ループの最初に戻って処理を繰り返します。

SET Mt_Flag TO 99

END

END

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ここまで


取り急ぎ、以上!

評価をするにはログインしてください。
この作品をシェア
Twitter LINEで送る
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ