膝の上のスクリプト-Tame Klipperパート1

エドワード・シザーハンズ
KDEが好きな理由の1つは、システムトレイにある小さなはさみのアイコンです。これは、klipperが実行されており、すでに動作していることを示しています。

klipperの主なタスクは、クリップボードの履歴を記憶し、クリップボードをナビゲートできるようにすることです。 したがって、 Ctrl + Cを押して複数の情報をクリップボードにコピーした場合でも、履歴で選択してCtrl + Vを押すと、いつでもそれらのいずれかを貼り付けることができます

しかし、この控えめな外観のクリップボード制御プログラムが猫の下で本当に知っていることを知ることができます。



klipperでは、標準機能に加えて、bashスクリプトを使用して機能を拡張できます。つまり、バッファーのコンテンツでできることは、想像力によってのみ制限されます。

最も有用な拡張機能のいくつかのみを検討します。 そのうちのいくつかは(より普遍的な形式であっても)habrahabrで見つけることができるとすぐに言わなければなりませんが、最初はklipperで簡単に見えます。次に、新しい興味深いトリックを紹介します。 したがって、klipper用の適切なスクリプトを選択できます。

klipperの便利なスクリプトのセット

Kateで選択したテキストを編集する

例として、非常に単純なタスクを取り上げます。選択したテキストは、高度なテキストエディタケイトで編集する必要があります。

はじめに-klipperアイコンをクリックし、対応するボックスをチェックしてクリップボードアクションを有効にします。

次に、「アクション」タブのklipper設定で、すべてのチェックボックスをオフにして、新しいアクションを追加します。 アクションプロパティでは、テキストに対してアクションを実行するため、正規表現のフィールドは空のままにします。 「自動」チェックボックスをオフにして、klipperがkateのバッファーのテキストを編集することを提供しないようにします。 「編集」と呼びます

次-コマンドを追加します。

「ケイトで編集」と呼びましょう。 コマンドの出力を無視するため、ドロップダウンメニューで対応する項目を選択します。 そして最後に、 %sとして示されるクリップボードの内容をkateテキストエディターに転送するコマンド自体を紹介しましょう。
 echo -n %s | kate -i -l 1 -c 1 

ここで、 -nテキストの最後の新しい日付の出力を抑制するために使用され、 -iは標準入力からデータを読み取るために使用され、 -l 1-c 1はカーソル位置を示します。

したがって、任意のテキストをバッファーにコピーし、 Ctrl + Alt + R押すと(デフォルトの組み合わせはより便利なものに変更できます)、klipperアクションメニューが表示されます

必要なアイテムを選択した後-kateで編集すると、選択したテキストを含むテキストエディターウィンドウが表示されます。

リンクアクション

テキスト内のリンクに遭遇した場合、多くの場合、それをクリックするか、このリンクが指すファイルをダウンロードする必要があります。 これらのアクションを容易にするために、Linkと呼ばれるklipperで新しいアクションを作成します。 このアクションはリンクでのみ使用できるようにする必要があります。そのため、正規表現を作成します(あまり気にしませんでしたが、より適切に記述できると確信しています)
[htf]*p[s]*:\/\/.*

このアクションの自動実行をオフにします。

次に-2つのチームを追加します。 1つ目-リンクをたどり、2つ目-ファイルをダウンロードします。 どちらの場合も、コマンドの出力を無視し、明確な説明を提供します。

Firefoxの新しいタブでリンクを開きます
 firefox -new-tab %s 

wgetを使用してファイルを取得する
 wget -qcP ~/ %s 

後者の場合、kdialogを使用してダウンロードの終了に関する通知を追加すると便利です。
 wget -qcP ~/ %s; kdialog --title "Download completed" --passivepopup "Downloaded file $(echo %s | grep -o "[^\/]*" | tail -n 1)" 2 

ただし、この場合、ファイルが正常にアップロードされたかどうかを手動で確認する必要があります。 スクリプトのより精巧で完全なバージョン(それでも1行で記述しない方がよい)へのリンクは、記事の最後に記載されています。

レイアウトの問題を修正

「Ghbdtn! Rfr ltkf& ''-これらの言葉はおそらく誰もがよく知っているものであり、もしあなたがタッチタイピングの方法を学び、xneurをインストールするか、少なくともウィンドウレベルでレイアウトを管理できるなら、他の人から自分を救う機会はありません。 Klipperはこの問題を再び解決します。

任意のテキストに適し、手動で起動されるトランスコードと呼ばれるアクションを作成します。 このアクションに2つのコマンドを追加します-英語からロシア語へ、またはその逆へのトランスコーディング。 これらのコマンドに意味のある説明を付け、「コマンド出力」フィールドの値を「クリップボードにコピー」に設定します。 チーム自体がフォームを持っています
 echo -n %s | sed "y/qwerty//" 

ここで、sedはqwerty文字をytsukenに置き換えます(コマンドのフルバージョンへのリンクは記事の最後にあります)。

語彙

論文を書くとき、記事を英語からウクライナ語に、またはその逆に翻訳しなければならないことがよくあります。 また、テキスト全体が非常にスムーズに翻訳されている場合、個々の単語では適切な同義語を探して自分自身を苦しめることがあります。 Klipperは、この困難な作業を支援してくれます。

ホームフォルダーにスクリプトディレクトリを作成し、そこにdict_en_ru.shファイルを書き換えます(リンクは記事の最後にあります)。 klipperで、新しいアクションを作成し、それを辞書と呼びます。 正規表現のフィールドを空のままにして、「自動」ボックスのチェックを外します。 次に、新しいチームを追加して、それを「英語からロシア語に単語を翻訳」と呼びます。 前の例のように、コマンドの出力はクリップボードにコピーされます。 コマンド自体は、スクリプトの起動にすぎません。
 bash ~/scripts/dict_en_ru.sh %s 


翻訳の逆方向に対して同様のアクションを実行します(必要に応じて、スクリプトのFROM_LANGおよびTO_LANG変数を編集し、翻訳言語を変更します)

以下はスクリプトの説明です


これは見た目です


さて、今日は以上です。 次回、klipperに新しいトリックを教えます。もしそれが気に入ったら、KDEでスクリプトテーマを開発し続けます。

スクリプトリンク
download.sh
transcode_ru_en.sh
transcode_en_ru.sh
dict_ru_en.sh
dict_en_ru.sh

美しい膝を探し、スクリプトを書き、私たちと一緒にいてください!

Source: https://habr.com/ru/post/J146587/


All Articles