diff --git a/README.md b/README.md index b339a2b..5c8c2a7 100644 --- a/README.md +++ b/README.md @@ -67,10 +67,11 @@ Developed based on [Snapdrop](https://github.com/RobinLinus/snapdrop) * Multiple files are transferred at once with an overall progress indicator ### Send Files or Text Directly From Share Menu, Context Menu or CLI -* [Send files directly from context menu on Windows](/docs/how-to.md#send-files-directly-from-context-menu-on-windows) -* [Send directly from share menu on iOS](/docs/how-to.md#send-directly-from-share-menu-on-ios) -* [Send directly from share menu on Android](/docs/how-to.md#send-directly-from-share-menu-on-android) -* [Send directly via command-line interface](/docs/how-to.md#send-directly-via-command-line-interface) +* [Send files directly from context menu on Windows](/docs/how-to.md#send-multiple-files-and-directories-directly-from-context-menu-on-windows) +* [Send files directly from context menu on Ubuntu (using Nautilus)](/docs/how-to.md#send-multiple-files-and-directories-directly-from-context-menu-on-ubuntu-using-nautilus) +* [Send files directly from share menu on iOS](/docs/how-to.md#send-directly-from-share-menu-on-ios) +* [Send files directly from share menu on Android](/docs/how-to.md#send-directly-from-share-menu-on-android) +* [Send files directly via command-line interface](/docs/how-to.md#send-directly-via-command-line-interface) ### Other changes * Change your display name permanently to easily differentiate your devices diff --git a/docs/how-to.md b/docs/how-to.md index 36a6f78..7db17fc 100644 --- a/docs/how-to.md +++ b/docs/how-to.md @@ -1,86 +1,120 @@ # How-To -## Send files directly from context menu on Windows - -[//]: # (Todo: Change documentation!) -### Registering to open files with PairDrop -The [File Handling API](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps-chromium/how-to/handle-files) is implemented - -This is still experimental and must be enabled via a flag **before** the PWA is installed to Windows. -1. [Enabled feature in Edge](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps-chromium/how-to/handle-files#enable-the-file-handling-api) -2. Install PairDrop by visiting https://pairdrop.net/ with the Edge web browser and install it as described [here](faq.md#help--i-cant-install-the-pwa-). -3. You are done! You can now send most files one at a time via PairDrop: - - _context menu > Open with > PairDrop_ - -[//]: # (Todo: add screenshots) - -### Sending multiple files to PairDrop -Outstandingly, it is also possible to send multiple files to PairDrop \ -via the context menu by adding PairDrop to the `Send to` menu: -1. [Register PairDrop as file handler](#registering-to-open-files-with-pairdrop) -2. Hit Windows Key+R, type: `shell:programs` and hit Enter. -3. Copy the PairDrop shortcut from the directory -4. Hit Windows Key+R, type: `shell:sendto` and hit Enter. -5. Paste the copied shortcut into the directory -6. You are done! You can now send multiple files (but no directories) directly via PairDrop: - - _context menu > Send to > PairDrop_ - -[//]: # (Todo: add screenshots) ## Send directly from share menu on iOS I created an iOS shortcut to send images, files, folder, URLs \ or text directly from the share-menu https://routinehub.co/shortcut/13990/ -[//]: # (Todo: add doku with screenshots) +[//]: # (Todo: Add screenshots) +
## Send directly from share menu on Android The [Web Share Target API](https://developer.mozilla.org/en-US/docs/Web/Manifest/share_target) is implemented. When the PWA is installed, it will register itself to the share-menu of the device automatically. +
## Send directly via command-line interface -Send files or text with PairDrop via command-line interface. - +Send files or text with PairDrop via command-line interface. \ This opens PairDrop in the default browser where you can choose the receiver. ### Usage ```bash -$ pairdrop -h -Current domain: https://pairdrop.net/ +pairdrop -h +``` +```bash +Send files or text with PairDrop via command-line interface. +Current domain: https://pairdrop-dev.onrender.com/ Usage: -Open PairDrop: pairdrop -Send files: pairdrop file/directory -Send text: pairdrop -t "text" -Specify domain: pairdrop -d "https://pairdrop.net/" -Show this help text: pairdrop (-h|--help) +Open PairDrop: pairdrop +Send files: pairdrop file1/directory1 (file2/directory2 file3/directory3 ...) +Send text: pairdrop -t "text" +Specify domain: pairdrop -d "https://pairdrop.net/" +Show this help text: pairdrop (-h|--help) + +This pairdrop-cli version was released alongside v1.10.0 ``` -On Windows Command Prompt you need to use bash: `bash pairdrop -h` - +
### Setup Download the bash file: [pairdrop-cli/pairdrop](/pairdrop-cli/pairdrop). #### Linux -1. Put the file in a preferred folder e.g. `/usr/local/bin` -2. Make sure the bash file is executable. Otherwise, use `chmod +x pairdrop` -3. Add absolute path of the folder to PATH variable to make `pairdrop` available globally by executing - `export PATH=$PATH:/opt/pairdrop-cli` +1. Download the latest _pairdrop-cli.zip_ from the [releases page](https://github.com/schlagmichdoch/PairDrop/releases) +2. Unzip the archive to a folder of your choice e.g. `/usr/local/bin/pairdrop-cli/` +3. Make sure the bash file `/usr/local/bin/pairdrop-cli/pairdrop` is executable. Otherwise, use `chmod +x pairdrop` +4. Add absolute path of the folder to PATH variable to make `pairdrop` available globally by executing + `export PATH=$PATH:/usr/local/bin/pairdrop-cli/` + +
#### Mac 1. add bash file to `/usr/local/bin` +
+ #### Windows -1. Put file in a preferred folder e.g. `C:\Users\Public\pairdrop-cli` -2. Search for and open `Edit environment variables for your account` -3. Click `Environment Variables…` -4. Under *System Variables* select `Path` and click *Edit...* -5. Click *New*, insert the preferred folder (`C:\Users\Public\pairdrop-cli`), click *OK* until all windows are closed -6. Reopen Command prompt window +1. Download the latest _pairdrop-cli.zip_ from the [releases page](https://github.com/schlagmichdoch/PairDrop/releases) +2. Put file in a preferred folder e.g. `C:\Program Files\pairdrop-cli` +3. Search for and open `Edit environment variables for your account` +4. Click `Environment Variables…` +5. Under *System Variables* select `Path` and click *Edit...* +6. Click *New*, insert the preferred folder (`C:\Program Files\pairdrop-cli`), click *OK* until all windows are closed +7. Reopen Command prompt window + +
+ +### Requirements +As Windows cannot execute bash scripts natively, you need to install [Git Bash](https://gitforwindows.org/). +Then, you can also use pairdrop-cli from the default Windows Command Prompt \ +by using the shell file instead of the bash file: `pairdrop.sh -h` which then itself executes \ +pairdrop-cli (the bash file) via the Git Bash. + +
+ +## Send multiple files and directories directly from context menu on Windows + +### Registering to open files with PairDrop +It is possible to send multiple files with PairDrop via the context menu by adding pairdrop-cli to Windows `Send to` menu: +1. Download the latest _pairdrop-cli.zip_ from the [releases page](https://github.com/schlagmichdoch/PairDrop/releases) +2. Unzip the archive to a folder of your choice e.g. `C:\Program Files\pairdrop-cli\` +3. Copy the shortcut _send with PairDrop.lnk_ +4. Hit Windows Key+R, type: `shell:sendto` and hit Enter. +5. Paste the copied shortcut into the directory +6. Open the properties window of the shortcut and edit the link field to point to _send-with-pairdrop.ps1_ located in the folder you used in step 2: \ + `"C:\Program Files\PowerShell\7\pwsh.exe" -File "C:\Program Files\pairdrop-cli\send-with-pairdrop.ps1"` +7. You are done! You can now send multiple files and directories directly via PairDrop: + +> _context menu > Send to > PairDrop_ + +##### Requirements +As Windows cannot execute bash scripts natively, you need to install [Git Bash](https://gitforwindows.org/). + +
+ +## Send multiple files and directories directly from context menu on Ubuntu using Nautilus + +### Registering to open files with PairDrop +It is possible to send multiple files with PairDrop via the context menu by adding pairdrop-cli to Nautilus `Scripts` menu: +1. Download the latest _pairdrop-cli.zip_ from the [releases page](https://github.com/schlagmichdoch/PairDrop/releases) +2. Unzip the archive to a folder of your choice e.g. `/usr/local/bin/pairdrop-cli/` +3. Copy the shell file _send-with-pairdrop.sh_ to `/home//.local/share/nautilus/scripts/` +4. Edit the shell file and edit the variable `pathToPairDropCli` to point to the pairdrop-cli executable from step 2 (e.g. `/usr/local/bin/pairdrop-cli/pairdrop`) +5. Make sure the shell file `/home//.local/share/nautilus/scripts/send-with-pairdrop.sh` is executable. Otherwise, use `chmod +x send-with-pairdrop.sh` +6. You are done! You can now send multiple files and directories directly via PairDrop: + +> _context menu > Scripts > send-with-pairdrop.sh_ + +
+ +## File Handling API +The [File Handling API](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps-chromium/how-to/handle-files) +was implemented, but it was removed as default file associations were overwritten ([#17](https://github.com/schlagmichdoch/PairDrop/issues/17), +[#116](https://github.com/schlagmichdoch/PairDrop/issues/116) [#190](https://github.com/schlagmichdoch/PairDrop/issues/190)) +and it only worked with explicitly specified file types and not with directories at all. [< Back](/README.md)