キーバインディングを使用して、GUIテキストの選択を「大文字」、「小文字」、または「テキストケース」から目的の大文字と小文字に変換します。

キーバインディングを使用して、GUIテキストの選択を「大文字」、「小文字」、または「テキストケース」から目的の大文字と小文字に変換します。

私はOpenboxウィンドウマネージャとbashでArch Linuxを使用します。
すべてのコンテンツが最新バージョンに更新されました。

アプリケーションで誤った大文字と小文字を選択したテキストの大文字と小文字を変更する必要があることがよくあります。

  • フリーランス事務作家
  • Googleドキュメント
  • 編集者
  • ジェニー

たとえば、「THE BRIGHT DAY」というテキストを選択し、いくつかの簡単なキー入力/キーバインディングを介して「the Bright Day」に変更したいと思います。

以下では、必要に応じて大文字と小文字を変更するためにOpenboxキーバインディングとして呼び出される非常に簡単なコマンドラインツールを実装しました。

rc.xmlこれは、以下のようにOpenboxのキーバインディング/設定ファイルに保存されます。

######################################   
########## c-fn - key chain ##########  
######################################   


<keybind key="c-XF86WakeUp">

# change selected text to lowercase
     <keybind key="l"><action name="execute"><command>bash -c '
     clip_zz="$(echo $(xsel) | awk '\''{print tolower($0)}'\'')";
     xdotool type --clearmodifiers -- "$clip_zz"
     '</command></action></keybind>

# CHANGE SELECTED TEXT TO UPPERCASE 
     <keybind key="u"><action name="execute"><command>bash -c '
     clip_zz="$(echo $(xsel) | awk '\''{print toupper($0)}'\'')";
     xdotool type --clearmodifiers -- "$clip_zz"
     '</command></action></keybind>

# Change Selected Text To Sentence Case Like This With Each Words First Letter Being Capatalised
     <keybind key="i"><action name="execute"><command>bash -c '
     clip_zz="$(echo $(xsel) | awk '\''{print tolower($0)}'\'' | sed '\''s@\([[:lower:]]\)\([[:alnum:]]*\)@\u\1\2@g'\'')";
     xdotool type --clearmodifiers -- "$clip_zz"
     '</command></action></keybind>

</keybind>  

これは大文字から小文字に変わるときに機能しますが、xdotoolの制限のために「IT'S」を「itNs」に置き換えます。

「xclip」や「xsel」などを使ってこれをより賢く実行できるかどうか疑問に思います。

選択したテキストの大文字と小文字を変更するには、ユニバーサルキーバインディングを使用するのが非常に便利です。

関連情報