⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 preferences.c

📁 nedit 是一款linux下的开发源码的功能强大的编辑器
💻 C
📖 第 1 页 / 共 5 页
字号:
		\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 + -