Recently, I bought a reMarkable 2, a tablet-like device with an e-ink screen that allows me to replace real paper with digital note taking, while keeping the hand-written aspect of writing notes. The device also allows me to read and annotate PDFs in a comfortable way. Given that I use RMfuse
to ‘mount’ the reMarkable cloud on my computer, I normally drag-n-drop the files I want to read in GNOME Files (formerly Nautilus, GNOME’s file manager) from their location on my computer to the mounted cloud.
This works really well so far. However, I also regularly receive files in the MS Office .docx
format. Often I need to make substantial changes in these documents, which I do on my laptop or computer. But sometimes I only need to read them or only put my signature at the bottom. For these cases I would open the .docx
file in LibreOffice, convert it to PDF and copy it to my reMarkable. In order to speed this up, I thought it would be nice to have some way where I right-click on a .docx
file in GNOME Files/Nautilus and then convert it to PDF automatically, after which I can drag-n-drop the PDF file to the mounted reMarkable cloud.
So the question was: how can I add an item to the right-click menu of Nautilus, which runs a script when I click on it. After looking around on the internet, this turned out to be quite easy. It turns out that scripts placed in ~/.local/share/nautilus/scripts/
end up in the Nautilus right-click menu under the Scripts
submenu.
To do the actual conversion to PDF, I created the following script:
#!/bin/bash # This script converts the selected file to PDF using LibreOffice # For general instructions on how to use Nautilus scripts, see # https://help.ubuntu.com/community/NautilusScriptsHowto # # Save this script in ~/.local/share/nautilus/scripts/ and make it # executable. IFS_BAK=$IFS IFS=" " for SelectedFile in ${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}; do soffice \ --nodefault \ --nolockcheck \ --nologo \ --norestore \ --nofirststartwizard \ --convert-to pdf "${SelectedFile}" done IFS=$IFS_BAK
Because I wanted to be able to select multiple files, some having spaces in their names, I had to make sure the space character wasn’t used to split the NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
variable. That is why I temporarily replace the IFS
variable with a newline.
I have only tried this on .docx
files so far, but I guess it would work on presentations and spreadsheets as well.
Leave a Reply