DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ B T ┃
Length: 58692 (0xe544) Types: TextFile Names: »B«
└─⟦bdeee703f⟧ Bits:30000538 8mm tape, Rational 1000, RWI 10_1_1 └─ ⟦545705153⟧ »DATA« └─⟦f9289093d⟧ └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦f9289093d⟧ └─⟦this⟧
with Access_List; with Ada; with Cmvc; with Command; with Common; with Compilation; --/ if DOCUMENT_FORMATTER then --// with COMPOSE; --/ end if; with Debug; --/ if DESIGN_FACILITY then --// with DESIGN_IMPLEMENTATION; --/ end if; with Editor; with Io; with Job; with Library; --/ if MAIL then --// with MAIL; --/ end if; with Operator; with Queue; with Script; --/ if SPELLER then --// with SPELLER; --/ end if; with System_Utilities; with Text; with What; with Pc101_Key_Names; ----This file generated on: July 14, 1991 at 6:49:29 AM ----From Rational Development source file !ENVIRONMENT.EDITOR_KEYS.REV10_WORKING.UNITS.CREATE_COMMANDS_FILES.MASTER_KEYS_FILE'V(77) ----By user: LMA ----For terminal type: PC101 procedure Pc101_Commands is use Pc101_Key_Names; type Intent is (Interrupt, Prompt, Execute); Action : Intent; Key1, Key2, Key3, Key4, Key5, Key6 : Key_Names; begin case Action is when Interrupt => case Key1 is when M_F2 => Debug.Stop (Name => ""); when C_G | Cs_G => Job.Interrupt; when M_G | Cm_G | Ms_G | Cms_G => Job.Kill (0); when others => null; end case; when Prompt => case Key1 is when Object => case Key2 is when 'l' | C_L | 'L' | Cs_L => Common.Revert; when others => null; end case; when M_F9 => Library.Create_Directory; when Cm_F9 => Text.Create; when Cs_F9 => Library.Create_World; when Image => case Key2 is when '/' | '?' => Editor.Image.Find (Name => ""); when others => null; end case; when others => null; end case; when Execute => case Key1 is when Set_Line => Editor.Screen.Set_Lines (66); when Set_Column => Editor.Screen.Set_Columns (80); when Menu_Pick => case Key2 is when '0' => Io.Echo ("User Menu-Pick 0" & Ascii.Lf); when '1' => Io.Echo ("User Menu-Pick 1" & Ascii.Lf); when '2' => Io.Echo ("User Menu-Pick 2" & Ascii.Lf); when '3' => Io.Echo ("User Menu-Pick 3" & Ascii.Lf); when '4' => Io.Echo ("User Menu-Pick 4" & Ascii.Lf); when '5' => Io.Echo ("User Menu-Pick 5" & Ascii.Lf); when '6' => Io.Echo ("User Menu-Pick 6" & Ascii.Lf); when '7' => Io.Echo ("User Menu-Pick 7" & Ascii.Lf); when '8' => Io.Echo ("User Menu-Pick 8" & Ascii.Lf); when '9' => Io.Echo ("User Menu-Pick 9" & Ascii.Lf); when others => null; end case; when Mouse_Cursor_Down | Numeric_2 => Editor.Cursor.Down; when Mouse_Cursor_Right | Numeric_6 => Editor.Cursor.Right; when Mouse_Screen_Down => Editor.Screen.Down; when Mouse_Screen_Right => Editor.Screen.Right; when Mouse_Button1 | S_Mouse_Button1 | Mouse_Button3 | S_Mouse_Button3 | Mouse_Button1_Up | Mouse_Button3_Up | Cs_Mouse_Button1_Dbl | Cs_Mouse_Button3_Dbl | C_Mouse_Button1_Dbl | C_Mouse_Button3_Dbl | Mouse_Button1_Move | C_Mouse_Button1_Move | Escape | S_Escape | M_Escape | Cs_Escape | Cms_Escape | Ms_Escape | Cm_Escape | C_Escape | Cm_F1 | Ms_F1 | Cms_F1 | Ms_F2 | Cms_F2 | Cm_F3 | Ms_F3 | Cms_F3 | Cm_F4 | Ms_F4 | Cms_F4 | Cms_F5 | Ms_F6 | Cms_F6 | Ms_F7 | Cms_F7 | Ms_F8 | Cms_F8 | Ms_F9 | Cms_F9 | Ms_F10 | Cms_F10 | Cms_F11 | Ms_F12 | Cms_F12 => Editor.Noop; when Cs_Mouse_Button1 => Editor.Region.Start; when C_Mouse_Button1 | C_Numeric_4 | Cm_Numeric_4 => Common.Object.Parent; when Cs_Mouse_Button3 | S_Mouse_Button1_Move | Cs_Mouse_Button1_Move => Editor.Region.Finish; when C_Mouse_Button3 | C_Numeric_6 | Cm_Numeric_6 => Common.Object.Child; when Mouse_Button1_Dbl | F5 => Common.Definition (Name => "<CURSOR>", In_Place => False, Visible => True); when Mouse_Button3_Dbl | M_F5 => Common.Enclosing (In_Place => False, Library => False); when S_Mouse_Button1_Dbl | S_F5 => Common.Definition (Name => "<CURSOR>", In_Place => True, Visible => True); when S_Mouse_Button3_Dbl | Ms_F5 => Common.Enclosing (In_Place => True, Library => False); when Mouse_Minus | M_Mark => Editor.Set.Argument_Minus; when Mouse_0 => Editor.Set.Argument_Digit (Argument => 0); when Mouse_1 => Editor.Set.Argument_Digit (Argument => 1); when Mouse_2 => Editor.Set.Argument_Digit (Argument => 2); when Mouse_3 => Editor.Set.Argument_Digit (Argument => 3); when Mouse_4 => Editor.Set.Argument_Digit (Argument => 4); when Mouse_5 => Editor.Set.Argument_Digit (Argument => 5); when Mouse_6 => Editor.Set.Argument_Digit (Argument => 6); when Mouse_7 => Editor.Set.Argument_Digit (Argument => 7); when Mouse_8 => Editor.Set.Argument_Digit (Argument => 8); when Mouse_9 => Editor.Set.Argument_Digit (Argument => 9); when Backspace | S_Backspace => Editor.Char.Delete_Backward; when C_Backspace | Cs_Backspace => Editor.Char.Delete_Spaces; when M_Backspace | Ms_Backspace => Editor.Word.Delete_Backward; when Cm_Backspace | Cms_Backspace => Editor.Line.Delete_Backward; when Tab | S_Tab => Editor.Char.Tab_Forward; when C_Tab | Cs_Tab => Editor.Char.Tab_Backward; when Cm_Tab | Cms_Tab => What.Tabs; when Ms_Tab => Editor.Char.Tab_To_Comment; when Carriage_Return => Editor.Line.Indent; when C_Carriage_Return | Cs_Carriage_Return => Common.Commit; when M_Carriage_Return | Ms_Carriage_Return => Command.Debug; when S_Carriage_Return => Editor.Line.Insert (1); when Object => case Key2 is when Tab => Editor.Char.Tab_To_Comment; when Carriage_Return | S_Carriage_Return | Promot | S_Promot | M_Image => Common.Commit; when Left | S_Left | Numeric_4 => Common.Object.Parent; when Up | S_Up | Numeric_8 | Numeric_9 => Common.Object.Previous; when Right | S_Right | Numeric_6 => Common.Object.Child; when Down | S_Down | Numeric_2 | Numeric_3 => Common.Object.Next; when F5 => Common.Definition (Name => "<CURSOR>", In_Place => False, Visible => False); when Numeric_1 | 'e' | C_E | 'E' | Cs_E => Common.Object.Last_Child; when Numeric_7 | 'a' | C_A | 'A' | Cs_A => Common.Object.First_Child; when '!' | '1' => Common.Expand; when '.' | '>' => Common.Elide; when '/' | '?' => Common.Explain; when 'b' | C_B | 'B' | Cs_B => Common.Object.First_Child; when 'c' | C_C | 'C' | Cs_C => Common.Object.Copy; when 'd' | C_D | 'D' | Cs_D | 'k' | C_K | 'K' | Cs_K => Common.Object.Delete; when 'g' | 'G' => Common.Abandon; when 'h' | C_H | 'H' | Cs_H => Common.Object.Parent; when 'i' | C_I | 'I' | Cs_I => Common.Object.Insert; when 'j' | C_J | 'J' | Cs_J => Common.Object.Child; when 'm' | C_M | 'M' | Cs_M => Common.Object.Move; when 'n' | C_N | 'N' | Cs_N => Common.Object.Next; when 'r' | C_R | 'R' | Cs_R => Common.Redo; when 's' | C_S | 'S' | Cs_S => Common.Sort_Image; when 'u' | C_U | 'U' | Cs_U => Common.Undo; when 'v' | C_V | 'V' | Cs_V => Common.Redo; when 'x' | C_X | 'X' | Cs_X => Common.Release; when others => null; end case; when Region => case Key2 is when Backspace | S_Backspace => Editor.Hold_Stack.Delete_Top; when Complt | S_Complt | 'q' | C_Q | 'Q' | Cs_Q => Editor.Region.Justify; when Format | S_Format => Editor.Region.Fill; when Left | S_Left | Numeric_4 => Editor.Hold_Stack.Previous; when Up | S_Up | Numeric_8 | Numeric_9 => Editor.Hold_Stack.Top; when Right | S_Right | Numeric_6 => Editor.Hold_Stack.Next; when Down | S_Down | Numeric_2 | Numeric_3 => Editor.Hold_Stack.Push; when Numeric_1 | 'e' | C_E | 'E' | Cs_E => Editor.Region.End_Of; when Numeric_7 | 'a' | C_A | 'A' | Cs_A => Editor.Region.Beginning_Of; when '"' | ''' | '6' | '^' | C_Circumflex => Editor.Region.Capitalize; when '(' | '9' | '[' | '{' => Editor.Region.Start; when ')' | '0' | ']' | '}' => Editor.Region.Finish; when '+' | '=' => Editor.Region.Uncomment; when ',' | '<' => Editor.Region.Lower_Case; when '-' | '_' | C_Underline => Editor.Region.Comment; when '.' | '>' => Editor.Region.Upper_Case; when 'b' | C_B | 'B' | Cs_B => Editor.Region.Beginning_Of; when 'c' | C_C | 'C' | Cs_C => Editor.Region.Copy; when 'd' | C_D | 'D' | Cs_D | 'k' | C_K | 'K' | Cs_K => Editor.Region.Delete; when 'f' | C_F | 'F' | Cs_F => Editor.Region.Fill; when 'h' | C_H | 'H' | Cs_H => Editor.Hold_Stack.Previous; when 'j' | C_J | 'J' | Cs_J => Editor.Hold_Stack.Next; when 'm' | C_M | 'M' | Cs_M => Editor.Region.Move; when 'n' | C_N | 'N' | Cs_N => Editor.Hold_Stack.Push; when 'p' | C_P | 'P' | Cs_P => Editor.Hold_Stack.Copy_Top; when 'r' | C_R | 'R' | Cs_R => Editor.Hold_Stack.Rotate; when 't' | C_T | 'T' | Cs_T => Editor.Hold_Stack.Swap; when 'u' | C_U | 'U' | Cs_U => Editor.Hold_Stack.Top; when 'x' | C_X | 'X' | Cs_X => Editor.Region.Off; when others => null; end case; when Window => case Key2 is when Backspace | S_Backspace => Editor.Window.Join (-1); when Carriage_Return | S_Carriage_Return | Promot | S_Promot | M_Image | 'm' | C_M | 'M' | Cs_M | 'z' | C_Z | 'Z' | Cs_Z => Editor.Window.Promote; when Format | S_Format => Editor.Window.Focus; when Left | S_Left | Numeric_4 => Editor.Window.Parent; when Up | S_Up | Numeric_8 | Numeric_9 => Editor.Window.Previous; when Right | S_Right | Numeric_6 => Editor.Window.Child; when Down | S_Down | Numeric_2 | Numeric_3 => Editor.Window.Next; when F5 => Editor.Window.Directory; when F8 | S_F8 | 'y' | C_Y | 'Y' | Cs_Y => Editor.Window.Demote; when Numeric_1 | 'e' | C_E | 'E' | Cs_E => Editor.Window.End_Of; when Numeric_7 | 'a' | C_A | 'A' | Cs_A => Editor.Window.Beginning_Of; when '!' | '1' => Editor.Window.Expand; when '#' | '3' => Editor.Window.Frames (3); when '$' | '4' => Editor.Window.Frames (4); when '%' | '5' => Editor.Window.Frames (5); when '&' | '7' => Editor.Window.Frames (7); when '.' | '>' => Editor.Window.Expand (-4); when '/' | '?' => Editor.Window.Directory; when '2' | '@' | C_At_Sign => Editor.Window.Frames (2); when '6' | '^' | C_Circumflex => Editor.Window.Frames (6); when 'b' | C_B | 'B' | Cs_B => Editor.Window.Beginning_Of; when 'c' | C_C | 'C' | Cs_C => Editor.Window.Copy; when 'd' | C_D | 'D' | Cs_D | 'k' | C_K | 'K' | Cs_K | 'w' | C_W | 'W' | Cs_W | 'x' | C_X | 'X' | Cs_X => Editor.Window.Delete; when 'f' | C_F | 'F' | Cs_F => Editor.Window.Focus; when 'h' | C_H | 'H' | Cs_H => Common.Enclosing (In_Place => False, Library => False); when 'j' | C_J | 'J' | Cs_J => Editor.Window.Join (1); when 'n' | C_N | 'N' | Cs_N => Editor.Window.Next; when 'o' | C_O | 'O' | Cs_O => Editor.Window.Join (1); when 't' | C_T | 'T' | Cs_T => Editor.Window.Transpose; when 'u' | C_U | 'U' | Cs_U => Editor.Window.Previous; when 'v' | C_V | 'V' | Cs_V => Editor.Window.Child; when others => null; end case; when Promot | S_Promot => Common.Promote; when C_Promot | Cs_Promot => Command.Spawn; when M_Promot | Ms_Promot => Command.Debug; when Complt | S_Complt => Common.Complete; --/ if DESIGN_FACILITY then --// when M_COMPLT => --// DESIGN_IMPLEMENTATION.COMPLETE (INCLUDE_OPTIONAL_ANNOTATIONS => FALSE); --/ end if; when Format | S_Format => Common.Format; --/ if DESIGN_FACILITY then --// when M_FORMAT => --// DESIGN_IMPLEMENTATION.FORMAT; --/ end if; when Left => Editor.Cursor.Left; when C_Left => Common.Object.Parent; when M_Left => Editor.Word.Previous; when Cm_Left => Common.Enclosing (In_Place => False, Library => False); when S_Left => Editor.Line.Beginning_Of; when Cs_Left => Editor.Screen.Left; when Ms_Left => Editor.Image.Left; when Cms_Left => Editor.Screen.Previous; when Up => Editor.Cursor.Up; when C_Up => Common.Object.Previous; when M_Up | Ms_Up => Editor.Cursor.Previous (Prompt => True, Underline => True); when Cm_Up | M_Z | Ms_Z => Editor.Window.Previous; when S_Up => Editor.Image.Up; when Cs_Up => Editor.Screen.Up; when Cms_Up => Editor.Screen.Top; when Right => Editor.Cursor.Right; when C_Right => Common.Object.Child; when M_Right => Editor.Word.Next; when Cm_Right => Common.Definition (Name => "<CURSOR>", In_Place => False, Visible => False); when S_Right => Editor.Line.End_Of; when Cs_Right => Editor.Screen.Right; when Ms_Right => Editor.Image.Right; when Cms_Right => Editor.Screen.Next; when Down => Editor.Cursor.Down; when C_Down => Common.Object.Next; when M_Down | Ms_Down => Editor.Cursor.Next (Prompt => True, Underline => True); when Cm_Down | M_V | Ms_V => Editor.Window.Next; when S_Down => Editor.Image.Down; when Cs_Down => Editor.Screen.Down; when Cms_Down => Editor.Screen.Push; when F1 => Editor.Key.Prompt (Key_Code => ""); when C_F1 => Editor.Key.Name; when M_F1 => What.Does (Name => "Help_on_Help"); when S_F1 => What.Does (Name => "<CURSOR>"); when Cs_F1 => Editor.Image.Find ("Help Window"); when F2 => Debug.Run; when C_F2 => Debug.Run (Stop_At => Debug.Local_Statement); when Cm_F2 => Debug.Task_Display; when S_F2 => Debug.Execute; when Cs_F2 => Debug.Run (Debug.Returned); when F3 => Debug.Source (Location => "", Stack_Frame => 0); when C_F3 => Debug.Remove (Breakpoint => 0, Delete => False); when M_F3 => Debug.Activate (Breakpoint => 0); when S_F3 => Debug.Break (Location => "<SELECTION>", Stack_Frame => 0, Count => 1, In_Task => "", Default_Lifetime => True); when Cs_F3 => Debug.Show; when F4 => Debug.Put; when C_F4 => Debug.Propagate (Name => "<SELECTION>", In_Task => "", At_Location => ""); when M_F4 => Debug.Catch (Name => "<SELECTION>", In_Task => "", At_Location => ""); when S_F4 => Debug.Stack; when Cs_F4 => Debug.Current_Debugger (""); when C_F5 => Ada.Other_Part (Name => "<IMAGE>", In_Place => False); when Cm_F5 => What.Home_Library; when Cs_F5 => Ada.Other_Part (Name => "<IMAGE>", In_Place => True); when F6 => Cmvc.Check_Out (What_Object => "<CURSOR>", Comments => "", Allow_Demotion => False, Allow_Implicit_Accept_Changes => True, Expected_Check_In_Time => "<TOMORROW>", Work_Order => "<DEFAULT>", Response => "<PROFILE>"); when C_F6 => Cmvc.Check_In (What_Object => "<CURSOR>", Comments => "", Work_Order => "<DEFAULT>", Response => "<PROFILE>"); when M_F6 => Cmvc.Notes (What_Object => "<CURSOR>", In_Place => False); when Cm_F6 => Cmvc.Show (Objects => "<CURSOR>", Response => "<PROFILE>"); when S_F6 => Cmvc.Edit (View_Or_Config => "<CURSOR>", In_Place => False, Allow_Check_Out => True, Allow_Check_In => True, Allow_Accept_Changes => True); when Cs_F6 => Cmvc.Accept_Changes (Destination => "<CURSOR>", Source => "<LATEST>", Allow_Demotion => False, Comments => "", Work_Order => "<DEFAULT>", Response => "<PROFILE>"); when F7 => Ada.Install_Unit; when C_F7 => Ada.Code_Unit; when M_F7 => Compilation.Promote (Unit => "<IMAGE>", Scope => Compilation.All_Parts, Goal => Compilation.Installed, Limit => "<WORLDS>", Effort_Only => False, Response => "<PROFILE>"); when Cm_F7 => Compilation.Make (Unit => "<IMAGE>", Scope => Compilation.Load_Views, Goal => Compilation.Coded, Limit => "<ALL_WORLDS>", Effort_Only => False, Response => "<PROFILE>"); when S_F7 => Ada.Install_Stub; when Cs_F7 => Compilation.Make (Unit => "<IMAGE>", Scope => Compilation.All_Parts, Goal => Compilation.Coded, Limit => "<WORLDS>", Effort_Only => False, Response => "<PROFILE>"); when F8 => Common.Edit; when C_F8 => Ada.Source_Unit; when M_F8 => Ada.Withdraw; when Cm_F8 => Compilation.Demote (Unit => "<SELECTION>", Goal => Compilation.Installed, Limit => "<WORLDS>", Effort_Only => False, Response => "<PROFILE>"); when S_F8 => Common.Demote; when Cs_F8 => Compilation.Demote (Unit => "<SELECTION>", Goal => Compilation.Source, Limit => "<WORLDS>", Effort_Only => False, Response => "<PROFILE>"); when F9 => Common.Create_Command; when C_F9 => Common.Object.Insert; when S_F9 => Ada.Create_Body; when F10 => Common.Semanticize; when C_F10 => Ada.Show_Usage (Name => "<CURSOR>", Global => False, Limit => "<WORLDS>", Closure => False); when M_F10 => Ada.Show_Unused (In_Unit => "<IMAGE>", Check_Other_Units => False); when Cm_F10 => Ada.Show_Unused (In_Unit => "<IMAGE>", Check_Other_Units => True); when S_F10 => Common.Explain; when Cs_F10 => Ada.Show_Usage (Name => "<CURSOR>", Global => True, Limit => "<ALL_WORLDS>", Closure => False); when F11 => Editor.Cursor.Next (Prompt => True, Underline => True); when C_F11 => Editor.Cursor.Previous (Prompt => True, Underline => True); when M_F11 => Editor.Set.Designation_Off; when Cm_F11 => Ada.Get_Errors; when S_F11 => Editor.Cursor.Next (Prompt => False, Underline => True); when Cs_F11 => Editor.Cursor.Previous (Prompt => False, Underline => True); when Ms_F11 => Common.Clear_Underlining; when F12 => What.Users (All_Users => True); when C_F12 => What.Locks (Name => "<IMAGE>"); when M_F12 => What.Load; when Cm_F12 => Job.Connect (0); when S_F12 => What.Object (Name => "<IMAGE>"); when Cs_F12 => Access_List.Display (For_Object => "<CURSOR>"); when Line => case Key2 is when Backspace | S_Backspace => Editor.Line.Delete_Backward; when Up | S_Up | Numeric_8 | Numeric_9 => Editor.Cursor.Up; when Down | S_Down | Numeric_2 | Numeric_3 => Editor.Cursor.Down; when Numeric_1 | 'e' | C_E | 'E' | Cs_E => Editor.Line.End_Of; when Numeric_7 | 'a' | C_A | 'A' | Cs_A => Editor.Line.Beginning_Of; when '$' | '4' => Editor.Line.Center; when ',' | '<' => Editor.Line.Lower_Case; when '.' | '>' => Editor.Line.Upper_Case; when '/' | '?' => What.Line; when '6' | '^' | C_Circumflex => Editor.Line.Capitalize; when 'b' | C_B | 'B' | Cs_B => Editor.Line.Beginning_Of; when 'c' | C_C | 'C' | Cs_C => Editor.Line.Copy; when 'd' | C_D | 'D' | Cs_D => Editor.Line.Delete; when 'i' | C_I | 'I' | Cs_I => Editor.Line.Insert (1); when 'j' | C_J | 'J' | Cs_J => Editor.Line.Join; when 'k' | C_K | 'K' | Cs_K => Editor.Line.Delete_Forward; when 'o' | C_O | 'O' | Cs_O => Editor.Line.Open; when 't' | C_T | 'T' | Cs_T => Editor.Line.Transpose; when others => null; end case; when Word => case Key2 is when Backspace | S_Backspace => Editor.Word.Delete_Backward; --/ if SPELLER then --// when WINDOW => --// SPELLER.SPELLER_WINDOW (IN_PLACE => FALSE); --// when PROMOT | S_PROMOT | 'i' | C_I | 'I' | CS_I => --// SPELLER.LEARN_WORD (THE_WORD => "",DICTIONARY => 0); --// when COMPLT | S_COMPLT | 'x' | C_X | 'X' | CS_X => --// SPELLER.EXCHANGE_WORD (CHOICE => 1); --// when FORMAT | S_FORMAT => --// SPELLER.LEARN_REPLACEMENT (THE_WORD => "",CHOICE => 1,DICTIONARY => 0); --/ end if; when Left | S_Left | Numeric_4 => Editor.Word.Previous; when Right | S_Right | Numeric_6 => Editor.Word.Next; --/ if SPELLER then --// when DOWN | S_DOWN => --// SPELLER.EXPLAIN_NEXT; --// when IMAGE | 'm' | C_M | 'M' | CS_M => --// SPELLER.CHECK_IMAGE; --// when NUMERIC_0 | S_NUMERIC_0 => --// SPELLER.EXCHANGE_WORD (CHOICE => 10); --/ end if; when Numeric_1 | 'e' | C_E | 'E' | Cs_E => Editor.Word.End_Of; --/ if SPELLER then --// when S_NUMERIC_1 => --// SPELLER.EXCHANGE_WORD (CHOICE => 1); --// when NUMERIC_2 | S_NUMERIC_2 => --// SPELLER.EXCHANGE_WORD (CHOICE => 2); --// when NUMERIC_3 | S_NUMERIC_3 => --// SPELLER.EXCHANGE_WORD (CHOICE => 3); --// when S_NUMERIC_4 => --// SPELLER.EXCHANGE_WORD (CHOICE => 4); --// when NUMERIC_5 | S_NUMERIC_5 => --// SPELLER.EXCHANGE_WORD (CHOICE => 5); --// when S_NUMERIC_6 => --// SPELLER.EXCHANGE_WORD (CHOICE => 6); --/ end if; when Numeric_7 | 'a' | C_A | 'A' | Cs_A => Editor.Word.Beginning_Of; --/ if SPELLER then --// when S_NUMERIC_7 => --// SPELLER.EXCHANGE_WORD (CHOICE => 7); --// when NUMERIC_8 | S_NUMERIC_8 => --// SPELLER.EXCHANGE_WORD (CHOICE => 8); --// when NUMERIC_9 | S_NUMERIC_9 => --// SPELLER.EXCHANGE_WORD (CHOICE => 9); --/ end if; when ',' | '<' => Editor.Word.Lower_Case; when '.' | '>' => Editor.Word.Upper_Case; --/ if SPELLER then --// when '/' | '?' => --// SPELLER.CHECK_TEXT (DATA => "<TEXT>"); --/ end if; when '6' | '^' | C_Circumflex => Editor.Word.Capitalize; when 'b' | C_B | 'B' | Cs_B => Editor.Word.Beginning_Of; when 'd' | C_D | 'D' | Cs_D => Editor.Word.Delete; when 'k' | C_K | 'K' | Cs_K => Editor.Word.Delete_Forward; --/ if SPELLER then --// when 'l' | C_L | 'L' | CS_L => --// SPELLER.LEARN_WORD (THE_WORD => "",DICTIONARY => 1); --// when 'n' | C_N | 'N' | CS_N => --// SPELLER.EXPLAIN_NEXT; --// when 'r' | C_R | 'R' | CS_R => --// SPELLER.LEARN_REPLACEMENT (THE_WORD => "",CHOICE => 1,DICTIONARY => 0); --/ end if; when 't' | C_T | 'T' | Cs_T => Editor.Word.Transpose; --/ if SPELLER then --// when 'w' => --// SPELLER.SPELLER_WINDOW (IN_PLACE => FALSE); --// when C_W | CS_W => --// SPELLER.SPELLER_WINDOW (IN_PLACE => FALSE); --// when 'W' => --// SPELLER.SPELLER_WINDOW (IN_PLACE => TRUE); --/ end if; when others => null; end case; when Numeric_Period | S_Numeric_Period => Text.End_Of_Input; when Image => case Key2 is when Left | S_Left | Numeric_4 => Editor.Image.Left; when Up | S_Up | Numeric_8 | Numeric_9 => Editor.Image.Up; when Right | S_Right | Numeric_6 => Editor.Image.Right; when Down | S_Down | Numeric_2 | Numeric_3 => Editor.Image.Down; when Numeric_1 | M_Numeric_1 => Editor.Image.End_Of; when Numeric_7 | M_Numeric_7 => Editor.Image.Beginning_Of; when '!' | '1' => Debug.Source ("_1"); when '#' | '3' => Debug.Source ("_3"); when '$' | '4' => Debug.Source ("_4"); when '%' | '5' => Debug.Source ("_5"); when '&' | '7' => Debug.Source ("_7"); when '(' | '9' => Debug.Source ("_9"); when ')' | '0' => Debug.Source ("_10"); when '*' | '8' => Debug.Source ("_8"); when '2' | '@' | C_At_Sign => Debug.Source ("_2"); when '6' | '^' | C_Circumflex => Debug.Source ("_6"); when 'a' | C_A | 'A' | Cs_A => Editor.Image.Beginning_Of; when 'b' | C_B | 'B' | Cs_B => Editor.Image.Beginning_Of; when 'e' | C_E | 'E' | Cs_E => Editor.Image.End_Of; when 'f' | C_F | 'F' | Cs_F => Editor.Set.Fill_Mode (True); when 'h' | C_H | 'H' | Cs_H => Editor.Image.Left; when 'i' | C_I | 'I' | Cs_I => Editor.Set.Insert_Mode (True); when 'j' | C_J | 'J' | Cs_J => Editor.Image.Right; when 'n' | C_N | 'N' | Cs_N => Editor.Image.Down; when 'o' | C_O | 'O' | Cs_O => Editor.Set.Insert_Mode (False); when 'u' | C_U | 'U' | Cs_U => Editor.Image.Up; when 'x' | C_X | 'X' | Cs_X => Editor.Set.Fill_Mode (False); when others => null; end case; when M_Image => Common.Commit; when Mark => case Key2 is when Backspace | S_Backspace => Editor.Mark.Delete_Top; when Carriage_Return | S_Carriage_Return | Promot | S_Promot | M_Image | 'm' | C_M | 'M' | Cs_M | 'x' | C_X | 'X' | Cs_X => Editor.Macro.Execute; when Left | S_Left | Numeric_4 => Editor.Mark.Previous; when Up | S_Up | Numeric_8 | Numeric_9 => Editor.Mark.Top; when Right | S_Right | Numeric_6 => Editor.Mark.Next; when Down | S_Down | Numeric_2 | Numeric_3 => Editor.Mark.Push; when F5 => Editor.Macro.Bind; when Numeric_1 | ')' | '0' | 'e' | C_E | 'E' | Cs_E | ']' | '}' => Editor.Macro.Finish; when Numeric_7 | '(' | '9' | 'a' | C_A | 'A' | Cs_A | '[' | '{' => Editor.Macro.Start; when 'b' | C_B | 'B' | Cs_B => Editor.Macro.Start; when 'f' | C_F | 'F' | Cs_F => Editor.Macro.Bind; when 'h' | C_H | 'H' | Cs_H => Editor.Mark.Previous; when 'j' | C_J | 'J' | Cs_J => Editor.Mark.Next; when 'n' | C_N | 'N' | Cs_N => Editor.Mark.Push; when 'p' | C_P | 'P' | Cs_P => Editor.Mark.Copy_Top; when 'r' | C_R | 'R' | Cs_R => Editor.Mark.Rotate; when 't' | C_T | 'T' | Cs_T => Editor.Mark.Swap; when 'u' | C_U | 'U' | Cs_U => Editor.Mark.Top; when others => null; end case; when Numeric_0 | S_Numeric_0 => Editor.Set.Argument_Digit (0); when C_Numeric_0 | M_Numeric_0 | Cm_Numeric_0 | Cs_Numeric_0 | Ms_Numeric_0 | Cms_Numeric_0 => Editor.Set.Argument_Digit (0); when Numeric_1 => Editor.Line.End_Of; when C_Numeric_1 | Cm_Numeric_1 => Common.Object.Last_Child; when M_Numeric_1 | Cs_Numeric_1 | Ms_Numeric_1 | Cms_Numeric_1 => Editor.Set.Argument_Digit (1); when S_Numeric_1 => Editor.Set.Argument_Digit (1); when C_Numeric_2 | Cm_Numeric_2 => Common.Object.Next; when M_Numeric_2 | Cs_Numeric_2 | Ms_Numeric_2 | Cms_Numeric_2 => Editor.Set.Argument_Digit (2); when S_Numeric_2 => Editor.Set.Argument_Digit (2); when Numeric_3 => Editor.Image.Down; when C_Numeric_3 | M_Numeric_3 | Cm_Numeric_3 | Cs_Numeric_3 | Ms_Numeric_3 | Cms_Numeric_3 => Editor.Set.Argument_Digit (3); when S_Numeric_3 => Editor.Set.Argument_Digit (3); when Numeric_4 => Editor.Cursor.Left; when M_Numeric_4 | Cs_Numeric_4 | Ms_Numeric_4 | Cms_Numeric_4 => Editor.Set.Argument_Digit (4); when S_Numeric_4 => Editor.Set.Argument_Digit (4); when Numeric_5 | S_Numeric_5 => Editor.Set.Argument_Digit (5); when C_Numeric_5 | M_Numeric_5 | Cm_Numeric_5 | Cs_Numeric_5 | Ms_Numeric_5 | Cms_Numeric_5 => Editor.Set.Argument_Digit (5); when M_Numeric_6 | Cs_Numeric_6 | Ms_Numeric_6 | Cms_Numeric_6 => Editor.Set.Argument_Digit (6); when S_Numeric_6 => Editor.Set.Argument_Digit (6); when Numeric_7 => Editor.Line.Beginning_Of; when C_Numeric_7 | Cm_Numeric_7 => Common.Object.First_Child; when M_Numeric_7 | Cs_Numeric_7 | Ms_Numeric_7 | Cms_Numeric_7 => Editor.Set.Argument_Digit (7); when S_Numeric_7 => Editor.Set.Argument_Digit (7); when Numeric_8 => Editor.Cursor.Up; when C_Numeric_8 | Cm_Numeric_8 => Common.Object.Previous; when M_Numeric_8 | Cs_Numeric_8 | Ms_Numeric_8 | Cms_Numeric_8 => Editor.Set.Argument_Digit (8); when S_Numeric_8 => Editor.Set.Argument_Digit (8); when Numeric_9 => Editor.Image.Up; when C_Numeric_9 | M_Numeric_9 | Cm_Numeric_9 | Cs_Numeric_9 | Ms_Numeric_9 | Cms_Numeric_9 => Editor.Set.Argument_Digit (9); when S_Numeric_9 => Editor.Set.Argument_Digit (9); when ' ' | S_Space => Editor.Char.Insert_Character (1, ' '); when C_Space | M_Space | Cm_Space | Cs_Space | Ms_Space | Cms_Space => Editor.Char.Insert_Character (1, ' '); when C_Exclam | C_1 => Common.Expand; when C_Quotation | C_Tick => Editor.Char.Quote; when C_Left_Paren | C_9 => Editor.Char.Insert_String ("("""); when C_Right_Paren | C_0 => Editor.Char.Insert_String (""")"); when C_Plus | C_Equal => Editor.Char.Insert_String ("=>"); when C_Comma | C_Less_Than => Editor.Char.Lower_Case; when M_Comma | M_Less_Than => Editor.Word.Lower_Case; when Cm_Comma | Cm_Less_Than => Editor.Line.Lower_Case; when C_Minus => Editor.Set.Argument_Minus; when C_Period | C_Greater_Than => Editor.Char.Upper_Case; when M_Period | M_Greater_Than => Editor.Word.Upper_Case; when Cm_Period | Cm_Greater_Than => Editor.Line.Upper_Case; when C_Slash | C_Question => Common.Explain; when C_2 => Editor.Set.Argument_Prefix; when M_2 | M_At_Sign => case Key2 is --/ if DESIGN_FACILITY then --// when M_2 | M_AT_SIGN => --// EDITOR.CHAR.INSERT_STRING("--| @"); --// when 'c' | C_C | 'C' | CS_C => --// EDITOR.CHAR.INSERT_STRING("--| @COMPONENT_KIND "); --/ end if; when 'd' | C_D | 'D' | Cs_D => case Key3 is --/ if DESIGN_FACILITY then --// when 'e' | C_E | 'E' | CS_E => --// EDITOR.CHAR.INSERT_STRING("--| @DECOMPOSITION "); --// when 's' | C_S | 'S' | CS_S => --// EDITOR.CHAR.INSERT_STRING("--| @DATA_STRUCTURE "); --/ end if; when others => null; end case; --/ if DESIGN_FACILITY then --// when 'f' | C_F | 'F' | CS_F => --// EDITOR.CHAR.INSERT_STRING("--| @FILE_STRUCTURE "); --// when 'i' | C_I | 'I' | CS_I => --// EDITOR.CHAR.INSERT_STRING("--| @INPUT "); --// when 'n' | C_N | 'N' | CS_N => --// EDITOR.CHAR.INSERT_STRING("--| @NOTE "); --// when 'o' | C_O | 'O' | CS_O => --// EDITOR.CHAR.INSERT_STRING("--| @OUTPUT "); --/ end if; when 'r' | C_R | 'R' | Cs_R => case Key3 is --/ if DESIGN_FACILITY then --// when 'a' | C_A | 'A' | CS_A => --// EDITOR.CHAR.INSERT_STRING("--| @RAISES "); --/ end if; when 'c' | C_C | 'C' | Cs_C => case Key4 is --/ if DESIGN_FACILITY then --// when 'a' | C_A | 'A' | CS_A => --// EDITOR.CHAR.INSERT_STRING("--| @REQUIREMENT CAPABILITY "); --// when 'o' | C_O | 'O' | CS_O => --// EDITOR.CHAR.INSERT_STRING("--| @REQUIREMENT CONSTITUENT "); --/ end if; when others => null; end case; --/ if DESIGN_FACILITY then --// when 'f' | C_F | 'F' | CS_F => --// EDITOR.CHAR.INSERT_STRING("--| @REQUIREMENT FUNCTION "); --// when 'i' | C_I | 'I' | CS_I => --// EDITOR.CHAR.INSERT_STRING("--| @REQUIREMENT INTERFACE "); --// when 's' | C_S | 'S' | CS_S => --// EDITOR.CHAR.INSERT_STRING("--| @REQUIREMENT SUBFUNCTION "); --/ end if; when others => null; end case; when 's' | C_S | 'S' | Cs_S => case Key3 is --/ if DESIGN_FACILITY then --// when 'a' | C_A | 'A' | CS_A => --// EDITOR.CHAR.INSERT_STRING("--| @SATISFIES "); --// when 't' | C_T | 'T' | CS_T => --// EDITOR.CHAR.INSERT_STRING("--| @STATES "); --/ end if; when others => null; end case; when others => null; end case; when C_6 | C_Circumflex => Editor.Char.Capitalize; when M_6 | M_Circumflex => Editor.Word.Capitalize; when Cm_6 | Cm_Circumflex => Editor.Line.Capitalize; when C_Colon | C_Semicolon => Editor.Char.Insert_String (":="); when C_At_Sign => Editor.Mark.Push; when C_A | Cs_A => Editor.Line.Beginning_Of; when M_A | Ms_A => Editor.Word.Beginning_Of; when Cm_A | Cms_A => Editor.Line.Beginning_Of; when C_B | Cs_B => Editor.Cursor.Backward; when M_B | Ms_B => Editor.Word.Beginning_Of; when Cm_B | Cms_B => Editor.Line.Beginning_Of; when C_C | Cs_C => Editor.Hold_Stack.Push; when M_C | Ms_C | M_Y | Ms_Y => Editor.Hold_Stack.Next; when Cm_C | Cms_C => Editor.Line.Copy; when C_D | Cs_D => Editor.Char.Delete_Forward; when M_D | Ms_D => Editor.Word.Delete; when Cm_D | Cms_D => Editor.Line.Delete; when C_E | Cs_E => Editor.Line.End_Of; when M_E | Ms_E => Editor.Word.End_Of; when Cm_E | Cms_E => Editor.Line.End_Of; when C_F | Cs_F => Editor.Cursor.Forward; when Cm_F | Cms_F => Editor.Cursor.Right (8); when C_H | Cs_H => Editor.Cursor.Left; when M_H | Ms_H => Editor.Word.Previous; when Cm_H | Cms_H => Editor.Cursor.Left (8); when C_I | Cs_I => Editor.Line.Insert (-1); when Cm_I | Cms_I => Ada.Insert_Blank_Line; when C_J | Cs_J => Editor.Cursor.Right; when M_J | Ms_J => Editor.Word.Next; when Cm_J | Cms_J => Editor.Cursor.Right (8); when C_K | Cs_K => Editor.Line.Delete_Forward; when M_K | Ms_K => Editor.Word.Delete_Forward; when Cm_K | Cms_K => Ada.Delete_Blank_Line; when C_L | Cs_L => Editor.Screen.Redraw; when M_L | Ms_L => Editor.Screen.Clear; when C_M | Cs_M => Editor.Mark.Push; when M_M | Ms_M => Editor.Mark.Next; when C_N | Cs_N => Editor.Cursor.Down; when M_N | Ms_N => Editor.Cursor.Next (Prompt => True, Underline => True); when Cm_N | Cms_N => Editor.Cursor.Down (8); when C_O | Cs_O => Editor.Line.Open; when M_O | Cm_O | Ms_O | Cms_O => Editor.Line.Join; when C_Q | Cs_Q => Editor.Key.Name; when M_Q | Ms_Q => Editor.Key.Prompt (Key_Code => ""); when C_R => Editor.Search.Previous (Target => "", Wildcard => False); when M_R => Editor.Search.Replace_Previous (Target => "", Replacement => "", Repeat => 1, Wildcard => False); when Cm_R => Editor.Search.Replace_Previous (Target => "", Replacement => "", Repeat => -1, Wildcard => False); when Cs_R => Editor.Search.Previous (Target => "", Wildcard => True); when Ms_R => Editor.Search.Replace_Previous (Target => "", Replacement => "", Repeat => 1, Wildcard => True); when Cms_R => Editor.Search.Replace_Previous (Target => "", Replacement => "", Repeat => -1, Wildcard => True); when C_S => Editor.Search.Next (Target => "", Wildcard => False); when M_S => Editor.Search.Replace_Next (Target => "", Replacement => "", Repeat => 1, Wildcard => False); when Cm_S => Editor.Search.Replace_Next (Target => "", Replacement => "", Repeat => -1, Wildcard => False); when Cs_S => Editor.Search.Next (Target => "", Wildcard => True); when Ms_S => Editor.Search.Replace_Next (Target => "", Replacement => "", Repeat => 1, Wildcard => True); when Cms_S => Editor.Search.Replace_Next (Target => "", Replacement => "", Repeat => -1, Wildcard => True); when C_T | Cs_T => Editor.Char.Transpose; when M_T | Ms_T => Editor.Word.Transpose; when Cm_T | Cms_T => Editor.Line.Transpose; when C_U | Cs_U => Editor.Cursor.Up; when M_U | Ms_U => Editor.Cursor.Previous (Prompt => True, Underline => True); when Cm_U | Cms_U => Editor.Cursor.Up (8); when C_V | Cs_V => Editor.Image.Down; when C_W => Editor.Region.Delete; when C_X | Cs_X => Editor.Set.Designation_Off; when M_X | Ms_X => Editor.Macro.Execute; when C_Y | Cs_Y => Editor.Hold_Stack.Top; when C_Z | Cs_Z => Editor.Image.Up; when C_Left_Bracket | C_Left_Brace => Editor.Region.Start; when M_Left_Bracket | M_Left_Brace => Editor.Macro.Start; when C_Right_Bracket | C_Right_Brace => Editor.Region.Finish; when M_Right_Bracket | M_Right_Brace => Editor.Macro.Finish; when C_Bar => Editor.Char.Quote; --/ if DESIGN_FACILITY then --// when M_BAR => --// EDITOR.CHAR.INSERT_STRING("--| "); --/ end if; when others => null; end case; end case; end Pc101_Commands;