いっぺんに範囲指定して、半角数字に変換したい場合、どうすれば良いでしょうか?

いっぺんに範囲指定して、半角数字に変換したい場合、どうすれば良いでしょうか?

MacBook Pro 13″, macOS 11.1

投稿日 2021/01/19 17:31

返信
スレッドに付いたマーク ランキングトップの返信

投稿日 2021/01/19 20:02

Mojave や High Sierra だと、システム環境設定の「キーボード > ショートカット > サービス」に「テキストを半角に変換」があります。Big Sur は未導入なので確認できませんが、ありませんかね?


もし「テキストを半角に変換」があるなら、システム環境設定で有効にした上で、テキストを選択 > 右クリック > テキストを半角に変換、、、としてみてはどうでしょうか。また、サービスの各項目にはキーボードショートカットを割り当てることもできるので、独自の設定をするのも良いかと。


返信: 5
スレッドに付いたマーク ランキングトップの返信

2021/01/19 20:02 賢一113 への返信

Mojave や High Sierra だと、システム環境設定の「キーボード > ショートカット > サービス」に「テキストを半角に変換」があります。Big Sur は未導入なので確認できませんが、ありませんかね?


もし「テキストを半角に変換」があるなら、システム環境設定で有効にした上で、テキストを選択 > 右クリック > テキストを半角に変換、、、としてみてはどうでしょうか。また、サービスの各項目にはキーボードショートカットを割り当てることもできるので、独自の設定をするのも良いかと。


2021/01/19 22:17 Hiro__S への返信

「テキストを半角に変換」は結構よくできていて、リッチテキストも文字色等を保持しつつ変換してくれます。同様のことを自作の Automator クイックアクションでやるのは難しいです。というか、おそらく正規のやり方ではできません。


リッチテキストではなく、標準テキストで良ければこんな感じの Automator クイックアクションでいけそうです。リッチテキストに対して適用すると文字色等の情報はなくなってしまうので要注意。「テキストを半角に変換」の方が使い勝手が良いかもしれませんが...、一応、ご参考まで。



ーーーーー


'use strict';

function run(argv) {
    return argv[0].replace(/[\uFF10-\uFF19]+/g, function(x) {
        return x.normalize('NFKC');
    });
}


ーーーーーー


追記: 上記は、選択したテキスト中の全角数字を半角数字に変換する Automator クイックアクションです。


2021/01/19 20:23 Pajerow への返信

Pajerow さんによる書き込み:

ただし、”変換したい部分だけを選択”しておかないと変換されません。
(文章全体を選択してその中の数字だけを半角に変換しようとしてもできません)


おっしゃるとおりですね。テキスト全体だと全角英字も半角になります。


このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

いっぺんに範囲指定して、半角数字に変換したい場合、どうすれば良いでしょうか?

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。