从零开始配置Rime - 2019
<p>本文是个人配置,仅供方法参考。</p>
<h3 id="步骤一---安装">步骤一 - 安装</h3>
<p>首先下载安装 Rime。</p>
<h5 id="通过官网下载安装">通过官网下载安装</h5>
<pre tabindex="0"><code>https://bintray.com/rime/squirrel/release
</code></pre><h5 id="通过-homebrew">通过 <code>Homebrew</code></h5>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">brew cask install squirrel
</span></span></code></pre></div><h3 id="步骤二---配置">步骤二 - 配置</h3>
<h4 id="东风破">东风破</h4>
<blockquote>
<p><strong>東風破</strong> 是 <a href="https://rime.im/">中州韻輸入法引擎</a> 的配置管理工具。</p>
</blockquote>
<p>克隆仓库</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">git clone --depth <span class="m">1</span> https://github.com/rime/plum.git
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> plum
</span></span></code></pre></div><p>生成配置模板</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bash rime-install prelude luna-pinyin double-pinyin
</span></span></code></pre></div><h3 id="步骤三">步骤三</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="c"># squirrel.custom.yaml</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">patch</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">us_keyboard_layout</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="w"> </span><span class="c"># 鍵盤選項:應用美式鍵盤佈局</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">show_notifications_when</span><span class="p">:</span><span class="w"> </span><span class="l">growl_is_running</span><span class="w"> </span><span class="c"># 狀態通知,默認裝有Growl時顯示,也可設爲全開(always)全關(never)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">style</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">color_scheme</span><span class="p">:</span><span class="w"> </span><span class="l">psionics</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">horizontal</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="w"> </span><span class="c"># 水平/竖直显示</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">inline_preedit</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="w"> </span><span class="c"># 非內嵌編碼行</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">border_color_width</span><span class="p">:</span><span class="w"> </span><span class="m">0</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">border_height</span><span class="p">:</span><span class="w"> </span><span class="m">6</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">border_width</span><span class="p">:</span><span class="w"> </span><span class="m">6</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">candidate_format</span><span class="p">:</span><span class="w"> </span><span class="s1">'%c %@'</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">corner_radius</span><span class="p">:</span><span class="w"> </span><span class="m">5</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">font_face</span><span class="p">:</span><span class="w"> </span><span class="l">PingFangSC</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">font_point</span><span class="p">:</span><span class="w"> </span><span class="m">16</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">hilited_corner_radius</span><span class="p">:</span><span class="w"> </span><span class="m">3</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">label_font_point</span><span class="p">:</span><span class="w"> </span><span class="m">14</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">'com.apple.Finder/ascii_mode'</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="w">
</span></span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="c"># default.custom.yaml</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 中西文切換鍵的默認設置寫在 default.yaml 裏面</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 以下的 default.custom.yaml 在全局範圍重定義該組快速鍵</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c">#</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 可用的按鍵有 Caps_Lock, Shift_L, Shift_R, Control_L, control_R</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># Mac 系統上的鼠鬚管不能區分左、右,因此只有對 Shift_L, Control_L 的設定起作用</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c">#</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 已輸入編碼時按切換鍵,可以進一步設定輸入法中西文切換的形式。</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 可選的臨時切換策略有三:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># inline_ascii 在輸入法的臨時西文編輯區內輸入字母、數字、符號、空格等,回車上屏後自動復位到中文</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># commit_text 已輸入的候選文字上屏並切換至西文輸入模式</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># commit_code 已輸入的編碼字符上屏並切換至西文輸入模式</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 設爲 noop,屏蔽該切換鍵</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c">#</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 如果要把 Caps Lock 設爲只改變字母的大小寫而不做中西文切換,可將 Caps_Lock 對應的切換方式設爲 noop</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 如果要以 Caps Lock 切換到西文模式,默認輸出小寫字母,請置 ascii_composer/good_old_caps_lock: false</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c"># 如果要以 Caps Lock 切換到西文模式,默認輸出大寫字母,請使用以下設置:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">patch</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">schema_list</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="nt">schema</span><span class="p">:</span><span class="w"> </span><span class="l">double_pinyin_flypy</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="nt">schema</span><span class="p">:</span><span class="w"> </span><span class="l">luna_pinyin_simp</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">switcher/hotkeys</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">F4</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">switcher/save_options</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">full_shape</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">ascii_punct</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">simplification</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">zh_hans</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- <span class="l">emoji_suggestion</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">menu/page_size</span><span class="p">:</span><span class="w"> </span><span class="m">8</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">ascii_composer/good_old_caps_lock</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">ascii_composer/switch_key</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">Caps_Lock</span><span class="p">:</span><span class="w"> </span><span class="l">noop</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">Shift_L</span><span class="p">:</span><span class="w"> </span><span class="l">commit_code</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">Shift_R</span><span class="p">:</span><span class="w"> </span><span class="l">commit_code</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">Control_L</span><span class="p">:</span><span class="w"> </span><span class="l">noop</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">Control_R</span><span class="p">:</span><span class="w"> </span><span class="l">noop</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="nt">key_binder/bindings</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+p', send: Up, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+n', send: Down, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+b', send: Left, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+f', send: Right, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+a', send: Home, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+e', send: End, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+d', send: Delete, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+k', send: 'Shift+Delete', when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+h', send: BackSpace, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+g', send: Escape, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+bracketleft', send: Escape, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Alt+v', send: Page_Up, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Control+v', send: Page_Down, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c"># - {accept: ISO_Left_Tab, send: "Shift+Left", when: composing}</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: 'Shift+Tab', send: Page_Up, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: Tab, send: Page_Down, when</span><span class="p">:</span><span class="w"> </span><span class="l">composing }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: minus, send: Page_Up, when</span><span class="p">:</span><span class="w"> </span><span class="l">has_menu }</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"> </span>- {<span class="w"> </span><span class="nt">accept: equal, send: Page_Down, when</span><span class="p">:</span><span class="w"> </span><span class="l">has_menu }</span><span class="w">
</span></span></span></code></pre></div><h3 id="步骤四---emoji">步骤四 - Emoji</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bash rime-install emoji
</span></span><span class="line"><span class="cl">bash rime-install emoji:customize:schema<span class="o">=</span>luna_pinyin
</span></span><span class="line"><span class="cl">bash rime-install emoji:customize:schema<span class="o">=</span>double_pinyin
</span></span></code></pre></div><h3 id="步骤五---扩充词库">步骤五 - 扩充词库</h3>
<pre tabindex="0"><code>git clone https://github.com/rime-aca/dictionaries.git
</code></pre><p>将<code>luna_pinyin.dict/</code>下的以下文件拷贝到<code>~/Library/Rime</code></p>