Josh Johnson | 8 May 15:11
Picon
Favicon

Quick IRC Cheat Sheet

Hi All,
There's been some indication from various folks that ya'll don't know IRC as well as you should. :)

So, here's a very brief crash-course in IRC commands and what they do. I'm pulling this mostly from memory, I'm sure there's some docs on freenode or elsewhere, and others that are more l33t than me that will fill in any gaps (AFAIK, most of the other commands deal with channel management):

Command
What it does
/me is hungry
* yourusername is hungry
shows up in the channel
/nick newnick
change your username to newnick
/away message
set yourself as away (most multi-clients like gaim do this for you)
/msg somebody
send a private message to the user named 'somebody'. In Gaim, this comes up like any other instant message.
/query somebody
start a private chat with a user named 'somebody' most clients will open a new window for this
/whois somebody
get basic info on somebody, also lets you know if they're online
/join #channel
join the #channel chat room
/quit message
leave the server with a cleaver message
/help command
get help (at least on freenode)! if you specify command, it will give you help on that command. If not, it will list all available commands.

HTH!

JJ
<div>
Hi All, <br>
There's been some indication from various folks that ya'll don't know
IRC as well as you should. :)<br><br>
So, here's a very brief crash-course in IRC commands and what they do.
I'm pulling this mostly from memory, I'm sure there's some docs on
freenode or elsewhere, and others that are more l33t than me that will
fill in any gaps (AFAIK, most of the other commands deal with channel
management):<br><br><table border="1" cellpadding="2" cellspacing="2" width="100%">
<tr>
<td valign="top">Command<br>
</td>
      <td valign="top">What it does<br>
</td>
    </tr>
<tr>
<td valign="top">/me is hungry<br>
</td>
      <td valign="top">* yourusername is hungry<br>
shows up in the channel<br>
</td>
    </tr>
<tr>
<td valign="top">/nick newnick<br>
</td>
      <td valign="top">change your username to newnick<br>
</td>
    </tr>
<tr>
<td valign="top">/away message<br>
</td>
      <td valign="top">set yourself as away (most multi-clients like
gaim do this for you)<br>
</td>
    </tr>
<tr>
<td valign="top">/msg somebody<br>
</td>
      <td valign="top">send a private message to the user named
'somebody'. In Gaim, this comes up like any other instant message.<br>
</td>
    </tr>
<tr>
<td valign="top">/query somebody<br>
</td>
      <td valign="top">start a private chat with a user named
'somebody' most clients will open a new window for this<br>
</td>
    </tr>
<tr>
<td valign="top">/whois somebody<br>
</td>
      <td valign="top">get basic info on somebody, also lets you know
if they're online <br>
</td>
    </tr>
<tr>
<td valign="top">/join #channel<br>
</td>
      <td valign="top">join the #channel chat room<br>
</td>
    </tr>
<tr>
<td valign="top">/quit message<br>
</td>
      <td valign="top">leave the server with a cleaver message<br>
</td>
    </tr>
<tr>
<td valign="top">/help command<br>
</td>
      <td valign="top">get help (at least on freenode)! if you specify
command, it will give you help on that command. If not, it will list
all available commands.<br>
</td>
    </tr>
</table>
<br>
HTH!<br><br>
JJ<br>
</div>
Chris Calloway | 8 May 15:55
Picon
Favicon

Re: Quick IRC Cheat Sheet

On 5/8/2008 9:12 AM, Josh Johnson wrote:
> /join #channel
>     join the #channel chat room
> /quit message
>     leave the server with a cleaver message

Also /leave is very useful for just signing off one channel while 
leaving the others up.

I guess if nothing else, we can have a lightning talk on irc and 
#trizpug at the May meeting.

Josh, thanks for all your help at the Plone Jam last night. Folks, Josh 
got Rob all fixed up on a problem we've been joking about on the 
#trizpug channel for weeks.

And thanks to Mark who sat there with me until 9:30pm while I got the 
ArchGenXML patch finished.

--

-- 
Sincerely,

Chris Calloway
http://www.secoora.org
office: 332 Chapman Hall   phone: (919) 599-3530
mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599

Chris Calloway | 8 May 17:14
Picon
Favicon

Re: Quick IRC Cheat Sheet

On 5/8/2008 9:55 AM, Chris Calloway wrote:
> And thanks to Mark who sat there with me until 9:30pm while I got the 
> ArchGenXML patch finished.

BTW, here is the patch:

http://trac.secoora.org/portal/browser/RAMembers/trunk/RAMembers/archgenxml.setup.py.patch

I'm trying to get this into the AGX product trunk. It turned out last 
night that I don't have commit on Archetypes. So I'll work with the 
developers on their email list to either get them to accept the patch or 
get privileges to at least branch in the Archetypes svn.

--

-- 
Sincerely,

Chris Calloway
http://www.secoora.org
office: 332 Chapman Hall   phone: (919) 599-3530
mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599

Chris Calloway | 8 May 17:57
Picon
Favicon

Re: Quick IRC Cheat Sheet

On 5/8/2008 11:14 AM, Chris Calloway wrote:
>
http://trac.secoora.org/portal/browser/RAMembers/trunk/RAMembers/archgenxml.setup.py.patch 

And apparently, that patch is totally unnecessary if you simply install 
AGX with:

easy_install http://svn.plone.org/svn/archetypes/ArchGenXML/trunk/

I had this suspicion and should have check it before patching setup.py.

This tells me that distutils and setuptools are not a compatible as 
advertized. At least not downwardly.

So I won't be submitting this patch after all.

--

-- 
Sincerely,

Chris Calloway
http://www.secoora.org
office: 332 Chapman Hall   phone: (919) 599-3530
mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599

Rob Lineberger | 8 May 18:03
Picon
Favicon

partial write up of last night's plone jam

Rob had a need to browse content from a page template and wanted to use
the ATReferenceBrowserWidget to do so. Getting ATReferenceBrowserWidget
to work in an AT schema is straightforward. In fact, in a tip that
newcomer Jonathan Schisler showed us, you can make all of your reference
fields into ATReferencBrowsers by setting two tagged values on the
"content" package in UML:

Tag = imports 
Value = from Products.ATReferenceBrowserWidget.ATReferenceBrowserWidget
import ReferenceBrowserWidget

Tag = default:widget:Reference
Value = ReferenceBrowserWidget

Then any reference line you draw between two classes will create a
reference field on your content type with a field name of the referenced
content type, and that reference field's widget will be an
ATReferenceBrowserWidget. 

But Rob needed to draw a widget on a page template, not on the edit tab
of a content type. So Josh Johnson pulled out some old code from his
spiffy Trac repository which went a little something like this:

Important part #1: the javascript for ATReferenceBrowserWidget:
```````````````````````````````````````````

<html metal:use-macro="here/main_template/macros/master">
  <head>
    <title tal:content="template/title">The title</title>
	
	<metal:javascript_head fill-slot="javascript_head_slot">
	   <tal:getjs tal:define="js
python:here.getUniqueWidgetAttr(context.Schema().fields(),
'helper_js');">
		<tal:js repeat="item js">
		  <script type="text/javascript"
				  charset="iso-8859-1"
				  tal:condition="python:exists('portal/%s' % item)"
				  tal:attributes="src string:$portal_url/$item">
		  </script>
		</tal:js>
	  </tal:getjs>
	</metal:javascript_head> 
  </head>
  <body>

Important part #2: using ATReferenceBrowserWidget:
```````````````````````````````````````````
<metal:field use-macro="python:context.widget('otherGenelist',
mode='edit')">My Field</metal:field>

It is important to note two things about this solution.  One, it is
context dependent, so if the current context doesn't have a field in its
schema called otherGenelist the page template will barf. Two, you
shouldn't be doing this anyway.  You should really be using Zope's
formlib and use Z3 style adapters, interfaces, browser.zcml, and other
cool stuff which only ubercool people grasp.


Gmane