Keybindings with the form function( args ) , where args are more than one, require ' around the entire function declaration. For example, bind d any run(ls > /cats.txt) is incorrect (this is what the man page says is correct, in the "run" section, and in the bind examples) bind d any run("ls > cats.txt") is incorrect bind d any run(ls_to_cats.sh) is incorrect bind d any 'run(ls > cats.txt)' is correct bind d any 'run(ls > cats.txt)' is correct Sample error: Error: Invalid command syntax: 'run(ls' Error: Invalid command syntax: '>' Error: Invalid command syntax: '/root/-/cats)' Xpdf is not very active (for example it is maintained by one person upstream, and there's no IRC. Whereas similar projects like Xterm has a small irc community, and thousands of contributors). It may require a gentoo patch, since maybe people use it [perhaps]. Sometimes the error is differently misleading, if you use a single arg it will say "sh: cannot find ...". This is misleading because sometimes the user will assume he must construct the command as bash -c "his && commands ...." Reproducible: Always
Additionally, if you want to link multiple xpdf functions to your keybinding; bind d "run(your commands) another_xpdf_function" incorrect bind d "run(your commands)" another_xpdf_function correct I'm not sure what the developper's intention was, but it is important not to ignore this as it could be exploitable. My tests were simple, perhaps the app is vulnerable to overflow exploits ...
Gone.