DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦4eeeddaa3⟧ Ada Source

    Length: 57344 (0xe000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Xr6us_Commands, seg_02e4dd

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



-- This is a template for changing key bindings for the Xr6us keyboard.
-- Installing this procedure, with the desired case entries, will change the
-- actions caused by those keys for any sessions that are created with
-- visibility to this procedure.

with Access_List;
with Ada;
with Cmvc;
with Command;
with Common;
with Compilation;
with Debug;
with Editor;
with Io;
with Job;
with Library;
--with Mail;
with Message;
with Print;
with Queue;
with Text;
with What;
with Xr6us_Key_Names;

procedure Xr6us_Commands is
    use Xr6us_Key_Names;

    type Intent is (Prompt, Execute, Interrupt);

    Action : Intent;

    Key_1 : Key_Names;
    Key_2 : Key_Names;
    Key_3 : Key_Names;
    Key_4 : Key_Names;

begin
    case Action is

        when Prompt =>
            case Key_1 is
                when Menu_Pick =>
                    case Key_2 is
                        when 'e' =>
                            case Key_3 is
                                when 'n' =>
                                    Compilation.Parse (File_Name => "<REGION>",
                                                       Directory => "$",
                                                       List => False,
                                                       Source_Options => "",
                                                       Response => "<PROFILE>");
                                when 'o' =>
                                    Compilation.Load
                                       (From => ">>MAIN_PROGRAM NAME<<",
                                        To => ">>LOADED_MAIN NAME<<",
                                        Response => "<PROFILE>");
                                when others =>
                                    null;
                            end case;

                        when 'g' =>
                            case Key_3 is
                                when 'g' =>
                                    Text.Create (Image_Name => ">>IMAGE_NAME<<",
                                                 Kind => Text.File);
                                when 'h' =>
                                    Library.Create_Directory
                                       (Name => ">>DIRECTORY NAME<<",
                                        Kind => Library.Directory,
                                        Vol => Library.Nil,
                                        Model => "",
                                        Response => "<PROFILE>");
                                when 'i' =>
                                    Library.Create_World
                                       (Name => ">>WORLD NAME<<",
                                        Kind => Library.World,
                                        Vol => Library.Nil,
                                        Model => "!Model.R1000",
                                        Response => "<PROFILE>");                               when others =>
                                    null;
                            end case;
                        when 'i' =>
                            case Key_3 is
                                when 'h' =>
                                    Text.Redirect (To => ">>File Name<<");
                                when others =>
                                    null;
                            end case;
                        when 'l' =>
                            case Key_3 is
                                -- when 'b' =>
                                --     Mail.Edit (Mailbox => "", For_User => "");
                                -- when 'h' =>
                                --     Mail.Create (Mailbox => ">>SIMPLE NAME<<",
                                --                  For_User => "");
                                when 'j' =>
                                    Message.Send
                                       (Who => [STRING-expression],
                                        Message => [STRING-expression]);
                                when 'k' =>
                                    Message.Send_All (Message =>
                                                         [STRING-expression]);
                                when others =>
                                    null;
                            end case;
                        when 'A' =>
                            case Key_3 is
                                when '2' =>
                                    case Key_4 is
                                        when 'd' =>
                                            Common.Definition ("!");
                                        when others =>
                                            null;
                                    end case;
                                when others =>
                                    null;
                            end case;
                        when 'B' =>
                            case Key_3 is
                                when 'g' =>
                                    Editor.Image.Find (Name => "");
                                when 'w' =>
                                    Editor.Window.Frames
                                       (Maximum => [POSITIVE-expression]);
                                when others =>
                                    null;
                            end case;
                        when others =>
                            null;
                    end case;
                when others =>
                    null;
            end case;

        when Execute =>
            case Key_1 is
                when C_C =>
                    Common.Create_Command;
                when Menu_Return =>
                    Editor.Line.Insert (1);
                when Mouse_Down =>
                    Editor.Screen.Down;
                when Mouse_Right =>
                    Editor.Screen.Right;
                when Mouse_Image_Down =>
                    Editor.Image.Down;
                when Mouse_Image_Right =>
                    Editor.Image.Right;
                when Mouse_Button1 =>
                    Editor.Set.Input_Logging_Off;
                when Mouse_Button1_Dbl =>
                    Common.Definition
                       (Name => "<CURSOR>", In_Place => False, Visible => True);
                when Mouse_Button2_Dbl =>
                    Common.Object.Parent (Repeat => 1);
                when Mouse_Button3 =>
                    Editor.Noop;
                when Mouse_Button3_Dbl =>
                    Common.Enclosing (In_Place => False, Library => False);
                when Mouse_Button4 =>
                    Editor.Region.Start;
                when Mouse_Button4_Up =>
                    Editor.Region.Finish;
                when Mouse_Button4_Dbl =>
                    Common.Definition
                       (Name => "<CURSOR>", In_Place => True, Visible => True);
                when Mouse_Button5 =>
                    Editor.Region.Copy;
                when Mouse_Button5_Dbl =>
                    Common.Object.Child (Repeat => 1);
                when Mouse_Button6_Dbl =>
                    Common.Enclosing (In_Place => True, Library => False);
                when Menu_Pick =>
                    case Key_2 is
                        when 'a' =>
                            case Key_3 is  
                                when 'a' =>
                                    Common.Object.Insert;  
                                when 'b' =>
                                    Common.Edit;  
                                when 'c' =>
                                    Common.Promote;  
                                when 'd' =>
                                    Common.Commit;  
                                when 'e' =>
                                    Common.Revert;  
                                when 'f' =>
                                    Common.Abandon;  
                                when 'g' =>
                                    Common.Object.Copy;  
                                when 'h' =>
                                    Common.Object.Move;  
                                when 'i' =>
                                    Common.Object.Delete;  
                                when 'j' =>
                                    Print (File => "<IMAGE>");
                                when 'k' =>
                                    Editor.Quit  
                                       (False = False);
                                when others =>
                                    null;
                            end case;
                        when 'b' =>
                            case Key_3 is
                                when 'a' =>
                                    Editor.Hold_Stack.Top;
                                when 'b' =>
                                    Editor.Region.Delete;
                                when 'c' =>
                                    Io.Echo_Line ("not yet implemented");
                                when 'd' =>
                                    Io.Echo_Line ("not yet implemented");
                                when 'e' =>
                                    Io.Echo_Line ("not yet implemented");
                                when 'f' =>
                                    Editor.Region.Copy;
                                when 'g' =>
                                    Io.Echo_Line ("not yet implemented");
                                when others =>
                                    null;
                            end case;
                        when 'c' =>
                            case Key_3 is
                                when 'a' =>
                                    Editor.Set.Designation_Off;
                                when 'b' =>
                                    Editor.Region.Beginning_Of;
                                when 'c' =>
                                    Editor.Region.End_Of;
                                when 'd' =>
                                    Editor.Region.Capitalize;
                                when 'e' =>
                                    Editor.Region.Lower_Case;
                                when 'f' =>
                                    Editor.Region.Upper_Case;
                                when 'g' =>
                                    Editor.Region.Comment;
                                when 'h' =>
                                    Editor.Region.Uncomment;
                                when 'i' =>
                                    Editor.Region.Fill;
                                when 'j' =>
                                    Editor.Region.Justify;
                                when others =>
                                    null;
                            end case;
                        when 'd' =>
                            case Key_3 is
                                when 'a' =>
                                    Common.Definition (Name => "<CURSOR>",
                                                       In_Place => False,
                                                       Visible => True);
                                when 'b' =>
                                    Common.Definition (Name => "<CURSOR>",
                                                       In_Place => True,
                                                       Visible => True);
                                when 'c' =>
                                    Common.Enclosing (In_Place => False,
                                                      Library => True);
                                when 'd' =>
                                    Common.Enclosing (In_Place => True,
                                                      Library => True);
                                when 'e' =>
                                    Common.Enclosing (In_Place => False,
                                                      Library => False);
                                when 'f' =>
                                    Common.Enclosing (In_Place => True,
                                                      Library => False);
                                when 'g' =>
                                    Ada.Other_Part (Name => "<IMAGE>",
                                                    In_Place => False);
                                when 'h' =>
                                    Ada.Other_Part (Name => "<IMAGE>",
                                                    In_Place => True);
                                when 'i' =>
                                    What.Home_Library;
                                    -- when 'j' =>
                                    --     Mail.Edit;
                                when 'k' =>
                                    Editor.Window.Directory;
                                when others =>
                                    null;
                            end case;
                        when 'e' =>
                            case Key_3 is
                                when 'a' =>
                                    Ada.Code_Unit;
                                when 'b' =>
                                    Compilation.Make
                                       (Unit => "<IMAGE>",
                                        Scope => Compilation.All_Parts,
                                        Goal => Compilation.Coded,
                                        Limit => "<WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'c' =>
                                    Compilation.Make
                                       (Unit => "<IMAGE>",
                                        Scope => Compilation.Load_Views,
                                        Goal => Compilation.Coded,
                                        Limit => "<ALL_WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'd' =>
                                    Ada.Install_Unit;
                                when 'e' =>
                                    Compilation.Promote
                                       (Unit => "<IMAGE>",
                                        Scope => Compilation.All_Parts,
                                        Goal => Compilation.Installed,
                                        Limit => "<WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'f' =>
                                    Compilation.Promote
                                       (Unit => "<IMAGE>",
                                        Scope => Compilation.All_Parts,
                                        Goal => Compilation.Installed,
                                        Limit => "<ALL_WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'g' =>
                                    Ada.Install_Stub;
                                when 'h' =>
                                    Ada.Withdraw (Name => "<IMAGE>");
                                when 'i' =>
                                    Ada.Source_Unit;
                                when 'j' =>
                                    Compilation.Demote
                                       (Unit => "<SELECTION>",
                                        Goal => Compilation.Source,
                                        Limit => "<WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'k' =>
                                    Compilation.Demote
                                       (Unit => "<SELECTION>",
                                        Goal => Compilation.Source,
                                        Limit => "<ALL_WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'l' =>
                                    Compilation.Demote
                                       (Unit => "<SELECTION>",
                                        Goal => Compilation.Archived,
                                        Limit => "<DIRECTORIES>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when 'm' =>
                                    Compilation.Demote
                                       (Unit => "<SELECTION>",
                                        Goal => Compilation.Archived,
                                        Limit => "<WORLDS>",
                                        Effort_Only => False,
                                        Response => "<PROFILE>");
                                when others =>
                                    null;
                            end case;
                        when 'f' =>
                            case Key_3 is
                                when 'a' =>
                                    Common.Semanticize;
                                when 'b' =>
                                    Common.Clear_Underlining;
                                when 'c' =>
                                    Ada.Get_Errors;
                                when 'd' =>
                                    Ada.Show_Usage (Name => "<CURSOR>",
                                                    Global => False,
                                                    Limit => "<WORLDS>",
                                                    Closure => False);
                                when 'e' =>
                                    Ada.Show_Usage (Name => "<CURSOR>",
                                                    Global => True,
                                                    Limit => "<ALL_WORLDS>",
                                                    Closure => False);
                                when 'f' =>
                                    Ada.Show_Unused
                                       (In_Unit => "<IMAGE>",
                                        Check_Other_Units => False);
                                when 'g' =>
                                    Ada.Show_Unused (In_Unit => "<IMAGE>",
                                                     Check_Other_Units => True);
                                when others =>
                                    null;
                            end case;
                        when 'g' =>
                            case Key_3 is
                                when 'a' =>
                                    Common.Create_Command;
                                when 'b' =>
                                    Common.Object.Insert;
                                when 'c' =>
                                    Ada.Create_Body (Name => "<IMAGE>");
                                when 'd' =>
                                    Ada.Create_Private (Name => "<IMAGE>");
                                when 'e' =>
                                    Ada.Make_Separate;
                                when 'f' =>
                                    Ada.Make_Inline;
                                when 'j' =>
                                    Io.Echo_Line ("not yet implemented");
                                when others =>
                                    null;
                            end case;
                        when 'h' =>
                            case Key_3 is
                                when 'a' =>
                                    Command.Debug;
                                when 'b' =>
                                    Debug.Run (Stop_At => Debug.Statement,
                                               Count => 1,
                                               In_Task => "");
                                when 'c' =>
                                    Debug.Run (Stop_At => Debug.Local_Statement,
                                               Count => 1,
                                               In_Task => "");
                                when 'd' =>
                                    Debug.Execute (Name => "");
                                when 'e' =>
                                    Debug.Put (Variable => "<SELECTION>",
                                               Stack_Frame => 0);
                                when 'f' =>
                                    Debug.Modify (New_Value => "",
                                                  Variable => "<SELECTION>",
                                                  Stack_Frame => 0);
                                when 'g' =>
                                    Debug.Stack
                                       (For_Task => "", Start => 0, Count => 0);
                                when 'h' =>
                                    Debug.Source (Location => "",
                                                  Stack_Frame => 0);
                                when 'i' =>
                                    Debug.Break (Location => "<SELECTION>",
                                                 Stack_Frame => 0,
                                                 Count => 1,
                                                 In_Task => "",
                                                 Default_Lifetime => True);
                                when 'j' =>
                                    Debug.Remove (Breakpoint => 0,
                                                  Delete => False);
                                when 'k' =>
                                    Debug.Activate (Breakpoint => 0);
                                when others =>
                                    null;
                            end case;
                        when 'i' =>
                            case Key_3 is
                                when 'b' =>
                                    Io.Echo_Line ("not yet implemented");
                                when 'c' =>
                                    Job.Connect (The_Job => 0);  
                                when 'e' =>
                                    Job.Enable (The_Job => 0,
                                                The_Session => "");  
                                when 'f' =>
                                    Command.Spawn;
                                when 'g' =>
                                    Text.End_Of_Input;
                                when others =>
                                    null;
                            end case;
                        when 'j' =>
                            case Key_3 is
                                when 'a' =>                                   Cmvc.Check_In (What_Object => "<CURSOR>",
                                                   Comments => "",
                                                   Work_Order => "<DEFAULT>",
                                                   Response => "<PROFILE>");
                                when 'b' =>
                                    Cmvc.Check_Out
                                       (What_Object => "<CURSOR>",
                                        Comments => "",
                                        Allow_Implicit_Accept_Changes => True,
                                        Allow_Demotion => False,
                                        Remake_Demoted_Units => True,
                                        Goal => Compilation.Coded,
                                        Expected_Check_In_Time => "<TOMORROW>",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when 'c' =>
                                    Cmvc.Accept_Changes
                                       (Destination => "<CURSOR>",
                                        Source => "<LATEST>",
                                        Allow_Demotion => False,
                                        Remake_Demoted_Units => True,
                                        Goal => Compilation.Coded,
                                        Comments => "",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when 'd' =>
                                    Cmvc.Make_Controlled
                                       (What_Object => "<CURSOR>",
                                        Reservation_Token_Name =>
                                           "<AUTO_GENERATE>",
                                        Join_With_View => "<NONE>",
                                        Save_Source => True,
                                        Comments => "",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when 'e' =>
                                    Cmvc.Make_Uncontrolled
                                       (What_Object => "<CURSOR>",
                                        Comments => "",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when 'f' =>
                                    Cmvc.Revert
                                       (What_Object => "<SELECTION>",
                                        To_Generation => -1,
                                        Make_Latest_Generation => False,
                                        Allow_Demotion => False,
                                        Remake_Demoted_Units => True,
                                        Goal => Compilation.Coded,
                                        Comments => "",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when 'g' =>
                                    Cmvc.Abandon_Reservation
                                       (What_Object => "<SELECTION>",
                                        Allow_Demotion => False,
                                        Remake_Demoted_Units => True,
                                        Goal => Compilation.Coded,
                                        Comments => "",
                                        Work_Order => "<DEFAULT>",
                                        Response => "<PROFILE>");
                                when others =>
                                    null;
                            end case;
                        when 'k' =>
                            case Key_3 is
                                when 'a' =>
                                    What.Time;
                                when 'b' =>
                                    What.Users;
                                when 'c' =>
                                    What.Load (Verbose => True);
                                when 'd' =>
                                    What.Jobs (Interval => 10,
                                               User_Jobs_Only => False,
                                               My_Jobs_Only => False,
                                               Running_Jobs_Only => True);
                                when 'e' =>
                                    What.Object (Name => "<IMAGE>");
                                when 'f' =>
                                    What.Locks (Name => "<IMAGE>");
                                when 'g' =>
                                    Access_List.Display
                                       (For_Object => "<CURSOR>");
                                when 'h' =>
                                    What.Line;
                                when 'i' =>
                                    What.Tabs;
                                when 'j' =>
                                    What.Version;
                                when others =>
                                    null;
                            end case;
                            -- when 'l' =>
                            --     case Key_3 is
                            --         when 'a' =>
                            --             Mail.Edit;
                            --         when 'c' =>
                            --             Mail.Send;
                            --         when 'd' =>
                            --             Mail.Reply;
                            --         when 'e' =>
                            --             Mail.Forward;
                            --         when 'f' =>
                            --             Mail.Remail;
                            --         when 'g' =>
                            --             Mail.Notify;
                            --         when 'i' =>
                            --             Mail.Expunge;
                            --         when others =>
                            --             null;
                            --     end case;
                        when 'y' =>
                            case Key_3 is
                                when 'a' =>
                                    Common.Promote;
                                when 'b' =>
                                    Common.Demote;  
                                when 'c' =>
                                    Common.Edit (Name => "<IMAGE>",
                                                 In_Place => False,
                                                 Visible => True);
                                when 'd' =>
                                    Common.Format;
                                when 'e' =>
                                    Common.Complete (Menu => True);
                                when 'f' =>
                                    Common.Semanticize;
                                when 'g' =>
                                    Common.Explain;
                                when 'h' =>
                                    Common.Expand (Repeat => 1);
                                when 'i' =>
                                    Common.Elide (Repeat => 1);
                                when 'j' =>
                                    case Key_4 is
                                        when 'a' =>
                                            Common.Object.Insert;
                                        when 'b' =>
                                            Common.Object.Copy;
                                        when 'c' =>
                                            Common.Object.Move;
                                        when 'd' =>
                                            Common.Object.Delete;
                                        when 'e' =>
                                            Editor.Cursor.Previous
                                               (Repeat => 1,
                                                Prompt => True,
                                                Underline => True);
                                        when 'f' =>
                                            Editor.Cursor.Next
                                               (Repeat => 1,
                                                Prompt => True,
                                                Underline => True);
                                        when 'g' =>
                                            Common.Object.Parent (Repeat => 1);
                                        when 'h' =>
                                            Common.Object.Child (Repeat => 1);
                                        when others =>
                                            null;
                                    end case;
                                when others =>
                                    null;
                            end case;
                        when 'x' =>
                            case Key_3 is
                                when 'a' =>
                                    What.Does (Name => "<CURSOR>");
                                when 'b' =>
                                    Editor.Image.Find (Name => "Help Window");
                                when 'c' =>
                                    Editor.Key.Name (Key_Code => "");
                                when 'd' =>
                                    What.Does (Name => "Help_on_Help");
                                when others =>
                                    null;
                            end case;
                        when 'A' =>
                            case Key_3 is
                                when
                                   '0' => -- I put 0 here because 1 does not work, dunno why
                                    case Key_4 is
                                        when 'a' =>
                                            Common.Promote;
                                        when 'b' =>
                                            Command.Debug;
                                        when 'c' =>
                                            Common.Format;
                                        when 'd' =>
                                            What.Home_Library;
                                        when 'e' =>
                                            Common.Object.Delete;
                                            -- when 'f' =>
                                            --     Mail.Send;
                                        when 'g' =>
                                            Editor.Search.Next
                                               (Target => "",
                                                Wildcard => False);
                                        when 'h' =>
                                            Editor.Search.Previous
                                               (Target => "",
                                                Wildcard => False);
                                        when 'i' =>
                                            Common.Create_Command;
                                        when others =>
                                            null;
                                    end case;
                                when '2' =>
                                    case Key_4 is
                                        when 'a' =>
                                            Common.Edit (Name => "<IMAGE>",
                                                         In_Place => False,
                                                         Visible => True);
                                        when 'b' =>
                                            Debug.Run (Stop_At =>
                                                          Debug.Statement,
                                                       Count => 1,
                                                       In_Task => "");
                                        when 'c' =>
                                            Common.Complete (Menu => True);
                                        when 'e' =>
                                            Print (File => "<IMAGE>");
                                        when 'f' =>
                                            Message.Send
                                               (Who => [STRING-expression],
                                                Message => [STRING-expression]);
                                        when 'g' =>
                                            Editor.Search.Replace_Next
                                               (Target => "",
                                                Replacement => "",
                                                Repeat => 1,
                                                Wildcard => False);
                                        when 'h' =>
                                            Editor.Search.Replace_Previous
                                               (Target => "",
                                                Replacement => "",
                                                Repeat => 1,
                                                Wildcard => False);
                                        when others =>
                                            null;
                                    end case;
                                when '3' =>
                                    case Key_4 is
                                        when 'a' =>
                                            Job.Kill (The_Job => 0,
                                                      The_Session => "");
                                        when 'b' =>
                                            Debug.Break
                                               (Location => "<SELECTION>",
                                                Stack_Frame => 0,
                                                Count => 1,
                                                In_Task => "",
                                                Default_Lifetime => True);
                                        when 'c' =>
                                            Common.Semanticize;
                                        when 'd' =>
                                            Editor.Key.Prompt (Key_Code => "");
                                        when 'e' =>
                                            What.Time;  
                                        when 'f' =>
                                            Editor.Mark.Push (Repeat => 1);
                                        when 'g' =>
                                            Editor.Cursor.Previous
                                               (Repeat => 1,
                                                Prompt => True,
                                                Underline => True);
                                        when 'h' =>
                                            Editor.Cursor.Next
                                               (Repeat => 1,
                                                Prompt => True,
                                                Underline => True);
                                        when others =>
                                            null;
                                    end case;
                                when others =>
                                    null;
                            end case;
                        when 'B' =>
                            case Key_3 is
                                when 'a' =>
                                    Editor.Image.Beginning_Of (Offset => 0);
                                when 'b' =>
                                    Editor.Image.Up (Repeat => 0);
                                when 'c' =>
                                    Editor.Image.Left (Repeat => 0);
                                when 'd' =>
                                    Editor.Image.Right (Repeat => 0);
                                when 'e' =>
                                    Editor.Image.Down (Repeat => 0);
                                when 'f' =>
                                    Editor.Set.Fill_Mode (On => True);
                                when 'h' =>
                                    Editor.Window.Directory;
                                when 'i' =>
                                    Editor.Image.End_Of (Offset => 0);
                                when 'j' =>
                                    Editor.Window.Previous (Repeat => 1);
                                when 'k' =>
                                    Editor.Window.Next (Repeat => 1);
                                when 'l' =>
                                    Editor.Window.Transpose (Offset => 1);
                                when 'm' =>
                                    Common.Abandon (Window => "<IMAGE>");
                                when 'n' =>
                                    Editor.Window.Promote;
                                when 'o' =>
                                    Editor.Window.Join (Repeat => 1);
                                when 'p' =>
                                    Editor.Window.Delete;
                                when 'q' =>
                                    Editor.Window.Demote;
                                when 'r' =>
                                    Editor.Window.Copy;
                                when 's' =>
                                    Editor.Window.Join (Repeat => 10);
                                when 't' =>
                                    Editor.Window.Focus;
                                when 'u' =>
                                    Editor.Window.Expand (Lines => 4);
                                when 'v' =>
                                    Editor.Window.Expand (Lines => -4);
                                when others =>
                                    null;
                            end case;
                        when 'C' =>
                            case Key_3 is
                                when 'a' =>
                                    Editor.Region.Beginning_Of;
                                when 'b' =>
                                    Editor.Region.End_Of;
                                when 'c' =>
                                    Editor.Region.Start;
                                when 'd' =>
                                    Editor.Region.Finish;
                                when 'e' =>
                                    Editor.Region.On;
                                when 'f' =>
                                    Editor.Region.Off;
                                when 'g' =>
                                    Editor.Alert;
                                when 'h' =>
                                    Editor.Region.Comment;
                                when 'i' =>
                                    Editor.Region.Uncomment;
                                when 'j' =>
                                    Editor.Region.Capitalize;
                                when 'k' =>
                                    Editor.Region.Upper_Case;
                                when 'l' =>
                                    Editor.Region.Lower_Case;
                                when 'm' =>
                                    Editor.Region.Delete;
                                when 'n' =>
                                    Editor.Region.Copy;
                                when 'o' =>
                                    Editor.Region.Move;
                                when 'p' =>
                                    Editor.Region.Fill
                                       (Column => 0, Leading => "");
                                when 'q' =>
                                    Editor.Region.Justify
                                       (Column => 0, Leading => "");
                                when 'r' =>
                                    Editor.Hold_Stack.Push (Repeat => 1);
                                when 's' =>
                                    Editor.Hold_Stack.Top;
                                when 't' =>
                                    Editor.Hold_Stack.Next (Repeat => 1);
                                when 'u' =>
                                    Editor.Hold_Stack.Previous (Repeat => 1);
                                when 'v' =>
                                    Editor.Line.Transpose (Offset => 1);
                                when 'w' =>
                                    Editor.Line.Copy (Repeat => 1);
                                when 'x' =>
                                    Editor.Char.Quote;
                                when 'y' =>
                                    Editor.Mark.Push (Repeat => 1);
                                when '0' =>
                                    Editor.Mark.Top;
                                when '1' =>
                                    Editor.Mark.Next (Repeat => 1);
                                when '2' =>
                                    Editor.Mark.Previous (Repeat => 1);
                                when '3' =>
                                    Editor.Cursor.Next (Repeat => 1,
                                                        Prompt => True,
                                                        Underline => False);
                                when '4' =>
                                    Editor.Cursor.Previous (Repeat => 1,
                                                            Prompt => True,
                                                            Underline => False);
                                when '5' =>
                                    Editor.Cursor.Next (Repeat => 1,
                                                        Prompt => False,
                                                        Underline => True);
                                when '6' =>
                                    Editor.Cursor.Previous (Repeat => 1,
                                                            Prompt => False,
                                                            Underline => True);
                                when '7' =>
                                    Editor.Macro.Start;
                                when '8' =>
                                    Editor.Macro.Finish;
                                when '9' =>
                                    Editor.Macro.Execute
                                       (Repeat => 1, Prior => 0);
                                when others =>
                                    null;
                            end case;  
                        when others =>
                            null;
                    end case;
                when others =>
                    null;
            end case;

        when Interrupt =>
            case Key_1 is
                when others =>
                    null;
            end case;

    end case;

end Xr6us_Commands;

E3 Meta Data

    nblk1=37
    nid=0
    hdr6=6e
        [0x00] rec0=2e rec1=00 rec2=01 rec3=048
        [0x01] rec0=01 rec1=00 rec2=32 rec3=010
        [0x02] rec0=12 rec1=00 rec2=02 rec3=010
        [0x03] rec0=10 rec1=00 rec2=03 rec3=002
        [0x04] rec0=13 rec1=00 rec2=04 rec3=03e
        [0x05] rec0=00 rec1=00 rec2=33 rec3=01e
        [0x06] rec0=13 rec1=00 rec2=05 rec3=024
        [0x07] rec0=19 rec1=00 rec2=06 rec3=03a
        [0x08] rec0=02 rec1=00 rec2=26 rec3=030
        [0x09] rec0=16 rec1=00 rec2=07 rec3=020
        [0x0a] rec0=14 rec1=00 rec2=08 rec3=046
        [0x0b] rec0=0d rec1=00 rec2=09 rec3=06e
        [0x0c] rec0=13 rec1=00 rec2=0a rec3=092
        [0x0d] rec0=14 rec1=00 rec2=0b rec3=046
        [0x0e] rec0=12 rec1=00 rec2=0c rec3=05a
        [0x0f] rec0=10 rec1=00 rec2=0d rec3=01c
        [0x10] rec0=13 rec1=00 rec2=0e rec3=054
        [0x11] rec0=00 rec1=00 rec2=34 rec3=01c
        [0x12] rec0=11 rec1=00 rec2=0f rec3=030
        [0x13] rec0=10 rec1=00 rec2=10 rec3=032
        [0x14] rec0=11 rec1=00 rec2=11 rec3=02a
        [0x15] rec0=11 rec1=00 rec2=12 rec3=004
        [0x16] rec0=11 rec1=00 rec2=13 rec3=06c
        [0x17] rec0=13 rec1=00 rec2=14 rec3=008
        [0x18] rec0=12 rec1=00 rec2=15 rec3=074
        [0x19] rec0=11 rec1=00 rec2=16 rec3=044
        [0x1a] rec0=10 rec1=00 rec2=17 rec3=03e
        [0x1b] rec0=15 rec1=00 rec2=18 rec3=002
        [0x1c] rec0=0e rec1=00 rec2=19 rec3=058
        [0x1d] rec0=10 rec1=00 rec2=1a rec3=05e
        [0x1e] rec0=10 rec1=00 rec2=1b rec3=076
        [0x1f] rec0=10 rec1=00 rec2=1c rec3=050
        [0x20] rec0=13 rec1=00 rec2=1d rec3=028
        [0x21] rec0=14 rec1=00 rec2=1e rec3=026
        [0x22] rec0=13 rec1=00 rec2=1f rec3=04a
        [0x23] rec0=02 rec1=00 rec2=35 rec3=03e
        [0x24] rec0=13 rec1=00 rec2=20 rec3=014
        [0x25] rec0=10 rec1=00 rec2=21 rec3=012
        [0x26] rec0=12 rec1=00 rec2=22 rec3=052
        [0x27] rec0=12 rec1=00 rec2=23 rec3=07a
        [0x28] rec0=01 rec1=00 rec2=36 rec3=016
        [0x29] rec0=11 rec1=00 rec2=24 rec3=010
        [0x2a] rec0=0e rec1=00 rec2=25 rec3=08c
        [0x2b] rec0=0b rec1=00 rec2=37 rec3=012
        [0x2c] rec0=10 rec1=00 rec2=27 rec3=06c
        [0x2d] rec0=10 rec1=00 rec2=28 rec3=068
        [0x2e] rec0=13 rec1=00 rec2=29 rec3=02e
        [0x2f] rec0=11 rec1=00 rec2=2a rec3=05a
        [0x30] rec0=13 rec1=00 rec2=2b rec3=016
        [0x31] rec0=14 rec1=00 rec2=2c rec3=02a
        [0x32] rec0=12 rec1=00 rec2=2d rec3=066
        [0x33] rec0=12 rec1=00 rec2=2e rec3=024
        [0x34] rec0=0f rec1=00 rec2=2f rec3=090
        [0x35] rec0=13 rec1=00 rec2=30 rec3=03c
        [0x36] rec0=0d rec1=00 rec2=31 rec3=000
    tail 0x21527564c847f63f50fbf 0x42a00088462060003