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

📄 pgindent

📁 PostgreSQL 8.1.4的源码 适用于Linux下的开源数据库系统
💻
📖 第 1 页 / 共 3 页
字号:
#!/bin/sh# Known bugs:## Blank line is added after, seen as a function definition, no space# after *:#	y = (int) x *y;trap "rm -f /tmp/$$ /tmp/$$a" 0 1 2 3 15entab </dev/null >/dev/nullif [ "$?" -ne 0 ]then	echo "Go to the src/tools/entab directory and do a 'make' and 'make install'." >&2	echo "This will put the 'entab' command in your path." >&2	echo "Then run $0 again."	exit 1fiindent -? </dev/null >/dev/null 2>&1if [ "$?" -ne 1 ]then	echo "You do not appear to have 'indent' installed on your system." >&2	exit 1fiindent -gnu </dev/null >/dev/null 2>&1if [ "$?" -eq 0 ]then	echo "You appear to have GNU indent rather than BSD indent." >&2	echo "See the pgindent/README file for a description of its problems." >&2	EXTRA_OPTS="-cdb -bli0 -npcs -cli4 -sc"else	echo "Hope you installed /src/tools/pgindent/indent.bsd.patch." >&2	EXTRA_OPTS="-cli1"fifor FILEdo	cat "$FILE" |# convert // comments to /* */	sed 's;^\([ 	]*\)//\(.*\)$;\1/* \2 */;g' |# Avoid bug that converts 'x =- 1' to 'x = -1'	sed 's;=- ;-= ;g' |# mark some comments for special treatment later	sed 's;/\*  *---;/*---X_X;g' |# workaround for indent bug with 'else' handling# indent comment so BSD indent will move it	sed 's;\([} 	]\)else[ 	]*\(/\*.*\)$;\1else\    \2;g' | 	detab -t4 -qc |# work around bug where function that defines no local variables misindents# switch() case lines and line after #else.  Do not do for struct/enum.	awk '	BEGIN	{line1 = ""; line2 = ""}		{			line2 = $0;	 		if (NR >= 2)				print line1;			if (NR >= 2 &&			    line2 ~ /^{[ 	]*$/ &&			    line1 !~ /^struct/ &&			    line1 !~ /^enum/ &&			    line1 !~ /^typedef/ &&			    line1 !~ /^extern[ 	][ 	]*"C"/ &&			    line1 !~ /=/ &&			    line1 ~ /\)/)				print "int	pgindent_func_no_var_fix;";			line1 = line2;		}		END {			if (NR >= 1)				print line1;		}' |# prevent indenting of code in 'extern "C"' blocks	awk '	BEGIN	{line1 = ""; line2 = ""; skips = 0}		{			line2 = $0;			if (skips > 0)				skips--;			if (line1 ~ /^#ifdef[ 	]*__cplusplus/ &&			    line2 ~ /^extern[ 	]*"C"[ 	]*$/)			{				print line1;				print line2;				if (getline && $0 ~ /^{[ 	]*$/)					print "/* Open extern \"C\" */";				else	print $0;				line2 = "";				skips = 2;			}			else if (line1 ~ /^#ifdef[ 	]*__cplusplus/ &&			    line2 ~ /^}[ 	]*$/)			{				print line1;				print "/* Close extern \"C\" */";				line2 = "";				skips = 2;			}			else	 			if (skips == 0 && NR >= 2)					print line1;			line1 = line2;		}		END {			if (NR >= 1 && skips <= 1)				print line1;		}' |# protect backslashes in DATA()	sed 's;^DATA(.*$;/*&*/;' |# protect wrapping in CATALOG()	sed 's;^CATALOG(.*$;/*&*/;' >/tmp/$$a# We get the list of typedef's from /src/tools/find_typedef	indent -bad -bap -bc -bl -d0 -cdb -nce -nfc1 -di12 -i4 -l79 \		-lp -nip -npro -bbb $EXTRA_OPTS \-TAES_KEY \-TAMT \-TAMTS \-TASN1_BIT_STRING \-TASN1_BMPSTRING \-TASN1_BOOLEAN \-TASN1_CTX \-TASN1_ENCODING \-TASN1_ENUMERATED \-TASN1_GENERALIZEDTIME \-TASN1_GENERALSTRING \-TASN1_HEADER \-TASN1_IA5STRING \-TASN1_INTEGER \-TASN1_ITEM \-TASN1_ITEM_EXP \-TASN1_METHOD \-TASN1_NULL \-TASN1_OBJECT \-TASN1_OCTET_STRING \-TASN1_PRINTABLESTRING \-TASN1_STRING \-TASN1_STRING_TABLE \-TASN1_T61STRING \-TASN1_TEMPLATE \-TASN1_TIME \-TASN1_TLC \-TASN1_TYPE \-TASN1_UNIVERSALSTRING \-TASN1_UTCTIME \-TASN1_UTF8STRING \-TASN1_VALUE \-TASN1_VISIBLESTRING \-TAV \-TA_Const \-TA_Expr \-TA_Expr_Kind \-TA_Indices \-TA_Indirection \-TAbsoluteTime \-TAcl \-TAclItem \-TAclMaskHow \-TAclMode \-TAclObjectKind \-TAclResult \-TAfterTriggerEvent \-TAfterTriggerEventData \-TAfterTriggerEventList \-TAfterTriggers \-TAfterTriggersData \-TAgg \-TAggClauseCounts \-TAggHashEntry \-TAggHashEntryData \-TAggInfo \-TAggState \-TAggStatePerAgg \-TAggStatePerAggData \-TAggStatePerGroup \-TAggStatePerGroupData \-TAggStrategy \-TAggref \-TAggrefExprState \-TAlias \-TAllocBlock \-TAllocBlockData \-TAllocChunk \-TAllocChunkData \-TAllocPointer \-TAllocSet \-TAllocSetContext \-TAllocateDesc \-TAllocateDescKind \-TAlterDatabaseSetStmt \-TAlterDatabaseStmt \-TAlterDomainStmt \-TAlterFunctionStmt \-TAlterObjectSchemaStmt \-TAlterOwnerStmt \-TAlterRoleSetStmt \-TAlterRoleStmt \-TAlterSeqStmt \-TAlterTableCmd \-TAlterTableStmt \-TAlterTableType \-TAlteredTableInfo \-TAnalyzeAttrFetchFunc \-TAnlIndexData \-TAppend \-TAppendPath \-TAppendState \-TArchive \-TArchiveEntryPtr \-TArchiveFormat \-TArchiveHandle \-TArchiveMode \-TArchiverStage \-TArrayBuildState \-TArrayExpr \-TArrayExprState \-TArrayMapState \-TArrayMetaState \-TArrayParseState \-TArrayRef \-TArrayRefExprState \-TArrayTuple \-TArrayType \-TAttInMetadata \-TAttrDefInfo \-TAttrDefault \-TAttrNumber \-TAuthRequest \-TBF_KEY \-TBIGNUM \-TBINOP \-TBIO \-TBIO_F_BUFFER_CTX \-TBIO_METHOD \-TBIO_dummy \-TBIT_STRING_BITNAME \-TBLOCK \-TBMS_Membership \-TBN_BLINDING \-TBN_CTX \-TBN_MONT_CTX \-TBN_RECP_CTX \-TBOX \-TBTBuildState \-TBTItem \-TBTItemData \-TBTMetaPageData \-TBTPageOpaque \-TBTPageOpaqueData \-TBTPageState \-TBTScanOpaque \-TBTScanOpaqueData \-TBTSpool \-TBTStack \-TBTStackData \-TBTWriteState \-TBUF_MEM \-TBackend \-TBackendId \-TBgWriterRequest \-TBgWriterShmemStruct \-TBitmapAnd \-TBitmapAndPath \-TBitmapAndState \-TBitmapHeapPath \-TBitmapHeapScan \-TBitmapHeapScanState \-TBitmapIndexScan \-TBitmapIndexScanState \-TBitmapOr \-TBitmapOrPath \-TBitmapOrState \-TBitmapset \-TBkpBlock \-TBlock \-TBlockId \-TBlockIdData \-TBlockNumber \-TBlockSampler \-TBlockSamplerData \-TBoolExpr \-TBoolExprState \-TBoolExprType \-TBoolPtr \-TBoolTestType \-TBooleanTest \-TBpChar \-TBucket \-TBufFile \-TBufFlags \-TBuffer \-TBufferDesc \-TBufferLookupEnt \-TBufferStrategyControl \-TBufferTag \-TByte \-TBytef \-TCAC_state \-TCAST_KEY \-TCATEGORY \-TCFuncHashTabEntry \-TCIRCLE \-TCOMP_CTX \-TCOMP_METHOD \-TCONDOP \-TCOP \-TCPFunction \-TCPPFunction \-TCRYPTO_EX_DATA \-TCRYPTO_EX_DATA_FUNCS \-TCRYPTO_EX_DATA_IMPL \-TCRYPTO_EX_dup \-TCRYPTO_EX_free \-TCRYPTO_EX_new \-TCRYPTO_MEM_LEAK_CB \-TCRYPTO_dynlock \-TCURCUR \-TCV \-TCacheCallbackFunction \-TCancelRequestPacket \-TCaseExpr \-TCaseExprState \-TCaseTestExpr \-TCaseWhen \-TCaseWhenState \-TCash \-TCastInfo \-TCatCList \-TCatCTup \-TCatCache \-TCatCacheHeader \-TCatalogId \-TCatalogIndexState \-TChangeVarNodes_context \-TCheckPoint \-TCheckPointStmt \-TChromosome \-TCity \-TClientData \-TClosePortalStmt \-TClosePtr \-TClusterStmt \-TCmdType \-TCoalesceExpr \-TCoalesceExprState \-TCoerceToDomain \-TCoerceToDomainState \-TCoerceToDomainValue \-TCoercionCodes \-TCoercionContext \-TCoercionForm \-TColumnDef \-TColumnIOData \-TColumnRef \-TCommandDest \-TCommandId \-TCommentItem \-TCommentStmt \-TCompositeTypeStmt \-TConnStatusType \-TConst \-TConstrCheck \-TConstrType \-TConstraint \-TConstraintCategory \-TConstraintInfo \-TConstraintsSetStmt \-TContainsOids \-TControlFileData \-TConvInfo \-TConvertRowtypeExpr \-TConvertRowtypeExprState \-TCookedConstraint \-TCopyDest \-TCopyState \-TCopyStateData \-TCopyStmt \-TCost \-TCostSelector \-TCreateCastStmt \-TCreateConversionStmt \-TCreateDomainStmt \-TCreateFunctionStmt \-TCreateOpClassItem \-TCreateOpClassStmt \-TCreatePLangStmt \-TCreateRoleStmt \-TCreateSchemaStmt \-TCreateSchemaStmtContext \-TCreateSeqStmt \-TCreateStmt \-TCreateStmtContext \-TCreateTableSpaceStmt \-TCreateTrigStmt \-TCreatedbStmt \-TCred \-TCtlCommand \-TCustomOutPtr \-TDBState \-TDCHCacheEntry \-TDCH_poz \-TDEADLOCK_INFO \-TDES_cblock \-TDES_key_schedule \-TDH \-TDH_METHOD \-TDIR \-TDR_printtup \-TDSA \-TDSA_METHOD \-TDSA_SIG \-TDataDumperPtr \-TDateADT \-TDatum \-TDatumPtr \-TDatumTuple \-TDatumTupleFields \-TDeallocateStmt \-TDeclareCursorStmt \-TDefElem \-TDefineStmt \-TDeleteStmt \-TDependencyType \-TDestReceiver \-TDistinctExpr \-TDl_info \-TDlelem \-TDllist \-TDomainConstraintState \-TDomainConstraintType \-TDropBehavior \-TDropCastStmt \-TDropPLangStmt \-TDropPropertyStmt \-TDropRoleStmt \-TDropStmt \-TDropTableSpaceStmt \-TDropdbStmt \-TDumpId \-TDumpableObject \-TDumpableObjectType \-TDynamicFileList \-TEDGE \-TENGINE \-TERR_FNS \-TERR_STATE \-TERR_STRING_DATA \-TEState \-TEVP_CIPHER \-TEVP_CIPHER_CTX \-TEVP_CIPHER_INFO \-TEVP_ENCODE_CTX \-TEVP_MD \-TEVP_MD_CTX \-TEVP_PBE_KEYGEN \-TEVP_PKEY \-TEdge \-TEndBlobPtr \-TEndBlobsPtr \-TEndDataPtr \-TEntryUpdateRecord \-TEolType \-TErrorContextCallback \-TErrorData \-TExceptionLabelMap \-TExecContext \-TExecContextData \-TExecScanAccessMtd \-TExecStatus \-TExecStatusType \-TExecuteStmt \-TExplainState \-TExplainStmt \-TExpr \-TExprContext \-TExprContextCallbackFunction \-TExprContext_CB \-TExprDoneCond \-TExprState \-TExprStateEvalFunc \-TFF \-TFILE \-TFSMHeader \-TFSMPageData \-TFSMRelation \-TFUNMAP \-TFetchDirection \-TFetchStmt \-TFieldSelect \-TFieldSelectState \-TFieldStore \-TFieldStoreState \-TFile \-TFileName \-TFindSplitData \-TFkConstraint \-TFmgrBuiltin \-TFmgrInfo \-TFormData_pg_aggregate \-TFormData_pg_am \-TFormData_pg_amop \-TFormData_pg_amproc \-TFormData_pg_attrdef \-TFormData_pg_attribute \-TFormData_pg_auth_members \-TFormData_pg_authid \-TFormData_pg_autovacuum \-TFormData_pg_cast \-TFormData_pg_class \-TFormData_pg_constraint \-TFormData_pg_conversion \-TFormData_pg_database \-TFormData_pg_depend \-TFormData_pg_description \-TFormData_pg_index \-TFormData_pg_inherits \-TFormData_pg_language \-TFormData_pg_largeobject \-TFormData_pg_listener \-TFormData_pg_namespace \-TFormData_pg_opclass \-TFormData_pg_operator \-TFormData_pg_pltemplate \-TFormData_pg_proc \-TFormData_pg_rewrite \-TFormData_pg_sequence \-TFormData_pg_shdepend \-TFormData_pg_statistic \-TFormData_pg_tablespace \-TFormData_pg_trigger \-TFormData_pg_type \-TForm_pg_aggregate \-TForm_pg_am \-TForm_pg_amop \-TForm_pg_amproc \-TForm_pg_attrdef \-TForm_pg_attribute \-TForm_pg_auth_members \-TForm_pg_authid \-TForm_pg_autovacuum \-TForm_pg_cast \-TForm_pg_class \-TForm_pg_constraint \-TForm_pg_conversion \-TForm_pg_database \-TForm_pg_depend \-TForm_pg_description \-TForm_pg_index \-TForm_pg_inherits \-TForm_pg_language \-TForm_pg_largeobject \-TForm_pg_listener \-TForm_pg_namespace \-TForm_pg_opclass \-TForm_pg_operator \-TForm_pg_pltemplate \-TForm_pg_proc \-TForm_pg_rewrite \-TForm_pg_sequence \-TForm_pg_shdepend \-TForm_pg_statistic \-TForm_pg_tablespace \-TForm_pg_trigger \-TForm_pg_type \-TFormatNode \-TFromExpr \-TFsmCacheFileHeader \-TFsmCacheRelHeader \-TFuncCall \-TFuncCallContext \-TFuncCandidateList \-TFuncDetailCode \-TFuncExpr \-TFuncExprState \-TFuncInfo \-TFuncWithArgs \-TFunction \-TFunctionCallInfo \-TFunctionCallInfoData \-TFunctionParameter \-TFunctionParameterMode \-TFunctionScan \-TFunctionScanState \-TGEN_SESSION_CB \-TGISTBuildState \-TGISTENTRY \-TGISTInsertStack \-TGISTInsertState \-TGISTPageOpaque \-TGISTPageOpaqueData \-TGISTSTATE \-TGISTScanList \-TGISTScanListData \-TGISTScanOpaque \-TGISTScanOpaqueData \-TGISTSearchStack \-TGIST_SPLITVEC \-TGP \-TGUC_yy_size_t \-TGUC_yy_state_type \-TGV \-TGVOP \-TGene \-TGenericExprState \-TGeqoEvalData \-TGistBDItem \-TGistEntryVector \-TGistNSN \-TGistVacuum \-TGlobalTransaction \-TGlobalTransactionData \-TGrantObjectType \-TGrantRoleStmt \-TGrantStmt \-TGroup \-TGroupClause \-TGroupState \-TGroupVarInfo \-TGucBoolAssignHook \-TGucContext \-TGucIntAssignHook \-TGucRealAssignHook \-TGucShowHook \-TGucSource \-TGucStack \-TGucStringAssignHook \-THASHACTION \-THASHBUCKET \-THASHCTL \-THASHELEMENT \-THASHHDR \-THASHSEGMENT \-THASH_SEQ_STATUS \-THE \-THEK \-THISTORY_STATE \-THIST_ENTRY \-THTAB \-THTSU_Result \-THTSV_Result \-THV \-THash \-THashAllocFunc \-THashBuildState \-THashCompareFunc \-THashCopyFunc \-THashItem \-THashItemData \-THashJoin \-THashJoinState \-THashJoinTable \-THashJoinTableData \-THashJoinTuple \-THashJoinTupleData \-THashMetaPage \-THashMetaPageData \-THashPageOpaque \-THashPageOpaqueData \-THashPath \-THashScanList \-THashScanListData \-THashScanOpaque \-THashScanOpaqueData \-THashState \-THashValueFunc \-THeapScanDesc \-THeapScanDescData \-THeapTuple \-THeapTupleData \-THeapTupleFields \-THeapTupleHeader \-THeapTupleHeaderData \-TI16 \-TI32 \

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -