Point people at umonitor
2 files changed, 46 insertions(+), 2 deletions(-)

M README.md
M disp
M README.md +46 -0
@@ 1,6 1,16 @@ 
 disp
 ====
 
+### Note
+
+> `disp` works but is neither currently used nor maintained by me. I've
+> been using [umonitor](https://github.com/rliou92/python-umonitor) which
+> does the same thing, works well, and hasn't been updated in 2 years --
+> which is evidence that it's robust. If, for some reason, umonitor doesn't
+> work for you and you're searching for something that does, and you come
+> across this, and it is *helpful*, let me know and I may pick this up. I
+> just have too many projects on my plate.
+
 `disp` saves and restores monitor layouts.
 
 To use, set up your displays the way you want them laid out with your usual

          
@@ 50,3 60,39 @@ it's been tested nowhere else.  There ar
 your system; in fact, I'm going to guess that it doesn't. However, if it
 doesn't, shoot me a ticket with as much information as you can, and I'll see
 what I can do.  Or, if you fix it, send me a pull request and I'll merge it.
+
+
+Alternatives
+============
+
+I wrote this because every tool I'd seen so far failed in one way or another. One important way is when the manager depends on the display name to match monitors.  This is fragile and will fail, because X will give different names to the same monitors depending on, I don't know, the phase of the moon or some crap.  My monitors frequently vacillate between DP1-n (DP1-1, DP1-2) and DP2-n (DP2-1, DP2-2).  The correct way to do this is use a monitor attribute gathered from EDID, if it's available -- which is usually is, unless you're connecting via VGA.
+
+[umonitor](https://github.com/rliou92/python-umonitor)
+
+:	Pros:
+	* Uses EDID for monitor IDs
+	* Has a command to record a configuration based on current layout
+	* Can run in daemon mode and monitor for changes
+
+	Cons:
+	* None, really.  Well, it's Python, and daemons shouldn't be written in interpreted languages.
+
+	Use this instead of `disp`
+
+[grobi](https://github.com/fd0/grobi)
+
+:	Pros:
+	* Written in Go, so nice stand-alone binary that's immune to breakage due to interpreter upgrades.
+	
+	Cons:
+	* Configuration indexed on display names, so it doesn't work for me.
+	* Configuration has to be written by hand
+
+[mons](https://github.com/Ventto/mons.git)
+
+:	It's a tool that can be used to arrange displays more easily than with xrandr; it is not a hotplug event driven tool to automatically manage layouts.
+
+[srandrd](https://github.com/jceb/srandrd/)
+
+:	It's a tool around which hotplug event handling tools could be built; it's not a solution (to this problem) in itself.
+

          
M disp +0 -2
@@ 185,11 185,9 @@ function runDaemon() {
 		NC=$(cat /sys/class/drm/*/status | grep -ce '^connected$')
 		if [[ $NC -ne $C ]]; then
 			if [[ $NC -eq 1 ]]; then
-				echo disconnected
 				xrandr --auto
 				disconnectAll
 			else
-				echo connected $NC
 				load
 			fi
 		fi