firecat53 / urlscan

Mutt and terminal url selector (similar to urlview)
GNU General Public License v2.0
214 stars 38 forks source link

Bug: 0.9.10 broke `--pipe --run <script>` invocation #129

Closed pataquets closed 1 year ago

pataquets commented 2 years ago

I'm using this yank script. It was working two days ago, before I upgraded. Also, I retested alternating back and forth with 0.9.9 and 0.9.10. Running:

echo "https://google.com/$RANDOM" | urlscan --run-safe yank --pipe --single

With variations on with and without --single and on --run/--run-safe. Same yank script on all tests. Works OK on 0.9.9 and fails on 0.9.10. Maybe #122 has something to do with it?

firecat53 commented 2 years ago

Can you be more specific about what fails? Are there error message? I just tried urlscan --pipe --run-safe 'wl-copy' --single test_urls.txt and it correctly piped the selected result into wl-copy and then exited.

Edit: I also tried with the yank script inside tmux and it worked perfectly.

pataquets commented 2 years ago

Tried diagnosing a bit deeper. I'm just doing the mentioned test, piping an URL to urlscan as described above. Since I'm doing --single, program exits normally after hitting Enter, with exit code 0). No error message is shown. I've also tried moving the --run-safe yank switch to the end in case --single and --pipe were being picked up as yank switches due to some regression, but no change. Only the test command is run inbetween pip install commands to go back and forth between versions. In case it's of any more help, here's my environment:

$ env
TMUX=/tmp/tmux-1000/default,5564,0
HOSTNAME=4859c90c07b6
EDITOR=vim
PWD=/
HOME=/root
LANG=ca_ES.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
TERM=xterm-256color
SHLVL=0
BROWSER=w3m
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
_=/usr/bin/env

Let me know if I can provide further info. Also, while testing, I've noticed there's no --version switch. No big deal, since I use pip install, but it might be useful in other scenarios. I can file an issue, if you feel like it.

firecat53 commented 1 year ago

I'm sorry, but I'm still not understanding what is not working for you? I modified the yank script slightly for wl-copy (I'm using Sway) but it correctly copies the URL to the tmux buffer when run from a tmux session and also copies to the Wayland clipboard both inside and outside tmux in a normal terminal session. I'm running exactly the command you posted in your initial report.

You said it fails, but you haven't defined what exactly fails :smile: And near as I can tell, "it works for me"™.

Edit: I also added a --version switch after updating to pyproject.toml and using hatch for builds. It will update the version on installation.

firecat53 commented 1 year ago

Checking on status of this issue. I didn't hear anything from you after my comments back in Oct. Let me know if you have any other information. Thanks!

firecat53 commented 1 year ago

Closing. Please re-open if you have more information. Thanks!