Index: /trunk/source/cocoa-ide/hemlock/src/bindings.lisp
===================================================================
--- /trunk/source/cocoa-ide/hemlock/src/bindings.lisp	(revision 14733)
+++ /trunk/source/cocoa-ide/hemlock/src/bindings.lisp	(revision 14734)
@@ -67,5 +67,7 @@
 (bind-key "Query Replace" #k"meta-%")
 (bind-key "Reverse Incremental Search" #k"control-r")
+(bind-key "Reverse Incremental Search" #k"control-R")
 (bind-key "Incremental Search" #k"control-s")
+(bind-key "Incremental Search" #k"control-S")
 (bind-key "Forward Search" #k"meta-s")
 (bind-key "Reverse Search" #k"meta-r")
@@ -87,4 +89,6 @@
 (bind-key "Abort Command" #k"control-x control-G")
 
+;(bind-key "Insert Date" #k"control-x control-d")
+(bind-key "Insert Date and Time" #k"control-x control-d")
 
 (bind-key "Process File Options" #k"control-x m" :global)
@@ -96,4 +100,5 @@
 (bind-key "Describe Key" #k"meta-?")
 (bind-key "What Cursor Position" #k"control-x =")
+(bind-key "What Cursor Position" #k"control-=")
 
 
@@ -332,5 +337,7 @@
 (bind-key "Illegal" #k"meta-x" :mode "Echo Area")
 (bind-key "Illegal" #k"control-s" :mode "Echo Area")
+(bind-key "Illegal" #k"control-S" :mode "Echo Area")
 (bind-key "Illegal" #k"control-r" :mode "Echo Area")
+(bind-key "Illegal" #k"control-R" :mode "Echo Area")
 (bind-key "Illegal" #k"hyper-t" :mode "Echo Area")
 
@@ -943,5 +950,7 @@
 
 (bind-key "I-Search Repeat Forward" #k"control-s" :mode "I-Search")
+(bind-key "I-Search Repeat Forward" #k"control-S" :mode "I-Search")
 (bind-key "I-Search Repeat Backward" #k"control-r" :mode "I-Search")
+(bind-key "I-Search Repeat Backward" #k"control-R" :mode "I-Search")
 (bind-key "I-Search Backup" #k"backspace" :mode "I-Search")
 (bind-key "I-Search Backup" #k"delete" :mode "I-Search")
Index: /trunk/source/cocoa-ide/hemlock/src/filecoms.lisp
===================================================================
--- /trunk/source/cocoa-ide/hemlock/src/filecoms.lisp	(revision 14733)
+++ /trunk/source/cocoa-ide/hemlock/src/filecoms.lisp	(revision 14734)
@@ -665,14 +665,2 @@
     (message "Buffer ~S is now writable." (buffer-name buffer))))
 
-
-
-
-(defun universal-time-to-string (ut)
-  (multiple-value-bind (sec min hour day month year)
-		       (decode-universal-time ut)
-    (format nil "~2,'0D-~A-~2,'0D ~2,'0D:~2,'0D:~2,'0D"
-	    day (svref '#("Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug"
-			  "Sep" "Oct" "Nov" "Dec")
-		       (1- month))
-	    (rem year 100)
-	    hour min sec)))
Index: /trunk/source/cocoa-ide/hemlock/src/morecoms.lisp
===================================================================
--- /trunk/source/cocoa-ide/hemlock/src/morecoms.lisp	(revision 14733)
+++ /trunk/source/cocoa-ide/hemlock/src/morecoms.lisp	(revision 14734)
@@ -48,4 +48,28 @@
   (abort-to-toplevel))
 
+
+(defcommand "Insert Date and Time" (p)
+  "Inserts the current date and time.  With prefix argument, inserts date only"
+  (multiple-value-bind (date time) (current-date-time-strings)
+    (let ((point (current-point)))
+      (push-new-buffer-mark point) ;; leave mark at beginning
+      (insert-string point (if p date (format nil "~a ~a" date time))))))
+
+(defcommand "Insert Date" (p)
+  "Inserts the current date.  With prefix argument, inserts date and time"
+  (multiple-value-bind (date time) (current-date-time-strings)
+    (let ((point (current-point)))
+      (push-new-buffer-mark point) ;; leave mark at beginning
+      (insert-string point (if p (format nil "~a ~a" date time) date)))))
+
+(defun current-date-time-strings ()
+  (multiple-value-bind (sec min hour day month year) (get-decoded-time)
+    (values (format nil "~2,'0D-~A-~4D"
+                    day (svref '#("Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug"
+                                  "Sep" "Oct" "Nov" "Dec")
+                               (1- month))
+                    year)
+            (format nil "~2,'0D:~2,'0D:~2,'0D" hour min sec))))
+    
 ;;;; Casing commands...
 
