<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1 +1,3 @@
 doc
+.DS_Store
+**/.DS_Store</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -136,7 +136,8 @@ class RRDB
   # the values your application prefers.
   # 
   def self.field_name(name)
-    name.to_s.delete(&quot;^a-zA-Z0-9_&quot;)[0..18]
+    name.to_s.tr( &quot;-~!@\#$%^&amp;*+=|&lt;&gt;./?&quot;,
+                  &quot;mtbahdpcnmveplgddq&quot; ).delete(&quot;^a-zA-Z0-9_&quot;)[0..18]
   end
   
   #</diff>
      <filename>lib/rrdb.rb</filename>
    </modified>
    <modified>
      <diff>@@ -48,10 +48,22 @@ class TestUpdate &lt; Test::Unit::TestCase
   end
   
   def test_unsupported_characters_are_removed_from_names
-    @db.update(Time.now, &quot;a'b=&quot; =&gt; 4)
+    @db.update(Time.now, &quot;a'b)&quot; =&gt; 4)
     assert(@db.fields.include?(&quot;ab&quot;), &quot;Trimmed field name not found.&quot;)
   end
   
+  def test_common_symbols_are_translated
+    @db.update(Time.now, '~ z ! @#$%^&amp;*-+=|&lt;&gt;./?' =&gt; 4)
+    assert( @db.fields.include?(&quot;tzbahdpcnmmveplgddq&quot;),
+            &quot;Common symbols were not translated.&quot; )
+  end
+  
+  def test_fields_that_differ_only_by_symbol
+    @db.update(Time.now, &quot;Swap Used&quot; =&gt; 1, &quot;% Swap Used&quot; =&gt; 2)
+    assert(@db.fields.include?(&quot;SwapUsed&quot;), &quot;Non-symbol field was not found.&quot;)
+    assert(@db.fields.include?(&quot;pSwapUsed&quot;), &quot;Symbol field was not found.&quot;)
+  end
+  
   def test_long_field_names_are_shortened_on_entry
     @db.update(Time.now, (&quot;a&quot;..&quot;z&quot;).to_a.join =&gt; 5)
     assert( @db.fields.include?((&quot;a&quot;..&quot;z&quot;).to_a.join[0..18]),
@@ -63,7 +75,7 @@ class TestUpdate &lt; Test::Unit::TestCase
       @db.update(Time.now, String.new =&gt; 6)
     end
     assert_raise(RRDB::FieldNameConflictError) do
-      @db.update(Time.now, &quot;!@\#$%^&amp;*&quot; =&gt; 7)
+      @db.update(Time.now, &quot;`(){}[]'&quot; =&gt; 7)
     end
   end
   </diff>
      <filename>test/tc_update.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>fae1f147c1e92ef1f8a1379f2d28b28eb221c88e</id>
    </parent>
  </parents>
  <author>
    <name>James Edward Gray II</name>
    <email>james@graysoftinc.com</email>
  </author>
  <url>http://github.com/JEG2/rrdb/commit/aea997aff6465e9579200a2e53a109d71fc1fdf0</url>
  <id>aea997aff6465e9579200a2e53a109d71fc1fdf0</id>
  <committed-date>2008-07-21T07:06:09-07:00</committed-date>
  <authored-date>2008-07-21T07:06:09-07:00</authored-date>
  <message>Adding support for symbols in fields.</message>
  <tree>1bad1929339578bea3ed6e8e654c3d3486375202</tree>
  <committer>
    <name>James Edward Gray II</name>
    <email>james@graysoftinc.com</email>
  </committer>
</commit>
