📄 preferences.c
字号:
\n\ # if only one direction matched, use that, otherwise use the nearest\n\ if (backwardSearchResult == -1)\n\ matchStart = forwardSearchResult\n\ else if (forwardSearchResult == -1)\n\ matchStart = backwardSearchResult\n\ else {\n\ if (keyStart - backwardSearchResult <= forwardSearchResult - keyEnd)\n\ matchStart = backwardSearchResult\n\ else\n\ matchStart = forwardSearchResult\n\ }\n\ \n\ # find the complete word\n\ matchEnd = search_string(scanString, \">\", matchStart, \"regex\")\n\ completedWord = substring(scanString, matchStart, matchEnd)\n\ \n\ # replace it in the window\n\ replace_range(startScan + keyStart, $cursor, completedWord)\n\ }\n\ Fill Sel. w/Char:::R: {\n\ if ($selection_start == -1) {\n\ beep()\n\ return\n\ }\n\ \n\ # Ask the user what character to fill with\n\ fillChar = string_dialog(\"Fill selection with what character?\", \"OK\", \"Cancel\")\n\ if ($string_dialog_button == 2 || $string_dialog_button == 0)\n\ return\n\ \n\ # Count the number of lines in the selection\n\ nLines = 0\n\ for (i=$selection_start; i<$selection_end; i++)\n\ if (get_character(i) == \"\\n\")\n\ nLines++\n\ \n\ # Create the fill text\n\ rectangular = $selection_left != -1\n\ line = \"\"\n\ fillText = \"\"\n\ if (rectangular) {\n\ for (i=0; i<$selection_right-$selection_left; i++)\n\ line = line fillChar\n\ for (i=0; i<nLines; i++)\n\ fillText = fillText line \"\\n\"\n\ fillText = fillText line\n\ } else {\n\ if (nLines == 0) {\n\ for (i=$selection_start; i<$selection_end; i++)\n\ fillText = fillText fillChar\n\ } else {\n\ startIndent = 0\n\ for (i=$selection_start-1; i>=0 && get_character(i)!=\"\\n\"; i--)\n\ startIndent++\n\ for (i=0; i<$wrap_margin-startIndent; i++)\n\ fillText = fillText fillChar\n\ fillText = fillText \"\\n\"\n\ for (i=0; i<$wrap_margin; i++)\n\ line = line fillChar\n\ for (i=0; i<nLines-1; i++)\n\ fillText = fillText line \"\\n\"\n\ for (i=$selection_end-1; i>=$selection_start && get_character(i)!=\"\\n\"; \\\n\ i--)\n\ fillText = fillText fillChar\n\ }\n\ }\n\ \n\ # Replace the selection with the fill text\n\ replace_selection(fillText)\n\ }\n\ Quote Mail Reply:::: {\n\ if ($selection_start == -1)\n\ replace_all(\"^.*$\", \"\\\\> &\", \"regex\")\n\ else\n\ replace_in_selection(\"^.*$\", \"\\\\> &\", \"regex\")\n\ }\n\ Unquote Mail Reply:::: {\n\ if ($selection_start == -1)\n\ replace_all(\"(^\\\\> )(.*)$\", \"\\\\2\", \"regex\")\n\ else\n\ replace_in_selection(\"(^\\\\> )(.*)$\", \"\\\\2\", \"regex\")\n\ }\n\ Comments>/* Comment */@C@C++@Java@CSS@JavaScript@Lex:::R: {\n\ selStart = $selection_start\n\ selEnd = $selection_end\n\ replace_range(selStart, selEnd, \"/* \" get_selection() \" */\")\n\ select(selStart, selEnd + 6)\n\ }\n\ Comments>/* Uncomment */@C@C++@Java@CSS@JavaScript@Lex:::R: {\n\ sel = get_selection()\n\ selStart = $selection_start\n\ selEnd = $selection_end\n\ commentStart = search_string(sel, \"/*\", 0)\n\ if (substring(sel, commentStart + 2, commentStart + 3) == \" \")\n\ keepStart = commentStart + 3\n\ else\n\ keepStart = commentStart + 2\n\ keepEnd = search_string(sel, \"*/\", length(sel), \"backward\")\n\ commentEnd = keepEnd + 2\n\ if (substring(sel, keepEnd - 1, keepEnd == \" \"))\n\ keepEnd = keepEnd - 1\n\ replace_range(selStart + commentStart, selStart + commentEnd, \\\n\ substring(sel, keepStart, keepEnd))\n\ select(selStart, selEnd - (keepStart-commentStart) - \\\n\ (commentEnd - keepEnd))\n\ }\n\ Comments>// Comment@C@C++@Java@JavaScript:::R: {\n\ replace_in_selection(\"^.*$\", \"// &\", \"regex\")\n\ }\n\ Comments>// Uncomment@C@C++@Java@JavaScript:::R: {\n\ replace_in_selection(\"(^[ \\\\t]*// ?)(.*)$\", \"\\\\2\", \"regex\")\n\ }\n\ Comments># Comment@Perl@Sh Ksh Bash@NEdit Macro@Makefile@Awk@Csh@Python@Tcl:::R: {\n\ replace_in_selection(\"^.*$\", \"#&\", \"regex\")\n\ }\n\ Comments># Uncomment@Perl@Sh Ksh Bash@NEdit Macro@Makefile@Awk@Csh@Python@Tcl:::R: {\n\ replace_in_selection(\"(^[ \\\\t]*#)(.*)$\", \"\\\\2\", \"regex\")\n\ }\n\ Comments>-- Comment@SQL:::R: {\n\ replace_in_selection(\"^.*$\", \"--&\", \"regex\")\n\ }\n\ Comments>-- Uncomment@SQL:::R: {\n\ replace_in_selection(\"(^[ \\\\t]*--)(.*)$\", \"\\\\2\", \"regex\")\n\ }\n\ Comments>! Comment@X Resources:::R: {\n\ replace_in_selection(\"^.*$\", \"!&\", \"regex\")\n\ }\n\ Comments>! Uncomment@X Resources:::R: {\n\ replace_in_selection(\"(^[ \\\\t]*!)(.*)$\", \"\\\\2\", \"regex\")\n\ }\n\ Comments>Bar Comment@C:::R: {\n\ if ($selection_left != -1) {\n\ dialog(\"Selection must not be rectangular\")\n\ return\n\ }\n\ start = $selection_start\n\ end = $selection_end-1\n\ origText = get_range($selection_start, $selection_end-1)\n\ newText = \"/*\\n\" replace_in_string(get_range(start, end), \\\n\ \"^\", \" * \", \"regex\") \"\\n */\\n\"\n\ replace_selection(newText)\n\ select(start, start + length(newText))\n\ }\n\ Comments>Bar Uncomment@C:::R: {\n\ selStart = $selection_start\n\ selEnd = $selection_end\n\ newText = get_range(selStart+3, selEnd-4)\n\ newText = replace_in_string(newText, \"^ \\\\* \", \"\", \"regex\")\n\ replace_range(selStart, selEnd, newText)\n\ select(selStart, selStart + length(newText))\n\ }\n\ Make C Prototypes@C@C++:::: {\n\ if ($selection_start == -1) {\n\ start = 0\n\ end = $text_length\n\ } else {\n\ start = $selection_start\n\ end = $selection_end\n\ }\n\ string = get_range(start, end)\n\ nDefs = 0\n\ searchPos = 0\n\ prototypes = \"\"\n\ staticPrototypes = \"\"\n\ for (;;) {\n\ headerStart = search_string(string, \\\n\ \"^[a-zA-Z]([^;#\\\"'{}=><!/]|\\n)*\\\\)[ \\t]*\\n?[ \\t]*\\\\{\", \\\n\ searchPos, \"regex\")\n\ if (headerStart == -1)\n\ break\n\ headerEnd = search_string(string, \")\", $search_end,\"backward\") + 1\n\ prototype = substring(string, headerStart, headerEnd) \";\\n\"\n\ if (substring(string, headerStart, headerStart+6) == \"static\")\n\ staticPrototypes = staticPrototypes prototype\n\ else\n\ prototypes = prototypes prototype\n\ searchPos = headerEnd\n\ nDefs++\n\ }\n\ if (nDefs == 0) {\n\ dialog(\"No function declarations found\")\n\ return\n\ }\n\ new()\n\ focus_window(\"last\")\n\ replace_range(0, 0, prototypes staticPrototypes)\n\ }", &TempStringPrefs.macroCmds, NULL, True}, {"bgMenuCommands", "BGMenuCommands", PREF_ALLOC_STRING, "Undo:::: {\nundo()\n}\n\ Redo:::: {\nredo()\n}\n\ Cut:::R: {\ncut_clipboard()\n}\n\ Copy:::R: {\ncopy_clipboard()\n}\n\ Paste:::: {\npaste_clipboard()\n}", &TempStringPrefs.bgMenuCmds, NULL, True},#ifdef VMS/* The VAX compiler can't compile Java-Script's definition in highlightData.c */ {"highlightPatterns", "HighlightPatterns", PREF_ALLOC_STRING, "Ada:Default\n\ Awk:Default\n\ C++:Default\n\ C:Default\n\ CSS:Default\n\ Csh:Default\n\ Fortran:Default\n\ Java:Default\n\ LaTeX:Default\n\ Lex:Default\n\ Makefile:Default\n\ Matlab:Default\n\ NEdit Macro:Default\n\ Pascal:Default\n\ Perl:Default\n\ PostScript:Default\n\ Python:Default\n\ Regex:Default\n\ SGML HTML:Default\n\ SQL:Default\n\ Sh Ksh Bash:Default\n\ Tcl:Default\n\ VHDL:Default\n\ Verilog:Default\n\ XML:Default\n\ X Resources:Default\n\ Yacc:Default", &TempStringPrefs.highlight, NULL, True}, {"languageModes", "LanguageModes", PREF_ALLOC_STRING,#else {"highlightPatterns", "HighlightPatterns", PREF_ALLOC_STRING, "Ada:Default\n\ Awk:Default\n\ C++:Default\n\ C:Default\n\ CSS:Default\n\ Csh:Default\n\ Fortran:Default\n\ Java:Default\n\ JavaScript:Default\n\ LaTeX:Default\n\ Lex:Default\n\ Makefile:Default\n\ Matlab:Default\n\ NEdit Macro:Default\n\ Pascal:Default\n\ Perl:Default\n\ PostScript:Default\n\ Python:Default\n\ Regex:Default\n\ SGML HTML:Default\n\ SQL:Default\n\ Sh Ksh Bash:Default\n\ Tcl:Default\n\ VHDL:Default\n\ Verilog:Default\n\ XML:Default\n\ X Resources:Default\n\ Yacc:Default", &TempStringPrefs.highlight, NULL, True}, {"languageModes", "LanguageModes", PREF_ALLOC_STRING,#endif /*VMS*/#ifdef VMS "Ada:.ADA .AD .ADS .ADB .A:::::::\n\ Awk:.AWK:::::::\n\ C++:.CC .HH .C .H .I .CXX .HXX .CPP::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":\n\ C:.C .H::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":\n\ CSS:CSS::Auto:None:::\".,/\\`'!|@#%^&*()=+{}[]\"\":;<>?~\":\n\ Csh:.csh .cshrc .login .logout:\"^[ \\t]*#[ \\t]*![ \\t]*/bin/csh\"::::::\n\ Fortran:.F .F77 .FOR:::::::\n\ Java:.JAVA:::::::\n\ LaTeX:.TEX .STY .CLS .DTX .INS:::::::\n\ Lex:.lex:::::::\n\ Makefile:MAKEFILE:::None:8:8::\n\ Matlab:.m .oct .sci:::::::\n\ NEdit Macro:.NM .NEDITMACRO:::::::\n\ Pascal:.PAS .P .INT:::::::\n\ Perl:.PL .PM .P5:\"^[ \\t]*#[ \\t]*!.*perl\":Auto:None:::\".,/\\\\`'!$@#%^&*()-=+{}[]\"\":;<>?~|\":\n\ PostScript:.ps .PS .eps .EPS .epsf .epsi:\"^%!\":::::\"/%(){}[]<>\":\n\ Python:.PY:\"^#!.*python\":Auto:None:::\"!\"\"#$%&'()*+,-./:;<=>?@[\\\\]^`{|}~\":\n\ Regex:.reg .regex:\"\\(\\?[:#=!iInN].+\\)\":None:Continuous::::\n\ SGML HTML:.sgml .sgm .html .htm:\"\\<[Hh][Tt][Mm][Ll]\\>\"::::::\n\ SQL:.sql:::::::\n\ Sh Ksh Bash:.sh .bash .ksh .profile .bashrc .bash_logout .bash_login .bash_profile:\"^[ \\t]*#[ \\t]*![ \\t]*/.*bin/(sh|ksh|bash)\"::::::\n\ Tcl:.TCL::Smart:None::::\n\ VHDL:.VHD .VHDL .VDL:::::::\n\ Verilog:.V:::::::\n\ XML:.xml .xsl .dtd:\"\\<(?i\\?xml|!doctype)\"::None:::\"<>/=\"\"'()+*?|\":\n\ X Resources:.XRESOURCES .XDEFAULTS .NEDIT:\"^[!#].*([Aa]pp|[Xx]).*[Dd]efaults\"::::::\n\ Yacc:.Y::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":",#else "Ada:.ada .ad .ads .adb .a:::::::\n\ Awk:.awk:::::::\n\ C++:.cc .hh .C .H .i .cxx .hxx .cpp::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":\n\ C:.c .h::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":\n\ CSS:css::Auto:None:::\".,/\\`'!|@#%^&*()=+{}[]\"\":;<>?~\":\n\ Csh:.csh .cshrc .login .logout:\"^[ \\t]*#[ \\t]*![ \\t]*/bin/csh\"::::::\n\ Fortran:.f .f77 .for:::::::\n\ Java:.java:::::::\n\ JavaScript:.js:::::::\n\ LaTeX:.tex .sty .cls .dtx .ins:::::::\n\ Lex:.lex:::::::\n\ Makefile:Makefile makefile .gmk:::None:8:8::\n\ Matlab:.m .oct .sci:::::::\n\ NEdit Macro:.nm .neditmacro:::::::\n\ Pascal:.pas .p .int:::::::\n\ Perl:.pl .pm .p5 .PL:\"^[ \\t]*#[ \\t]*!.*perl\":Auto:None:::\".,/\\\\`'!$@#%^&*()-=+{}[]\"\":;<>?~|\":\n\ PostScript:.ps .eps .epsf .epsi:\"^%!\":::::\"/%(){}[]<>\":\n\ Python:.py:\"^#!.*python\":Auto:None:::\"!\"\"#$%&'()*+,-./:;<=>?@[\\\\]^`{|}~\":\n\ Regex:.reg .regex:\"\\(\\?[:#=!iInN].+\\)\":None:Continuous::::\n\ SGML HTML:.sgml .sgm .html .htm:\"\\<[Hh][Tt][Mm][Ll]\\>\"::::::\n\ SQL:.sql:::::::\n\ Sh Ksh Bash:.sh .bash .ksh .profile .bashrc .bash_logout .bash_login .bash_profile:\"^[ \\t]*#[ \\t]*![ \\t]*/.*bin/(sh|ksh|bash)\"::::::\n\ Tcl:.tcl .tk .itcl .itk::Smart:None::::\n\ VHDL:.vhd .vhdl .vdl:::::::\n\ Verilog:.v:::::::\n\ XML:.xml .xsl .dtd:\"\\<(?i\\?xml|!doctype)\"::None:::\"<>/=\"\"'()+*?|\":\n\ X Resources:.Xresources .Xdefaults .nedit:\"^[!#].*([Aa]pp|[Xx]).*[Dd]efaults\"::::::\n\ Yacc:.y::::::\".,/\\`'!|@#%^&*()-=+{}[]\"\":;<>?~\":",#endif &TempStringPrefs.language, NULL, True}, {"styles", "Styles", PREF_ALLOC_STRING, "Plain:black:Plain\n\ Comment:gray20:Italic\n\ Keyword:black:Bold\n\ Storage Type:brown:Bold\n\ Storage Type1:saddle brown:Bold\n\ String:darkGreen:Plain\n\ String1:SeaGreen:Plain\n\ String2:darkGreen:Bold\n\ Preprocessor:RoyalBlue4:Plain\n\ Preprocessor1:blue:Plain\n\ Character Const:darkGreen:Plain\n\ Numeric Const:darkGreen:Plain\n\ Identifier:brown:Plain\n\ Identifier1:RoyalBlue4:Plain\n\ Identifier2:SteelBlue:Plain\n\ Subroutine:brown:Plain\n\ Subroutine1:chocolate:Plain\n\ Ada Attributes:plum:Bold\n\ Label:red:Italic\n\ Flag:red:Bold\n\ Text Comment:SteelBlue4:Italic\n\ Text Key:VioletRed4:Bold\n\ Text Key1:VioletRed4:Plain\n\ Text Arg:RoyalBlue4:Bold\n\ Text Arg1:SteelBlue4:Bold\n\ Text Arg2:RoyalBlue4:Plain\n\ Text Escape:gray30:Bold\n\ LaTeX Math:darkGreen:Plain\n" ADD_5_2_STYLES, &TempStringPrefs.styles, NULL, True}, {"smartIndentInit", "SmartIndentInit", PREF_ALLOC_STRING, "C:Default\n\ C++:Default\n\ Python:Default\n\ Matlab:Default", &TempStringPrefs.smartIndent, NULL, True}, {"smartIndentInitCommon", "SmartIndentInitCommon", PREF_ALLOC_STRING, "Default", &TempStringPrefs.smartIndentCommon, NULL, True}, {"autoWrap", "AutoWrap", PREF_ENUM, "Newline", &PrefData.wrapStyle, AutoWrapTypes, True}, {"wrapMargin", "WrapMargin", PREF_INT, "0", &PrefData.wrapMargin, NULL, True}, {"autoIndent", "AutoIndent", PREF_ENUM, "Auto", &PrefData.autoIndent, AutoIndentTypes, True}, {"autoSave", "AutoSave", PREF_BOOLEAN, "True", &PrefData.autoSave, NULL, True}, {"saveOldVersion", "SaveOldVersion", PREF_BOOLEAN, "False",
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -