ドラッグせずにドラッグ&ドロップ

ドラッグせずにドラッグ&ドロップ

場合によっては、アプリケーションにファイルをドラッグアンドドロップする必要があります。 (はい- しかし、私の問題はChromeユーザースクリプトのインストールに関するものではありません。 )一つの解決策はドラッグボックスの使用をクリックすると、コマンドラインで指定されたファイルをドラッグできるウィンドウが開きます。

大丈夫です。しかし、必要なマウスの相互作用を減らしたいと思います。 Dragbox を使用するには、次の操作が必要です。 Dragbox とドロップ領域の両方が表示されるように調整します。マウスカーソルをDragboxが表示する位置に移動します。マウスカーソルをドロップ領域に移動します。カーソル。

私はコピー - 貼り付けに近いインターフェースが欲しいです。このようなコマンドを実行し、ドロップdragbox --more-magic foo領域をクリックします。または、コマンドを実行してドロップ領域に焦点を合わせて任意のキーを押します。これができるプログラムはありますか? Freedesktopのドラッグアンドドロップでも実行できますか?

答え1

もう2019年なのにまだ..

これが私の現在のキャプチャツールです。 xdotoolコマンドは、ファイルを自動的にドラッグする方法に関連しています。

ここに画像の説明を入力してください。

以下はスクリプトです(例ではショートカットで実行されます)。

2.bin$ cat drag_into
#!/usr/bin/env bash
doc="$0 <filename|'shot'>

With filename: Drags given file to where the mouse is using dragon.
               Click to drop it (anywere).
With 'shot'  : File will be a shot of a an area to be selected.
               => 'drag_into shot' on a hotkey combo makes sense. 
"

cmd_shot="shot"
file=

exit_help () { echo -e "$doc"; exit 1; }

select_shot_area () {
    # create screen shot
    notify-send "Select area - we'll shoot it and drag to where the mouse is."
    cd "$HOME/Pictures/shots/" || exit 1
    rm -f "latest.png"
    scrot -s '%Y-%m-%d_$wx$h_scrot.png' -e 'ln -s $f latest.png'
    file="`readlink latest.png`"
}

main () {
    file="$1"
    test -z "$file" -o "$file" == "-h" && exit_help
    eval "$(xdotool getmouselocation --shell)" # into $X and $Y
    test "$file" == "$cmd_shot" && { select_shot_area || return 1; }
    killall dragon 2>/dev/null # No accidential drops of wrong items ...
    dragon --and-exit "$file" &
    while true; do
        xid="$(xdotool search --onlyvisible --class  dragon | head -n 2)"
        test -z "$xid" || break
        sleep 0.05
    done
    xdotool mousemove --sync -w "$xid" 1 1 mousedown 1 mousemove $X $Y
    notify-send "Click to drop $file..."
}

main "$@"

答え2

ドロップ使用法の例

この問題を解決する方法を見つけようとしたところ、これが見つかりました。後で私が提案したソリューションに興味がある人のためにここに投稿したいと思いました。

ソースを探すことができます減らすここで。実行してください:

$ git clone https://github.com/sillybanaja/drop.git
$ cd drop
$ make

状況に応じて、端末からウィンドウにファイルをドラッグアンドドロップする簡単な方法が必要です。ファイルをドラッグしたり、GUIと対話したりすることなく強制的にドラッグアンドドロップできることを願っています。

dropC言語で書かれました拡張ライブラリ、Unixシリーズシステムで広く使用されている軽量ライブラリです。dropファイル名リストを引数として使用して、ファイルをドラッグすることなく、XDND(Xドラッグアンドドロップ)をサポートするアプリケーションにドラッグアンドドロップできます。はい、クリックは一度減ります!

これが基本的な使い方です:drop filename ...、ここに例があります:

$ drop ~/Downloads/*.jpg file.txt /usr/local/bin/*

また、drop「~/Downloads/*.jpg」などのワイルドカードパターンを使用できます。 Enterキーを押した後、ターゲットウィンドウに移動してファイルを配置する場所をクリックできます。プログラムを閉じるには、いつでもEscキーを押します。

答え3

あなたはそれを使用することができますセレンこの仕事のために。 Webブラウザと対話するオープンソースツールです。 Arch Linuxを使用していてPythonで作成したい場合は、python-seleniumaurパッケージをインストールして(またはpip:経由でpip install selenium)実行してくださいpip install webdriver-manager(ブラウザのバージョンと一致する必要なドライババージョンを自動的にダウンロードします)。

セレンカップルあえてドラッグする必要はない必須ファイルの場合は、必須ファイルの絶対パスを渡すだけです。もちろん、アップロードボタンのクリックをシミュレートし、必要に応じてコンテンツを配置することもできます。

あなたはこれを行うことができます既存の(以前に開いた)ブラウザを新しいウィンドウで開く代わりに。ただし、この場合は、次のものを使用したい場合があります。私のソリューションプログラムで選択されているアクティブタブに対応する現在のGUIアクティブタブを選択するために使用されます。

関連情報