123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- #ifndef MC_EDIT_CMD_DEF_H
- #define MC_EDIT_CMD_DEF_H
- /* in the distant future, keyboards will be invented with a
- separate key for each one of these commands *sigh* */
- /* special commands */
- #define CK_Insert_Char -1
- #define CK_Ignore_Key 0
- /* cursor movements */
- #define CK_BackSpace 1
- #define CK_Delete 2
- #define CK_Enter 3
- #define CK_Page_Up 4
- #define CK_Page_Down 5
- #define CK_Left 6
- #define CK_Right 7
- #define CK_Word_Left 8
- #define CK_Word_Right 9
- #define CK_Up 10
- #define CK_Down 11
- #define CK_Home 12
- #define CK_End 13
- #define CK_Tab 14
- #define CK_Undo 15
- #define CK_Beginning_Of_Text 16
- #define CK_End_Of_Text 17
- #define CK_Scroll_Up 18
- #define CK_Scroll_Down 19
- #define CK_Return 20
- #define CK_Begin_Page 21
- #define CK_End_Page 22
- #define CK_Delete_Word_Left 23
- #define CK_Delete_Word_Right 24
- #define CK_Paragraph_Up 25
- #define CK_Paragraph_Down 26
- /* file commands */
- #define CK_Save 101
- #define CK_Load 102
- #define CK_New 103
- #define CK_Save_As 104
- /* block commands */
- #define CK_Mark 201
- #define CK_Copy 202
- #define CK_Move 203
- #define CK_Remove 204
- #define CK_Unmark 206
- #define CK_Save_Block 207
- #define CK_Column_Mark 208
- /* search and replace */
- #define CK_Find 301
- #define CK_Find_Again 302
- #define CK_Replace 303
- #define CK_Replace_Again 304
- #define CK_Complete_Word 305
- /* debugger commands */
- #define CK_Debug_Start 350
- #define CK_Debug_Stop 351
- #define CK_Debug_Toggle_Break 352
- #define CK_Debug_Clear 353
- #define CK_Debug_Next 354
- #define CK_Debug_Step 355
- #define CK_Debug_Back_Trace 356
- #define CK_Debug_Continue 357
- #define CK_Debug_Enter_Command 358
- #define CK_Debug_Until_Curser 359
- /* misc */
- #define CK_Insert_File 401
- #define CK_Exit 402
- #define CK_Toggle_Insert 403
- #define CK_Help 404
- #define CK_Date 405
- #define CK_Refresh 406
- #define CK_Goto 407
- #define CK_Delete_Line 408
- #define CK_Delete_To_Line_End 409
- #define CK_Delete_To_Line_Begin 410
- #define CK_Man_Page 411
- #define CK_Sort 412
- #define CK_Mail 413
- #define CK_Cancel 414
- #define CK_Complete 415
- #define CK_Paragraph_Format 416
- #define CK_Util 417
- #define CK_Type_Load_Python 418
- #define CK_Find_File 419
- #define CK_Ctags 420
- #define CK_Match_Bracket 421
- #define CK_Terminal 422
- #define CK_Terminal_App 423
- #define CK_ExtCmd 424
- #define CK_User_Menu 425
- /* application control */
- #define CK_Save_Desktop 451
- #define CK_New_Window 452
- #define CK_Cycle 453
- #define CK_Menu 454
- #define CK_Save_And_Quit 455
- #define CK_Run_Another 456
- #define CK_Check_Save_And_Quit 457
- #define CK_Maximize 458
- #define CK_Toggle_Syntax 480
- /* macro */
- #define CK_Begin_Record_Macro 501
- #define CK_End_Record_Macro 502
- #define CK_Delete_Macro 503
- /* book mark */
- #define CK_Toggle_Bookmark 550
- #define CK_Flush_Bookmarks 551
- #define CK_Next_Bookmark 552
- #define CK_Prev_Bookmark 553
- /* highlight commands */
- #define CK_Page_Up_Highlight 604
- #define CK_Page_Down_Highlight 605
- #define CK_Left_Highlight 606
- #define CK_Right_Highlight 607
- #define CK_Word_Left_Highlight 608
- #define CK_Word_Right_Highlight 609
- #define CK_Up_Highlight 610
- #define CK_Down_Highlight 611
- #define CK_Home_Highlight 612
- #define CK_End_Highlight 613
- #define CK_Beginning_Of_Text_Highlight 614
- #define CK_End_Of_Text_Highlight 615
- #define CK_Begin_Page_Highlight 616
- #define CK_End_Page_Highlight 617
- #define CK_Scroll_Up_Highlight 618
- #define CK_Scroll_Down_Highlight 619
- #define CK_Paragraph_Up_Highlight 620
- #define CK_Paragraph_Down_Highlight 621
- /* X clipboard operations */
- #define CK_XStore 701
- #define CK_XCut 702
- #define CK_XPaste 703
- #define CK_Selection_History 704
- #define CK_Shell 801
- /* C-x or similar */
- #define CK_Ext_Mode 820
- #define CK_Select_Codepage 850
- #define CK_Insert_Literal 851
- #define CK_Execute_Macro 852
- #define CK_Begin_End_Macro 853
- /*
- Process a block through a shell command: CK_Pipe_Block(i) executes shell_cmd[i].
- shell_cmd[i] must process the file ~/cooledit.block and output ~/cooledit.block
- which is then inserted into the text in place of the original block. shell_cmd[i] must
- also produce a file homedir/cooledit.error . If this file is not empty an error will
- have been assumed to have occured, and the block will not be replaced.
- TODO: bring up a viewer to display the error message instead of inserting
- it into the text, which is annoying.
- */
- #define CK_Pipe_Block(i) (1000+(i))
- #define SHELL_COMMANDS_i {"/edit.indent.rc", "/edit.spell.rc", /* and so on */ 0 }
- #define CK_Macro(i) (2000+(i))
- #define CK_Last_Macro CK_Macro(0x7FFF)
- #else
- #define CK_User_Command(i) ((i) | (1 << 16))
- #define IS_USER_COMMAND(i) ((i) & (1 << 16))
- #define CK_Macro(i) ((i) | (1 << 17))
- #define IS_MACRO_COMMAND(i) ((i) & (1 << 17))
- #endif
|