diff --git a/INSTALL.md b/INSTALL.md
index ef7bbaf..f5ba1d4 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -25,7 +25,7 @@ These commands install [Homebrew](https://brew.sh), which simplifies installing
To upgrade to a newer version, simply run `pip3 install -U katrain`
-If you encounter an error about SDL being missing, try ` brew sdl sdl_image sdl_mixer sdl_ttf portmidi`
+If you encounter an error about SDL being missing, try ` brew install sdl sdl_image sdl_mixer sdl_ttf portmidi`
### Troubleshooting and Installation from sources
diff --git a/katrain/__main__.py b/katrain/__main__.py
index c489cb0..ce31780 100644
--- a/katrain/__main__.py
+++ b/katrain/__main__.py
@@ -30,11 +30,13 @@ Config.set("graphics", "width", max(400, int(WINDOW_X * WINDOW_SCALE_FAC)))
Config.set("graphics", "height", max(400, int(WINDOW_Y * WINDOW_SCALE_FAC)))
Config.set("input", "mouse", "mouse,multitouch_on_demand")
+import re
import signal
import sys
import threading
import traceback
from queue import Queue
+import urllib3
import webbrowser
from kivy.base import ExceptionHandler, ExceptionManager
@@ -400,6 +402,15 @@ class KaTrainGui(Screen, KaTrainBase):
if not clipboard:
self.controls.set_status(f"Ctrl-V pressed but clipboard is empty.", STATUS_INFO)
return
+
+ url_match = re.match("(?Phttps?://[^\s]+)", clipboard)
+ if url_match:
+ self.log("Recognized url: " + url_match.group())
+
+ http = urllib3.PoolManager()
+ response = http.request('GET', url_match.group())
+ clipboard = response.data.decode('utf-8')
+
try:
move_tree = KaTrainSGF.parse_sgf(clipboard)
except Exception as exc: