亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? options.c

?? ctags的最新版5.7,可以比較5.6版看看,免費下載
?? C
?? 第 1 頁 / 共 4 頁
字號:
	}	if (i > 0)		putchar ('\n');}static void printProgramIdentification (void){	printf ("%s %s, %s %s\n",	        PROGRAM_NAME, PROGRAM_VERSION,	        PROGRAM_COPYRIGHT, AUTHOR_NAME);	printf ("  Compiled: %s, %s\n", __DATE__, __TIME__);	printf ("  Addresses: <%s>, %s\n", AUTHOR_EMAIL, PROGRAM_URL);	printFeatureList ();}static void processHelpOption (		const char *const option __unused__,		const char *const parameter __unused__){	printProgramIdentification ();	putchar ('\n');	printInvocationDescription ();	putchar ('\n');	printOptionDescriptions (LongOptionDescription);	exit (0);}static void processLanguageForceOption (		const char *const option, const char *const parameter){	langType language;	if (strcasecmp (parameter, "auto") == 0)		language = LANG_AUTO;	else		language = getNamedLanguage (parameter);	if (strcmp (option, "lang") == 0  ||  strcmp (option, "language") == 0)		error (WARNING,			   "\"--%s\" option is obsolete; use \"--language-force\" instead",			   option);	if (language == LANG_IGNORE)		error (FATAL, "Unknown language \"%s\" in \"%s\" option", parameter, option);	else		Option.language = language;}static char* skipPastMap (char* p){	while (*p != EXTENSION_SEPARATOR  &&			*p != PATTERN_START  &&  *p != ','  &&  *p != '\0')		++p;	return p;}/* Parses the mapping beginning at `map', adds it to the language map, and * returns first character past the map. */static char* addLanguageMap (const langType language, char* map){	char* p = NULL;	const char first = *map;	if (first == EXTENSION_SEPARATOR)  /* extension map */	{		++map;		p = skipPastMap (map);		if (*p == '\0')		{			verbose (" .%s", map);			addLanguageExtensionMap (language, map);			p = map + strlen (map);		}		else		{			const char separator = *p;			*p = '\0';			verbose (" .%s", map);			addLanguageExtensionMap (language, map);			*p = separator;		}	}	else if (first == PATTERN_START)  /* pattern map */	{		++map;		for (p = map  ;  *p != PATTERN_STOP  &&  *p != '\0'  ;  ++p)		{			if (*p == '\\'  &&  *(p + 1) == PATTERN_STOP)				++p;		}		if (*p == '\0')			error (FATAL, "Unterminated file name pattern for %s language",			   getLanguageName (language));		else		{			*p++ = '\0';			verbose (" (%s)", map);			addLanguagePatternMap (language, map);		}	}	else		error (FATAL, "Badly formed language map for %s language",				getLanguageName (language));	return p;}static char* processLanguageMap (char* map){	char* const separator = strchr (map, ':');	char* result = NULL;	if (separator != NULL)	{		langType language;		char *list = separator + 1;		boolean clear = FALSE;		*separator = '\0';		language = getNamedLanguage (map);		if (language != LANG_IGNORE)		{			const char *const deflt = "default";			char* p;			if (*list == '+')				++list;			else				clear = TRUE;			for (p = list  ;  *p != ','  &&  *p != '\0'  ;  ++p)  /*no-op*/ ;			if ((size_t) (p - list) == strlen (deflt) &&				strncasecmp (list, deflt, p - list) == 0)			{				verbose ("    Restoring default %s language map: ", getLanguageName (language));				installLanguageMapDefault (language);				list = p;			}			else			{				if (clear)				{					verbose ("    Setting %s language map:", getLanguageName (language));					clearLanguageMap (language);				}				else					verbose ("    Adding to %s language map:", getLanguageName (language));				while (list != NULL  &&  *list != '\0'  &&  *list != ',')					list = addLanguageMap (language, list);				verbose ("\n");			}			if (list != NULL  &&  *list == ',')				++list;			result = list;		}	}	return result;}static void processLanguageMapOption (		const char *const option, const char *const parameter){	char *const maps = eStrdup (parameter);	char *map = maps;	if (strcmp (parameter, "default") == 0)	{		verbose ("    Restoring default language maps:\n");		installLanguageMapDefaults ();	}	else while (map != NULL  &&  *map != '\0')	{		char* const next = processLanguageMap (map);		if (next == NULL)			error (WARNING, "Unknown language \"%s\" in \"%s\" option", parameter, option);		map = next;	}	eFree (maps);}static void processLanguagesOption (		const char *const option, const char *const parameter){	char *const langs = eStrdup (parameter);	enum { Add, Remove, Replace } mode = Replace;	boolean first = TRUE;	char *lang = langs;	const char* prefix = "";	verbose ("    Enabled languages: ");	while (lang != NULL)	{		char *const end = strchr (lang, ',');		if (lang [0] == '+')		{			++lang;			mode = Add;			prefix = "+ ";		}		else if (lang [0] == '-')		{			++lang;			mode = Remove;			prefix = "- ";		}		if (mode == Replace)			enableLanguages (FALSE);		if (end != NULL)			*end = '\0';		if (lang [0] != '\0')		{			if (strcmp (lang, "all") == 0)				enableLanguages ((boolean) (mode != Remove));			else			{				const langType language = getNamedLanguage (lang);				if (language == LANG_IGNORE)					error (WARNING, "Unknown language \"%s\" in \"%s\" option", lang, option);				else					enableLanguage (language, (boolean) (mode != Remove));			}			verbose ("%s%s%s", (first ? "" : ", "), prefix, lang);			prefix = "";			first = FALSE;			if (mode == Replace)				mode = Add;		}		lang = (end != NULL ? end + 1 : NULL);	}	verbose ("\n");	eFree (langs);}static void processLicenseOption (		const char *const option __unused__,		const char *const parameter __unused__){	printProgramIdentification ();	puts ("");	puts (License1);	puts (License2);	exit (0);}static void processListKindsOption (		const char *const option, const char *const parameter){	if (parameter [0] == '\0' || strcasecmp (parameter, "all") == 0)	    printLanguageKinds (LANG_AUTO);	else	{		langType language = getNamedLanguage (parameter);		if (language == LANG_IGNORE)			error (FATAL, "Unknown language \"%s\" in \"%s\" option", parameter, option);		else			printLanguageKinds (language);	}	exit (0);}static void processListMapsOption (		const char *const __unused__ option,		const char *const __unused__ parameter){	if (parameter [0] == '\0' || strcasecmp (parameter, "all") == 0)	    printLanguageMaps (LANG_AUTO);	else	{		langType language = getNamedLanguage (parameter);		if (language == LANG_IGNORE)			error (FATAL, "Unknown language \"%s\" in \"%s\" option", parameter, option);		else			printLanguageMaps (language);	}	exit (0);}static void processListLanguagesOption (		const char *const option __unused__,		const char *const parameter __unused__){	printLanguageList ();	exit (0);}static void processOptionFile (		const char *const option, const char *const parameter){	if (parameter [0] == '\0')		error (WARNING, "no option file supplied for \"%s\"", option);	else if (! parseFileOptions (parameter))		error (FATAL | PERROR, "cannot open option file \"%s\"", parameter);}static void processSortOption (		const char *const option, const char *const parameter){	if (isFalse (parameter))		Option.sorted = SO_UNSORTED;	else if (isTrue (parameter))		Option.sorted = SO_SORTED;	else if (strcasecmp (parameter, "f") == 0 ||			strcasecmp (parameter, "fold") == 0 ||			strcasecmp (parameter, "foldcase") == 0)		Option.sorted = SO_FOLDSORTED;	else		error (FATAL, "Invalid value for \"%s\" option", option);}static void installHeaderListDefaults (void){	Option.headerExt = stringListNewFromArgv (HeaderExtensions);	if (Option.verbose)	{		printf ("    Setting default header extensions: ");		stringListPrint (Option.headerExt);		putchar ('\n');	}}static void processHeaderListOption (const int option, const char *parameter){	/*  Check to make sure that the user did not enter "ctags -h *.c"	 *  by testing to see if the list is a filename that exists.	 */	if (doesFileExist (parameter))		error (FATAL, "-%c: Invalid list", option);	if (strcmp (parameter, "default") == 0)		installHeaderListDefaults ();	else	{		boolean clear = TRUE;		if (parameter [0] == '+')		{			++parameter;			clear = FALSE;		}		if (Option.headerExt == NULL)			Option.headerExt = stringListNew ();		verbose ("    Header Extensions:\n");		addExtensionList (Option.headerExt, parameter, clear);	}}/* *  Token ignore processing *//*  Determines whether or not "name" should be ignored, per the ignore list. */extern boolean isIgnoreToken (		const char *const name, boolean *const pIgnoreParens,		const char **const replacement){	boolean result = FALSE;	if (Option.ignore != NULL)	{		const size_t nameLen = strlen (name);		unsigned int i;		if (pIgnoreParens != NULL)			*pIgnoreParens = FALSE;		for (i = 0  ;  i < stringListCount (Option.ignore)  ;  ++i)		{			vString *token = stringListItem (Option.ignore, i);			if (strncmp (vStringValue (token), name, nameLen) == 0)			{				const size_t tokenLen = vStringLength (token);				if (nameLen == tokenLen)				{					result = TRUE;					break;				}				else if (tokenLen == nameLen + 1  &&						vStringChar (token, tokenLen - 1) == '+')				{					result = TRUE;					if (pIgnoreParens != NULL)						*pIgnoreParens = TRUE;					break;				}				else if (vStringChar (token, nameLen) == '=')				{					if (replacement != NULL)						*replacement = vStringValue (token) + nameLen + 1;					break;				}			}		}	}	return result;}static void saveIgnoreToken (vString *const ignoreToken){	if (Option.ignore == NULL)		Option.ignore = stringListNew ();	stringListAdd (Option.ignore, ignoreToken);	verbose ("    ignore token: %s\n", vStringValue (ignoreToken));}static void readIgnoreList (const char *const list){	char* newList = stringCopy (list);	const char *token = strtok (newList, IGNORE_SEPARATORS);	while (token != NULL)	{		vString *const entry = vStringNewInit (token);		saveIgnoreToken (entry);		token = strtok (NULL, IGNORE_SEPARATORS);	}	eFree (newList);}static void addIgnoreListFromFile (const char *const fileName){	stringList* tokens = stringListNewFromFile (fileName);	if (tokens == NULL)		error (FATAL | PERROR, "cannot open \"%s\"", fileName);	if (Option.ignore == NULL)		Option.ignore = tokens;	else		stringListCombine (Option.ignore, tokens);}static void processIgnoreOption (const char *const list){	if (strchr ("@./\\", list [0]) != NULL)	{		const char* fileName = (*list == '@') ? list + 1 : list;		addIgnoreListFromFile (fileName);	}#if defined (MSDOS) || defined (WIN32) || defined (OS2)	else if (isalpha (list [0])  &&  list [1] == ':')		addIgnoreListFromFile (list);#endif	else if (strcmp (list, "-") == 0)	{		freeList (&Option.ignore);		verbose ("    clearing list\n");	}	else		readIgnoreList (list);}static void processVersionOption (		const char *const option __unused__,		const char *const parameter __unused__){	printProgramIdentification ();	exit (0);}/* *  Option tables */static parametricOption ParametricOptions [] = {	{ "etags-include",          processEtagsInclude,            FALSE   },	{ "exclude",                processExcludeOption,           FALSE   },

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
毛片不卡一区二区| 日本sm残虐另类| 国产欧美视频一区二区三区| 日韩一级视频免费观看在线| 色婷婷国产精品| caoporn国产一区二区| 国产 欧美在线| 成人app在线观看| 91在线无精精品入口| 成人av网址在线观看| 91麻豆精品视频| 欧美调教femdomvk| 在线综合+亚洲+欧美中文字幕| 欧美日韩一区二区在线观看视频| 在线视频你懂得一区| 欧美日韩高清影院| 日韩欧美亚洲一区二区| 久久午夜电影网| 中文字幕在线一区| 亚洲一区二区三区在线看 | 国内偷窥港台综合视频在线播放| 麻豆一区二区三| 国产成人精品影视| 91蜜桃免费观看视频| 精品视频1区2区| 日韩一区二区三区视频| 亚洲国产精品99久久久久久久久| 亚洲情趣在线观看| 视频一区在线视频| 国产精品亚洲一区二区三区妖精 | 欧美日产国产精品| 精品福利av导航| 国产精品超碰97尤物18| 亚洲高清在线精品| 国产精品1024| 欧美综合视频在线观看| 久久综合色播五月| 亚洲国产wwwccc36天堂| 国产经典欧美精品| 91精品黄色片免费大全| 中文字幕av一区 二区| 日韩电影在线观看网站| 在线观看视频一区二区| 日韩欧美中文字幕精品| 久久电影网电视剧免费观看| 成人av网站在线| 日韩女优av电影| 亚洲自拍另类综合| 另类综合日韩欧美亚洲| 亚洲伦在线观看| 一本大道久久a久久精品综合| 亚洲精品视频在线观看网站| 欧美伊人久久久久久久久影院| 午夜伦理一区二区| 精品福利二区三区| www.av亚洲| 亚洲成av人在线观看| 91精品国产91久久久久久最新毛片| 日韩精品一二三四| 久久久91精品国产一区二区精品 | 香蕉久久夜色精品国产使用方法| 在线成人免费观看| 国产剧情一区二区| 成人免费在线视频| 3d成人h动漫网站入口| 国产大陆亚洲精品国产| 一区二区三区视频在线看| 欧美二区乱c少妇| 国产91在线看| 亚洲一区二区视频| 中文字幕va一区二区三区| 欧美片在线播放| 国产成人av影院| 亚洲高清久久久| 中文字幕av一区二区三区高 | 视频在线观看一区二区三区| 国产色综合一区| 欧美日韩久久不卡| 国产成人aaa| 天天综合天天做天天综合| 国产精品久久夜| 欧美一级淫片007| 91久久免费观看| 国产福利一区二区三区在线视频| 亚洲国产精品影院| 国产亚洲制服色| 日韩午夜在线影院| 欧美日韩一区高清| 97精品久久久午夜一区二区三区 | 粉嫩av亚洲一区二区图片| 天天av天天翘天天综合网| 最新不卡av在线| 国产亚洲欧美激情| 欧美一二区视频| 欧美久久久久久久久久| 色综合久久久久综合体桃花网| 国产精品一二三四五| 麻豆一区二区在线| 美国毛片一区二区| 日韩电影在线看| 五月婷婷另类国产| 午夜精品爽啪视频| 一区二区三区日韩欧美精品| 亚洲欧美日韩国产一区二区三区| 国产精品日日摸夜夜摸av| 久久久久久久久久久电影| 欧美tk丨vk视频| 欧美大肚乱孕交hd孕妇| 欧美一区二区三区视频在线观看 | 国产三级三级三级精品8ⅰ区| 国产一区二区三区黄视频 | 欧美一级日韩不卡播放免费| 欧美三电影在线| 成人av电影免费在线播放| 久久成人18免费观看| 亚洲精品一二三| 国产精品久线观看视频| 欧美一区二区三区视频| 欧美在线视频日韩| 99国产精品一区| 国产激情精品久久久第一区二区| 日韩国产精品久久久| 一区二区久久久| 水野朝阳av一区二区三区| 亚洲一区二区三区精品在线| 亚洲日本一区二区| 国产精品灌醉下药二区| 久久一区二区视频| 久久久精品国产免费观看同学| 日韩免费看网站| 91精品国产91久久久久久一区二区| 91麻豆精东视频| 色噜噜狠狠一区二区三区果冻| 六月婷婷色综合| 亚洲香蕉伊在人在线观| 亚洲国产综合人成综合网站| 免费在线欧美视频| 久久国产精品第一页| 久久国产精品99久久人人澡| 久久se这里有精品| 九九国产精品视频| 99久久er热在这里只有精品15 | 欧美中文字幕一区二区三区亚洲| 91高清视频免费看| 欧美色大人视频| 9191成人精品久久| 日韩一级欧美一级| 日韩欧美区一区二| 一区在线观看免费| 一区二区三区四区高清精品免费观看| 亚洲人成网站影音先锋播放| 夜夜嗨av一区二区三区中文字幕| 亚洲色图欧美在线| 久久av中文字幕片| 国产精品一区久久久久| 成人激情动漫在线观看| 色综合av在线| 欧美精品久久久久久久多人混战| 国产欧美一区二区三区鸳鸯浴 | 日韩免费福利电影在线观看| 久久婷婷国产综合精品青草| 国产精品美女久久久久久久| 亚洲色图欧洲色图婷婷| 激情久久五月天| av不卡免费电影| 欧美日本视频在线| 久久久蜜臀国产一区二区| 亚洲成人先锋电影| 国产福利一区二区三区视频在线| 91在线视频官网| 欧美一卡在线观看| 久久男人中文字幕资源站| 天天色综合成人网| 成人一区二区在线观看| 欧美日韩性生活| 国产女人18水真多18精品一级做| 一区二区在线观看免费| 精品一区二区影视| 色妞www精品视频| 久久综合色婷婷| 中文字幕一区二区三区不卡在线| 国产裸体歌舞团一区二区| 91久久精品日日躁夜夜躁欧美| www国产精品av| 亚洲高清视频在线| 国产成人午夜精品5599| 欧美日韩免费电影| 一区二区三区中文免费| 国产成人精品综合在线观看| 欧美一区二区三区爱爱| 亚洲男人都懂的| 极品少妇一区二区| 精品国产百合女同互慰| 午夜精品一区在线观看| 91亚洲精品一区二区乱码| 日韩一级黄色片| 久久国产精品99久久人人澡| 欧美麻豆精品久久久久久| 中文字幕色av一区二区三区| 狠狠色丁香婷综合久久|