QR codes on terminal for passing things to phone…

ie `qr foo`

```

#!/usr/bin/env python3

import os, sys, pyqrcode

p = ' '.join(sys.argv[1:])

if not p:

print(f'{sys.argv[0]} data-for-qr')

sys.exit(1)

q = pyqrcode.create(p)

print(q.terminal())

```

https://gist.github.com/nvk/1b45aea3e63201c65c5aed14304dd366

Reply to this note

Please Login to reply.

Discussion

Cool! πŸ˜‘

Nice! I use qrencode for that: (testing code formatting here)

```

$ qrencode -tutf8 'LNURL1DP68GURN8GHJ7MRWVF5HGUEWWFHHXETWVFSH2MFWWDJJ7MRWW4EXCUP02DU42NJGDVTHM57P'

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–„β–„β–„ β–ˆβ–ˆβ–€β–„β–ˆβ–ˆβ–€β–„β–ˆβ–ˆβ–ˆβ–ˆ β–„β–€β–€β–€β–„β–ˆ β–„β–„β–„β–„β–„ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆ β–ˆ β–ˆβ–„β–€β–ˆβ–„β–€β–€β–ˆβ–„β–€ β–€β–€β–€β–„ β–ˆβ–ˆβ–ˆ β–ˆ β–ˆ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆβ–ˆβ–„β–€β–€ β–„β–€β–€ β–€β–€β–ˆ β–€ β–ˆβ–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆ β–ˆβ–„β–€β–„β–ˆβ–„β–€β–„β–ˆβ–„β–€β–„β–€ β–ˆ β–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–ˆβ–„β–„β–„β–„β–„β–€β–ˆβ–€ β–€β–ˆβ–€ β–„β–€β–€β–ˆβ–„ β–ˆβ–€β–€β–„β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–€β–€β–ˆβ–ˆβ–„β–€β–€β–€ β–„ β–€ β–„ β–ˆβ–„β–ˆβ–€ β–ˆβ–ˆβ–€ β–ˆβ–„β–ˆ β–ˆβ–€β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–ˆβ–€β–ˆβ–€β–„β–€β–€β–€ β–ˆβ–ˆ β–ˆ β–ˆβ–€ β–ˆβ–„β–ˆβ–ˆβ–ˆβ–„ β–ˆ β–„ β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„ β–„β–€β–ˆβ–ˆβ–„ β–€ β–ˆβ–€β–ˆβ–„β–ˆβ–€β–ˆβ–„β–„β–ˆβ–€ β–„β–ˆβ–€β–„ β–ˆ β–„ β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–ˆ β–„β–„β–ˆβ–€β–€β–„β–€ β–€β–ˆβ–€ β–ˆβ–€β–€β–ˆβ–ˆβ–„β–„ β–„β–€β–€β–€β–„β–„β–€β–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–ˆβ–€β–„β–€β–„β–„β–€β–€β–ˆβ–ˆβ–„ β–€ β–„ β–ˆ β–„β–„β–„β–ˆ β–„β–€ β–€β–ˆβ–ˆβ–ˆ β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–ˆβ–„β–ˆβ–„β–„β–„ β–ˆβ–ˆ β–„β–€β–€β–ˆβ–„β–€β–€β–ˆβ–ˆβ–„β–„β–€β–„β–„ β–€β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–€β–€ β–ˆβ–ˆβ–„β–ˆ β–„β–€β–€β–ˆβ–„β–ˆβ–€β–„ β–€β–€β–„β–ˆβ–„β–€β–„β–ˆ β–„β–„ β–€β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–ˆβ–„β–ˆβ–ˆβ–ˆβ–„β–ˆ β–ˆβ–„β–€ β–€β–ˆβ–€β–€β–€β–ˆβ–„ β–ˆ β–„β–„β–„ β–„β–„β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–„β–„β–„ β–ˆ β–€β–„ β–€ β–€β–€β–€β–€β–„β–€β–„β–ˆβ–ˆ β–ˆβ–„β–ˆ β–„β–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆ β–ˆ β–ˆβ–„β–ˆ β–ˆβ–ˆ β–ˆ β–„β–„β–ˆβ–ˆ β–„ β–„ β–„ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆ β–„β–„β–€β–ˆβ–„β–ˆβ–€ β–„β–ˆβ–ˆβ–„β–„β–ˆβ–ˆβ–€ β–€β–„β–€ β–€ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆβ–„β–ˆβ–ˆβ–ˆβ–„β–ˆβ–ˆβ–„β–ˆβ–„β–ˆβ–ˆβ–„β–„β–„β–„β–„β–ˆβ–ˆβ–„β–ˆβ–„β–ˆβ–ˆβ–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

```

Ok, that sucked. This is how it looks in the terminal:

Testing a smaller qr:

```

$ qrencode -tutf8 'foo'

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–„β–„β–„ β–ˆβ–€ β–ˆ β–„β–ˆ β–„β–„β–„β–„β–„ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆ β–ˆ β–ˆβ–„ β–ˆβ–€β–„β–ˆ β–ˆ β–ˆ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆ β–ˆβ–ˆβ–€ β–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆ β–€ β–€ β–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„ β–ˆ β–€β–€β–„ β–€β–„β–„β–ˆβ–ˆβ–ˆ β–„β–„β–ˆ β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–€β–ˆ β–€β–„β–€ β–„β–ˆβ–€β–„β–„β–ˆβ–ˆβ–ˆ β–ˆβ–€β–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–ˆβ–ˆβ–ˆβ–„β–ˆβ–„β–„β–€β–„β–ˆβ–€β–„β–ˆβ–„β–€ β–ˆβ–€β–„ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–„β–„β–„β–„β–„ β–ˆβ–„β–€ β–€β–€ β–ˆ β–€β–€β–ˆβ–„β–€β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆ β–ˆ β–ˆβ–€β–€β–€ β–ˆβ–ˆβ–„β–„β–„β–€ β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–„β–„β–„β–ˆ β–ˆβ–€ β–„β–ˆβ–„β–€β–€β–ˆ β–ˆβ–€β–ˆβ–„β–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β–„β–„β–„β–ˆβ–„β–ˆβ–ˆβ–„β–„β–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ

```

I already had qrencode installed, but didn’t even know it supported displaying in terminal. I always wrote to an image file 🀦.

Well now I added

alias qr='qrencode -tutf8'

to my bashrc and got the comfort of just typing qr followed by the text to be encoded or piping to qr straight from the terminal. Thanks for the idea guys :)

Glad someone found my spamming session useful!