【解決!!】「IME-オン/オフの切り替え」と「半角/全角キーを押すこと」は同じなのか
私のパソコンのキーボード配列の前提
以前使っていたPCでは右下にCtrlキーやaltキーがあったのですが
新しいPCに買い替えてからは

上画像のようなキーボード配置で
スペースキー→変換キー→アプリケーションキー→かなキー
の順序でした。Ctrlキーやaltキーが右下になかったのです。
ちなみに本記事は

【さよならCaps Lock】CtrlとShiftとaltをキー変更で増やしたら作業効率が跳ね上がりました
使っていたパソコンが寿命を迎えるくらい頑張ってくれていたのですが さすがに限界だったのでパソコンを購入しました。 詳しくは→厳選物販の中である通りですが、和順商事株式会社というところの製品を買いました。 この商品を注文したすぐあとに という...
の補足兼続き記事なのですが、
このリンクにある操作により
スペースキー→変換キー→アプリケーションキー→かなキー
が、
スペースキー→ctrlキー→Shiftキー→altキー
の順序に生まれ変わりました。

ここで一段落してもよかったのですが、
私はよく文章を書くので
「半角全角の切り替えもこの近くに作れないかなー」
と調べてみると「IME」なるものに行き着いたわけです。
IMEとはInput Method Engine(Editer)
の略称で、キーボードからの入力内容とその変換に関わるものです。
IMEは大きなくくりで、有名どころで言えば
「Google 日本語入力」を挙げればわかる方も多いのではないでしょうか?
インターネット上では「IME」という時「MS-IME」を指していたり
半角全角について調べていたのに「IME」という言葉に出会ったりして
「IME-オン/オフの切り替え」って結局何を指すのか?
という状態になる方が多いのではないかと個人的に思いました。
「IME-オン/オフの切り替え」と「半角全角の切り替え」を理解するために
最初に結論から言えば、
「IME-オン/オフの切り替え」と「半角全角の切り替え」と同じと考えてよいです。
→IMEとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
IT用語について、いつもこちらのサイトが納得しやすく大変お世話になっています。
ということで、IME全般、概要についてはこちらに丸投げします。
ふんわりとわかったところで、次へ進みます。
MS-IMEとは何か?そしてIMEの役割を理解する
IMEの雰囲気をつかめたところで、
何度か出てきている「MS-IME」について確認します。
「MS-IME」とは「Microsoft-IME」のことで、
Windows10における日本語入力システム(ソフト)のことです。
「日本語で文字入力できるのはIMEによってキー入力を日本語に変換してくれる機能があるから」
という表現をたくさん見かけましたが、
(わかる人にはわかるのかもしれないけれども)
少なくとも私は、何かうまく丸め込まれた気がして腑に落ちていませんでした。
よく考え続けた結果納得しましたので
「私だったらこう表現する」というものを紹介するために以下にある準備部分から解説します。
私たちがキーを押すことで
「どういう役割を実行するか」がIMEによって定められていればその結果を実行できます。
IMEにおいて
キー「A」→「a」実行
キー「O」→「o」実行
と定義されていると、
「A」「O」とキーを押すことで「ao」と実行されます。
もし、
キー「A」→設定なし
キー「O」→「o」実行
と定義されていると、
「A」「O」とキーを押すことで「o」と実行されます。
IME-オン/オフとは何か
実際に「IMEオン」のみの機能と「IMEオフ」のみの機能を設定して、その設定したキーを押すと、
IMEオンでは画面真ん中に「あ」とでてきて「ローマ字入力できる状態」となり、
IMEオフでは画面真ん中に「A」とでてきて「英数字入力できる状態」となりました。
つまり、この「あ」や「A」を見て現在のMS-IMEの状態がどちらかわかるということです。
半角全角キーを押すときの反応
こちらはおそらく大多数の人が普通に行っている操作のことで、
キーボード左上に位置する
「半角/全角 漢字」などと書かれているキーを押したときの動作についてです。
皆さんおなじみのように
(最初に英数字入力の場合)1回押すと「ローマ字入力」ができる状態になり、
もう一度押すと「英数字入力」ができる状態に戻ります。
「半角/全角キーを押すこと」と「IME-オン/オフの切り替え」との関係
上でそれぞれの挙動を確認したように
「ローマ字入力できる状態」と「英数字入力できる状態」という意味で
「半角/全角キーを押すこと」と「IME-オン/オフの切り替え」は同じでした。
いやまぁ、直観的にはわかっていたのですがどうも理解しにくかったので。
別記事で紹介する、本題でも扱う「Microsoft IMEの設定」とにらめっこし、
「IME?」「全角?」「半角?」「文字入力?」「入力方式?」と考えていたらつながりました。
そして最終的には上の方で出した
「日本語で文字入力できるのはIMEによってキー入力を日本語に変換してくれる機能があるから」
という文章の意味が理解できました。
そもそも、この文を見て私は
「日本語で文字入力って書いているけれども、
普通の人はローマ字入力すると思うけどそのことをいっているのだろうか?
それとも日本語って書いているしかな入力の話か?」
などと考えていましたし、
IMEの役割・概念と「半角全角キー」をよく理解できていない状態で読み
混同してしまい、混同から混乱へと陥っていました。
結論を言えば文章として特段間違えているところはなく、この文面通りの意味であっています。
あえてもう少し
「日本語で文字入力できるのはIMEによってキー入力を日本語に変換してくれる機能があるから」
を明確に補足しながら説明するとしたら、
「例えば、Windows10でローマ字入力ができるのは
MS-IMEでキーボード上の表記されたアルファベットと
入力として実行される文字が一致しているので、
IMEオンつまり、全角入力の時には”ローマ字の組が生成されたとき”に”かな”の入力ができる。
また、MS-IMEの設定次第では、キーボード上の表記されたアルファベットに対応して
”かな”を決めておけばキーを押すだけで対応した”かな入力”ができる。」
という説明になります。
つまり、前半部分の「日本語で文字入力できるのは」という意味は
ローマ字入力ととらえても、かな入力ととらえてもその本質を理解していれば
成り立つ説明だったということです。
余談:半角と全角とはそもそも何?半角変換と半角入力は別物か
PC上の表現文字について、とても簡単に説明すると
縦:横=1:1 が全角
縦:横=1:0.5(つまり、縦:横=2:1) が半角
となります。
小学校1年生の時にひらがなの練習で使った1マスが4分割されたマスで例えると、
全角はマス目一杯に1文字を使い、
半角は4分割されたうちの左上と左下の小さな2マス
(つまり元の1マスの左領域)に1文字を描く入力方法となります。
※実際には、文字幅は調節されていますので目安です。
また、「半角変換」と「半角入力」は別物としてわけて考えた方が混乱せずに済みます。
言われてみれば当たり前の人も多いかと思いますが、ここで割愛してしまうと
中にはどこが原因でわからなくなったかがわからないという状態に陥る可能性があります。
半角”「変換」”なのであくまで変換を指しています。
普通にひらがなから漢字を表記させたいときスペースキーをおして変換するはずですが、
スペースキーの代わりに「F7」を押してみてください。
カタカナに変換できますので「カタカナ変換」です。
ちなみにCtrl+Iでもカタカナ変換できます。
私はCtrlキーを増やしてからは
もっぱらこちらを使うようになりました。
→【さよならCaps Lock】CtrlとShiftとaltをキー変更で増やしたら作業効率が跳ね上がりました
そしてスペースキーの代わりに「F8」を押すと半角に変換できます。
これが「半角変換」に当たるものです。
ちなみにCtrl+Oでも半角変換できます。
そして「半角入力」は普段皆さんがキーボード左上にある「半角/全角」キーを押す操作でできます。
半角入力を「半角入力モード」ととらえるとよいでしょう。
半角入力モード中ではキーはすべて半角で入力されます。
全角も考え方は同じです。
改めて、今後半角・全角とIME-オン/オフを調べる方が混乱しないようまとめ
半角入力(モード)と半角変換は違います。
全角入力(モード)と全角変換は違います。
IMEオンのみ、オフのみの機能を与えたキーを用意した結果は以下のようになります。
IMEオンでは画面真ん中に「あ」とでてきて「ローマ字入力できる状態」です。
IMEオフでは画面真ん中に「A」とでてきて「英数字入力できる状態」です。
半角全角キーを押すと
「ローマ字入力できる状態」と「英数字入力できる状態」両方を切り替えられます。
そしてIMEの基本の意味は
キーボード上の表記されたアルファベットと入力として実行される文字が一致している、
もっと言うと、
キーボード上のキーと対応して「定義された情報」がPC上で実行されるということです。
ここまで見てわかるように、
IMEでは「Aが書かれたキー」を押すから「A」が出力されるのではなく、
「Aが書かれたキー」が”「A」出力”と定義されていて、
そこが押されるので「A」が出力されるのです。
つまり、「半角全角キーを押すから半角(全角)入力モードになる」のではなく
「半角/全角キーと表記されている左上のキー」が
「IME-オン/オフ」の役割として定義されているのでオンにもオフにもできるというのが正しい
です。
上ではIMEについて
IMEオンでは画面真ん中に「あ」とでてきて「ローマ字入力できる状態」です。
IMEオフでは画面真ん中に「A」とでてきて「英数字入力できる状態」です。
と表記しましたが、
IMEオン=全角入力モード
IMEオフ=半角入力モード
のことだとわかれば、ローマ字入力や英数字入力できる状態と一致するでしょう。
だからそもそも「ローマ字入力」「英数字入力」ととらえていた人は混乱しやすいといえるし、
逆に「半角入力」「全角入力」と言い慣れていた人であれば混乱しにくいとも言えます。
私は普段前者だったので後者の視点が抜け落ちていて理解に苦しみました。
結論、「半角全角キーを押すこと」と「IME-オン/オフ」は同じです。
その理由は「IME-オン/オフ」を言い換えれば一目瞭然で、
「全角入力オン/全角入力オフ(半角入力)」だからです。
もっと本質に目を向けるのであれば
キーボードは本来まっさらで表記されていないと考えると誤解は生じにくいでしょう。
IMEの定義によって各キーに役割が与えれていて、それを我々使用者がわかるように
キーに名前が付けられる(A,B,C,半角/全角など)。
そして、今度は使用者が印字された「半角全角キー」を押すと
もともと当然に定義された「IME-オン/オフ」が発動されるという流れになります。
以下はIME関連で「半角全角キー」をスペースキーの右隣に増設した記事です。

【増殖必至】半角全角を変換するためにIMEの切り替え場所を増やしてみました
この記事の内容を簡単に言うと、 キーボードの左上にある「半角/全角キー」をスペースキーの辺りに増やす ことで作業効率を上げようというものです。 もちろん慣れるまでには時間がかかりますが ホームポジションにおいて、 左手の小指で遠い位置にある...
error:Content is protected !!
"+t+"<\/script"+">"},p=function(t){t.write(d("")),t.close();var e=t.parentWindow.Object;return t=null,e},h=function(){try{n=new ActiveXObject("htmlfile")}catch(t){}var t,e;h="undefined"!=typeof document?document.domain&&n?p(n):((e=s("iframe")).style.display="none",u.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(d("document.F=Object")),t.close(),t.F):p(n);for(var r=a.length;r--;)delete h.prototype[a[r]];return h()};c[l]=!0,t.exports=Object.create||function(t,e){var r;return null!==t?(f.prototype=o(t),r=new f,f.prototype=null,r[l]=t):r=h(),void 0===e?r:i.f(r,e)}},6048:(t,e,r)=>{var n=r(9781),o=r(3353),i=r(3070),a=r(9670),c=r(5656),u=r(1956);e.f=n&&!o?Object.defineProperties:function(t,e){a(t);for(var r,n=c(e),o=u(e),s=o.length,l=0;s>l;)i.f(t,r=o[l++],n[r]);return t}},3070:(t,e,r)=>{var n=r(9781),o=r(4664),i=r(3353),a=r(9670),c=r(4948),u=TypeError,s=Object.defineProperty,l=Object.getOwnPropertyDescriptor;e.f=n?i?function(t,e,r){if(a(t),e=c(e),a(r),"function"==typeof t&&"prototype"===e&&"value"in r&&"writable"in r&&!r.writable){var n=l(t,e);n&&n.writable&&(t[e]=r.value,r={configurable:"configurable"in r?r.configurable:n.configurable,enumerable:"enumerable"in r?r.enumerable:n.enumerable,writable:!1})}return s(t,e,r)}:s:function(t,e,r){if(a(t),e=c(e),a(r),o)try{return s(t,e,r)}catch(t){}if("get"in r||"set"in r)throw u("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},1236:(t,e,r)=>{var n=r(9781),o=r(6916),i=r(5296),a=r(9114),c=r(5656),u=r(4948),s=r(2597),l=r(4664),f=Object.getOwnPropertyDescriptor;e.f=n?f:function(t,e){if(t=c(t),e=u(e),l)try{return f(t,e)}catch(t){}if(s(t,e))return a(!o(i.f,t,e),t[e])}},1156:(t,e,r)=>{var n=r(4326),o=r(5656),i=r(8006).f,a=r(1589),c="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return c&&"Window"==n(t)?function(t){try{return i(t)}catch(t){return a(c)}}(t):i(o(t))}},8006:(t,e,r)=>{var n=r(6324),o=r(748).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return n(t,o)}},5181:(t,e)=>{e.f=Object.getOwnPropertySymbols},9518:(t,e,r)=>{var n=r(2597),o=r(614),i=r(7908),a=r(6200),c=r(8544),u=a("IE_PROTO"),s=Object,l=s.prototype;t.exports=c?s.getPrototypeOf:function(t){var e=i(t);if(n(e,u))return e[u];var r=e.constructor;return o(r)&&e instanceof r?r.prototype:e instanceof s?l:null}},2050:(t,e,r)=>{var n=r(7293),o=r(111),i=r(4326),a=r(7556),c=Object.isExtensible,u=n((function(){c(1)}));t.exports=u||a?function(t){return!!o(t)&&(!a||"ArrayBuffer"!=i(t))&&(!c||c(t))}:c},7976:(t,e,r)=>{var n=r(1702);t.exports=n({}.isPrototypeOf)},6324:(t,e,r)=>{var n=r(1702),o=r(2597),i=r(5656),a=r(1318).indexOf,c=r(3501),u=n([].push);t.exports=function(t,e){var r,n=i(t),s=0,l=[];for(r in n)!o(c,r)&&o(n,r)&&u(l,r);for(;e.length>s;)o(n,r=e[s++])&&(~a(l,r)||u(l,r));return l}},1956:(t,e,r)=>{var n=r(6324),o=r(748);t.exports=Object.keys||function(t){return n(t,o)}},5296:(t,e)=>{"use strict";var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!r.call({1:2},1);e.f=o?function(t){var e=n(this,t);return!!e&&e.enumerable}:r},7674:(t,e,r)=>{var n=r(1702),o=r(9670),i=r(6077);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=n(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return o(r),i(n),e?t(r,n):r.__proto__=n,r}}():void 0)},4699:(t,e,r)=>{var n=r(9781),o=r(1702),i=r(1956),a=r(5656),c=o(r(5296).f),u=o([].push),s=function(t){return function(e){for(var r,o=a(e),s=i(o),l=s.length,f=0,d=[];l>f;)r=s[f++],n&&!c(o,r)||u(d,t?[r,o[r]]:o[r]);return d}};t.exports={entries:s(!0),values:s(!1)}},288:(t,e,r)=>{"use strict";var n=r(1694),o=r(648);t.exports=n?{}.toString:function(){return"[object "+o(this)+"]"}},2140:(t,e,r)=>{var n=r(6916),o=r(614),i=r(111),a=TypeError;t.exports=function(t,e){var r,c;if("string"===e&&o(r=t.toString)&&!i(c=n(r,t)))return c;if(o(r=t.valueOf)&&!i(c=n(r,t)))return c;if("string"!==e&&o(r=t.toString)&&!i(c=n(r,t)))return c;throw a("Can't convert object to primitive value")}},3887:(t,e,r)=>{var n=r(5005),o=r(1702),i=r(8006),a=r(5181),c=r(9670),u=o([].concat);t.exports=n("Reflect","ownKeys")||function(t){var e=i.f(c(t)),r=a.f;return r?u(e,r(t)):e}},857:(t,e,r)=>{var n=r(7854);t.exports=n},2534:t=>{t.exports=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}}},3702:(t,e,r)=>{var n=r(7854),o=r(2492),i=r(614),a=r(4705),c=r(2788),u=r(5112),s=r(7871),l=r(3823),f=r(1913),d=r(7392),p=o&&o.prototype,h=u("species"),y=!1,v=i(n.PromiseRejectionEvent),m=a("Promise",(function(){var t=c(o),e=t!==String(o);if(!e&&66===d)return!0;if(f&&(!p.catch||!p.finally))return!0;if(!d||d<51||!/native code/.test(t)){var r=new o((function(t){t(1)})),n=function(t){t((function(){}),(function(){}))};if((r.constructor={})[h]=n,!(y=r.then((function(){}))instanceof n))return!0}return!e&&(s||l)&&!v}));t.exports={CONSTRUCTOR:m,REJECTION_EVENT:v,SUBCLASSING:y}},2492:(t,e,r)=>{var n=r(7854);t.exports=n.Promise},9478:(t,e,r)=>{var n=r(9670),o=r(111),i=r(8523);t.exports=function(t,e){if(n(t),o(e)&&e.constructor===t)return e;var r=i.f(t);return(0,r.resolve)(e),r.promise}},612:(t,e,r)=>{var n=r(2492),o=r(7072),i=r(3702).CONSTRUCTOR;t.exports=i||!o((function(t){n.all(t).then(void 0,(function(){}))}))},2626:(t,e,r)=>{var n=r(3070).f;t.exports=function(t,e,r){r in t||n(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})}},8572:t=>{var e=function(){this.head=null,this.tail=null};e.prototype={add:function(t){var e={item:t,next:null};this.head?this.tail.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t)return this.head=t.next,this.tail===t&&(this.tail=null),t.item}},t.exports=e},7651:(t,e,r)=>{var n=r(6916),o=r(9670),i=r(614),a=r(4326),c=r(2261),u=TypeError;t.exports=function(t,e){var r=t.exec;if(i(r)){var s=n(r,t,e);return null!==s&&o(s),s}if("RegExp"===a(t))return n(c,t,e);throw u("RegExp#exec called on incompatible receiver")}},2261:(t,e,r)=>{"use strict";var n,o,i=r(6916),a=r(1702),c=r(1340),u=r(7066),s=r(2999),l=r(2309),f=r(30),d=r(9909).get,p=r(9441),h=r(7168),y=l("native-string-replace",String.prototype.replace),v=RegExp.prototype.exec,m=v,g=a("".charAt),b=a("".indexOf),w=a("".replace),x=a("".slice),S=(o=/b*/g,i(v,n=/a/,"a"),i(v,o,"a"),0!==n.lastIndex||0!==o.lastIndex),_=s.BROKEN_CARET,j=void 0!==/()??/.exec("")[1];(S||j||_||p||h)&&(m=function(t){var e,r,n,o,a,s,l,p=this,h=d(p),O=c(t),P=h.raw;if(P)return P.lastIndex=p.lastIndex,e=i(m,P,O),p.lastIndex=P.lastIndex,e;var E=h.groups,k=_&&p.sticky,C=i(u,p),A=p.source,T=0,L=O;if(k&&(C=w(C,"y",""),-1===b(C,"g")&&(C+="g"),L=x(O,p.lastIndex),p.lastIndex>0&&(!p.multiline||p.multiline&&"\n"!==g(O,p.lastIndex-1))&&(A="(?: "+A+")",L=" "+L,T++),r=new RegExp("^(?:"+A+")",C)),j&&(r=new RegExp("^"+A+"$(?!\\s)",C)),S&&(n=p.lastIndex),o=i(v,k?r:p,L),k?o?(o.input=x(o.input,T),o[0]=x(o[0],T),o.index=p.lastIndex,p.lastIndex+=o[0].length):p.lastIndex=0:S&&o&&(p.lastIndex=p.global?o.index+o[0].length:n),j&&o&&o.length>1&&i(y,o[0],r,(function(){for(a=1;a
{"use strict";var n=r(9670);t.exports=function(){var t=n(this),e="";return t.hasIndices&&(e+="d"),t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.unicodeSets&&(e+="v"),t.sticky&&(e+="y"),e}},4706:(t,e,r)=>{var n=r(6916),o=r(2597),i=r(7976),a=r(7066),c=RegExp.prototype;t.exports=function(t){var e=t.flags;return void 0!==e||"flags"in c||o(t,"flags")||!i(c,t)?e:n(a,t)}},2999:(t,e,r)=>{var n=r(7293),o=r(7854).RegExp,i=n((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),a=i||n((function(){return!o("a","y").sticky})),c=i||n((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}));t.exports={BROKEN_CARET:c,MISSED_STICKY:a,UNSUPPORTED_Y:i}},9441:(t,e,r)=>{var n=r(7293),o=r(7854).RegExp;t.exports=n((function(){var t=o(".","s");return!(t.dotAll&&t.exec("\n")&&"s"===t.flags)}))},7168:(t,e,r)=>{var n=r(7293),o=r(7854).RegExp;t.exports=n((function(){var t=o("(?b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$c")}))},4488:(t,e,r)=>{var n=r(8554),o=TypeError;t.exports=function(t){if(n(t))throw o("Can't call method on "+t);return t}},1150:t=>{t.exports=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}},6340:(t,e,r)=>{"use strict";var n=r(5005),o=r(3070),i=r(5112),a=r(9781),c=i("species");t.exports=function(t){var e=n(t),r=o.f;a&&e&&!e[c]&&r(e,c,{configurable:!0,get:function(){return this}})}},8003:(t,e,r)=>{var n=r(3070).f,o=r(2597),i=r(5112)("toStringTag");t.exports=function(t,e,r){t&&!r&&(t=t.prototype),t&&!o(t,i)&&n(t,i,{configurable:!0,value:e})}},6200:(t,e,r)=>{var n=r(2309),o=r(9711),i=n("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},5465:(t,e,r)=>{var n=r(7854),o=r(3072),i="__core-js_shared__",a=n[i]||o(i,{});t.exports=a},2309:(t,e,r)=>{var n=r(1913),o=r(5465);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.25.0",mode:n?"pure":"global",copyright:"© 2014-2022 Denis Pushkarev(zloirock.ru)",license:"https:タイトルとURLをコピーしました