スクリプトコマンドは、既存の関数を上書きして新しい関数を作成できるコマンドの一種です(新しいコマンドライン引数を使用できます)。
コマンドは、スクリプト、および定義されたすべての変数と関数がスクリプトで使用可能になる前に実行されます。
アクションのタイプをスクリプトに設定することにより、コマンドダイアログでスクリプトコマンドを作成できます。
コマンドは、スクリプト、および定義されたすべての変数と関数がスクリプトで使用可能になる前に実行されます。
アクションのタイプをスクリプトに設定することにより、コマンドダイアログでスクリプトコマンドを作成できます。
次のスクリプトコマンドを追加することにより、他のスクリプトまたはコマンドライン(copyq hello)からhello()を使用できます。
複数のコマンドで使用されるコードを新しいスクリプトコマンドに移動すると便利です。
また、別のアプリケーションまたはシェルスクリプトからcopyqを使用して簡素化することもできます。
global.hello = function() { print('Hello, World!\n') }スクリプトコマンドは、copy()やadd()などのすべての関数を含むグローバルスコープに一時的な変数を追加しないように、独自のスコープで実行されます。グローバルオブジェクトを使用すると、グローバルスコープを変更できます。
複数のコマンドで使用されるコードを新しいスクリプトコマンドに移動すると便利です。
また、別のアプリケーションまたはシェルスクリプトからcopyqを使用して簡素化することもできます。
スクリプトコマンドから既存の関数をオーバーライドできます。
具体的には、onClipboardChangedとそれが呼び出す関数をオーバーライドして、新しいクリップボードコンテンツの処理をカスタマイズできます。
例:次のコマンドは、テキストクリップボードデータのみを保存し、フォーマットされたテキストを削除します。
具体的には、onClipboardChangedとそれが呼び出す関数をオーバーライドして、新しいクリップボードコンテンツの処理をカスタマイズできます。
例:次のコマンドは、テキストクリップボードデータのみを保存し、フォーマットされたテキストを削除します。
var saveData_ = saveData saveData = function() { if ( str(data(mimeText)) != "" ) { popup('Saving only text') removeData(mimeHtml) saveData_() } else { popup('Not saving non-textual data') } }例:次のコマンドではpaste()をオーバーライドして、クリップボードを貼り付けるための外部ユーティリティを使用します。
paste = function() { var x = execute( 'xdotool', 'keyup', 'alt', 'ctrl', 'shift', 'super', 'meta', 'key', 'shift+Insert') if (!x) throw 'Failed to run xdotool' if (x.stderr) throw 'Failed to run xdotool: ' + str(x.stderr) }例:クリップボードとX11選択の変更に関するカスタム通知を表示します。
function clipboardNotification(owns, hidden) { var id = isClipboard() ? 'clipboard' : 'selection' var icon = isClipboard() ? '\uf0ea' : '\uf246' var owner = owns ? 'CopyQ' : str(data(mimeWindowTitle)) var title = id + ' - ' + owner var message = hidden ? '<HIDDEN>' : data(mimeText).left(100) notification( '.id', id, '.title', title, '.message', message, '.icon', icon ) } var onClipboardChanged_ = onClipboardChanged onClipboardChanged = function() { clipboardNotification(false, false) onClipboardChanged_() } var onOwnClipboardChanged_ = onOwnClipboardChanged onOwnClipboardChanged = function() { clipboardNotification(true, false) onOwnClipboardChanged_() } var onHiddenClipboardChanged_ = onHiddenClipboardChanged onHiddenClipboardChanged = function() { clipboardNotification(true, true) onHiddenClipboardChanged_() }
最新コメント