Jump to content
Ketarin forum

Synergy template


shawn
 Share

Recommended Posts

If you haven't used Synergy, and you use more than one computer, get it now. You *need* this software. Really.

 

The following template parses the revised Synergy website for current stable and beta versions for various operating systems. I know the first thought in my mind was: Why bother? I only really need six versions of this template myself. Why bother with something with this much scope? The answer is simple: their site changes "often enough" to make me want to avoid having to make changes to a half dozen different templates every few months, instead of just one.

 

This is the one. :)

 

<?xml version='1.0' encoding='utf-8'?>
<Jobs>
 <ApplicationJob xmlns:xsi="[url="http://www.w3.org/2001/XMLSchema-instance"]http://www.w3.org/2001/XMLSchema-instance[/url]" xmlns:xsd="[url="http://www.w3.org/2001/XMLSchema"]http://www.w3.org/2001/XMLSchema[/url]" Guid="debb1deb-1024-1975-abcd-aa000000000a" >
   <Name><placeholder name="Name?" value="Synergy" /></Name>
   <Category><placeholder name="Category?" value="Synergy" /></Category>
   <SourceType>FixedUrl</SourceType>
   <DeletePreviousFile><placeholder name="Delete Previous Version?" value="true" options="true|false" /></DeletePreviousFile>
   <IgnoreFileInformation>false</IgnoreFileInformation>
   <DownloadBeta>Default</DownloadBeta>
   <DownloadDate xsi:nil="true" />
   <CheckForUpdatesOnly>false</CheckForUpdatesOnly>
   <VariableChangeIndicator>version</VariableChangeIndicator>
   <CanBeShared>true</CanBeShared>
   <ShareApplication>true</ShareApplication>
   <ExclusiveDownload>false</ExclusiveDownload>
   <HttpReferer />
   <SetupInstructions />
   <Variables>
  <item>
    <key>
	  <string>ReleaseType</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent><placeholder name="Release type?" value="Stable" options="Stable|Beta" /></TextualContent>
	    <Name>ReleaseType</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>OS</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent><placeholder name="Operating system?" value="Windows" options="Windows|MacOSX|Linux|Source" /></TextualContent>
	    <Name>OS</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>Model</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent><placeholder name="OS model?" value="64" options="64|86|Universal|deb|rpm" /></TextualContent>
	    <Name>Model</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>schangelog</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent>http://synergy-foss.org/issues/</TextualContent>
	    <Name>schangelog</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>swebsite</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent>http://synergy-foss.org/</TextualContent>
	    <Name>swebsite</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>sdownload</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent>http://synergy-foss.org/download/</TextualContent>
	    <Name>sdownload</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>snotes</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent />
	    <Name>snotes</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>source</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent>http://synergy-foss.org/download/?{ReleaseType:multireplace:|:Beta|Stable:list|alt}</TextualContent>
	    <Name>source</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>version</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>RegularExpression</VariableType>
	    <Regex>>([\d\.]+) {ReleaseType}\:?<</Regex>
	    <Url>{source}</Url>
	    <Name>version</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>dl</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>RegularExpression</VariableType>
	    <Regex>(synergy-{version}-{OS}[^'"]*{Model:replace:.:}[^'"]*)['"]</Regex>
	    <Url>{source}</Url>
	    <Name>dl</Name>
	  </UrlVariable>
    </value>
  </item>
  <item>
    <key>
	  <string>spc</string>
    </key>
    <value>
	  <UrlVariable>
	    <RegexRightToLeft>false</RegexRightToLeft>
	    <VariableType>Textual</VariableType>
	    <Regex />
	    <TextualContent>synergy</TextualContent>
	    <Name>spc</Name>
	  </UrlVariable>
    </value>
  </item>
   </Variables>
   <ExecuteCommand />
   <ExecutePreCommand />
   <ExecuteCommandType>Batch</ExecuteCommandType>
   <ExecutePreCommandType>Batch</ExecutePreCommandType>
   <Enabled>true</Enabled>
   <FileHippoId />
   <TargetPath>.\{category}\{appname:regexreplace:([\s\t\r\n\-\\&\/]+):_}-{version}.{url:ext}</TargetPath>
   <FixedDownloadUrl>http://synergy.googlecode.com/files/{dl}</FixedDownloadUrl>
 </ApplicationJob>
</Jobs>

Edited by shawn
Updated template to work with website changes
Link to comment
Share on other sites

I've been using it now for about 10 years, and it's become so ingrained into my being that I simply can't imagine how people that use more than one computer are able to function without it (and I don't think I'd be nearly as efficient if I only had one computer). I used to have to drape three or four mouse & keyboard combinations across the same desk, and that is *no* fun at all. Now I can use all of them simultaneously and just "double-tap" the sides of each screen to get to the related display. And since I do a lot of technical services and updates on various client computers, too, I use a portable version on client machines so I can control them the same way when they're plugged into my network. I've had as many as 12 devices controlled simultaneously (including my iPhone), but usually only have 4-5 running at the same time.

 

Synergy isn't without problems though, most notably the "wife infuriation" bug. My wife still comes in to check where I am (via my Outlook schedule) and gets extremely frustrated when moving the mouse affects the "wrong" computer. But then, it took me over 5 years to convince her to even try more than one display on her computer. :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.