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

📄 pgindent

📁 PostgreSQL7.4.6 for 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	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 -l75 \		-lp -nip -npro -bbb $EXTRA_OPTS \-TASN1_BIT_STRING \-TASN1_BMPSTRING \-TASN1_BOOLEAN \-TASN1_CTX \-TASN1_ENUMERATED \-TASN1_GENERALIZEDTIME \-TASN1_GENERALSTRING \-TASN1_HEADER \-TASN1_IA5STRING \-TASN1_INTEGER \-TASN1_METHOD \-TASN1_NULL \-TASN1_OBJECT \-TASN1_OCTET_STRING \-TASN1_PRINTABLESTRING \-TASN1_STRING \-TASN1_STRING_TABLE \-TASN1_T61STRING \-TASN1_TIME \-TASN1_TYPE \-TASN1_UNIVERSALSTRING \-TASN1_UTCTIME \-TASN1_UTF8STRING \-TASN1_VISIBLESTRING \-TA_Const \-TA_Expr \-TA_Expr_Kind \-TA_Indices \-TAbsoluteTime \-TAcl \-TAclId \-TAclItem \-TAclMode \-TAclObjectKind \-TAclResult \-TAgg \-TAggHashEntry \-TAggHashEntryData \-TAggInfo \-TAggState \-TAggStatePerAgg \-TAggStatePerAggData \-TAggStatePerGroup \-TAggStatePerGroupData \-TAggStrategy \-TAggref \-TAggrefExprState \-TAlgCode \-TAlias \-TAllocBlock \-TAllocBlockData \-TAllocChunk \-TAllocChunkData \-TAllocPointer \-TAllocSet \-TAllocSetContext \-TAlterDatabaseSetStmt \-TAlterDomainStmt \-TAlterGroupStmt \-TAlterSeqStmt \-TAlterTableStmt \-TAlterUserSetStmt \-TAlterUserStmt \-TAppend \-TAppendPath \-TAppendState \-TArchive \-TArchiveEntryPtr \-TArchiveFormat \-TArchiveHandle \-TArchiveMode \-TArrayBuildState \-TArrayExpr \-TArrayExprState \-TArrayMetaState \-TArrayRef \-TArrayRefExprState \-TArrayType \-TAtom \-TAttInMetadata \-TAttrDefault \-TAttrNumber \-TAuthRequest \-TBF_KEY \-TBIGNUM \-TBIO \-TBIO_F_BUFFER_CTX \-TBIO_METHOD \-TBIO_dummy \-TBIT_STRING_BITNAME \-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 \-TBUF_MEM \-TBackend \-TBackendId \-TBitmapset \-TBkpBlock \-TBlock \-TBlockId \-TBlockIdData \-TBlockNumber \-TBoolExpr \-TBoolExprState \-TBoolExprType \-TBoolPtr \-TBoolTestType \-TBooleanTest \-TBpChar \-TBucket \-TBufFile \-TBufFlags \-TBuffer \-TBufferDesc \-TBufferLookupEnt \-TBufferTag \-TByte \-TBytef \-TCAST_KEY \-TCATEGORY \-TCBC_PARAM \-TCIRCLE \-TCOMP_CTX \-TCOMP_METHOD \-TCONSTRAINTCATEGORY \-TCPFunction \-TCPPFunction \-TCRYPTO_EX_DATA \-TCRYPTO_EX_DATA_FUNCS \-TCRYPTO_EX_dup \-TCRYPTO_EX_free \-TCRYPTO_EX_new \-TCRYPTO_dynlock \-TCacheCallbackFunction \-TCancelRequestPacket \-TCaseExpr \-TCaseExprState \-TCaseWhen \-TCaseWhenState \-TCash \-TCatCList \-TCatCTup \-TCatCache \-TCatCacheHeader \-TCatalogIndexState \-TChangeVarNodes_context \-TCheckPoint \-TCheckPointStmt \-TChromosome \-TCity \-TClientData \-TClosePortalStmt \-TClosePtr \-TClusterStmt \-TCmdType \-TCoalesceExpr \-TCoalesceExprState \-TCoerceToDomain \-TCoerceToDomainState \-TCoerceToDomainValue \-TCoercionCodes \-TCoercionContext \-TCoercionForm \-TColormap \-TColumnDef \-TColumnRef \-TCommandDest \-TCommandId \-TCommentStmt \-TCompositeTypeStmt \-TConnStatusType \-TConst \-TConstrCheck \-TConstrType \-TConstraint \-TConstraintsSetStmt \-TControlFileData \-TCopyDest \-TCopyReadResult \-TCopyStmt \-TCost \-TCostSelector \-TCreateCastStmt \-TCreateConversionStmt \-TCreateDomainStmt \-TCreateFunctionStmt \-TCreateGroupStmt \-TCreateOpClassItem \-TCreateOpClassStmt \-TCreatePLangStmt \-TCreateSchemaStmt \-TCreateSchemaStmtContext \-TCreateSeqStmt \-TCreateStmt \-TCreateStmtContext \-TCreateTrigStmt \-TCreateUserStmt \-TCreatedbStmt \-TCred \-TCursor \-TCustomOutPtr \-TDBState \-TDCHCacheEntry \-TDCH_poz \-TDEADLOCK_INFO \-TDH \-TDH_METHOD \-TDIR \-TDR_printtup \-TDSA \-TDSA_METHOD \-TDSA_SIG \-TDataDumperPtr \-TDateADT \-TDatum \-TDatumPtr \-TDatumTuple \-TDeallocateStmt \-TDeclareCursorStmt \-TDefElem \-TDeferredTriggerEvent \-TDeferredTriggerEventData \-TDeferredTriggerEventItem \-TDeferredTriggerStatus \-TDeferredTriggerStatusData \-TDeferredTriggers \-TDeferredTriggersData \-TDefineStmt \-TDeleteStmt \-TDependencyType \-TDepth \-TDestReceiver \-TDisplay \-TDistinctExpr \-TDl_info \-TDlelem \-TDllist \-TDomainConstraintState \-TDomainConstraintType \-TDrawable \-TDropBehavior \-TDropCastStmt \-TDropGroupStmt \-TDropPLangStmt \-TDropPropertyStmt \-TDropStmt \-TDropUserStmt \-TDropdbStmt \-TDumpContext \-TDynamicFileList \-TEDGE \-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 \-TEolType \-TErrorContextCallback \-TErrorData \-TExecScanAccessMtd \-TExecStatus \-TExecStatusType \-TExecuteStmt \-TExplainState \-TExplainStmt \-TExpr \-TExprContext \-TExprContextCallbackFunction \-TExprContext_CB \-TExprDoneCond \-TExprFieldSelect \-TExprState \-TFILE \-TFSMHeader \-TFSMPageData \-TFSMRelation \-TFUNMAP \-TFastList \-TFetchDirection \-TFetchStmt \-TFieldSelect \-TFile \-TFileName \-TFindSplitData \-TFkConstraint \-TFmgrBuiltin \-TFmgrInfo \-TFont \-TFormData_pg_aggregate \-TFormData_pg_am \-TFormData_pg_amop \-TFormData_pg_amproc \-TFormData_pg_attrdef \-TFormData_pg_attribute \-TFormData_pg_cast \-TFormData_pg_class \-TFormData_pg_constraint \-TFormData_pg_conversion \-TFormData_pg_database \-TFormData_pg_depend \-TFormData_pg_description \-TFormData_pg_group \-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_proc \-TFormData_pg_rewrite \-TFormData_pg_sequence \-TFormData_pg_shadow \-TFormData_pg_statistic \-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_cast \-TForm_pg_class \-TForm_pg_constraint \-TForm_pg_conversion \-TForm_pg_database \-TForm_pg_depend \-TForm_pg_description \-TForm_pg_group \-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_proc \-TForm_pg_rewrite \-TForm_pg_sequence \-TForm_pg_shadow \-TForm_pg_statistic \-TForm_pg_trigger \-TForm_pg_type \-TFormatNode \-TFromExpr \-TFsmCacheFileHeader \-TFsmCacheRelHeader \-TFuncCall \-TFuncCallContext \-TFuncCandidateList \-TFuncDetailCode \-TFuncExpr \-TFuncExprState \-TFuncInfo \-TFuncWithArgs \-TFunction \-TFunctionCallInfo \-TFunctionCallInfoData \-TFunctionScan \-TFunctionScanState \-TGC \-TGContext \-TGISTBuildState \-TGISTENTRY \-TGISTPageOpaque \-TGISTPageOpaqueData \-TGISTSTACK \-TGISTSTATE \-TGISTScanList \-TGISTScanListData \-TGISTScanOpaque \-TGISTScanOpaqueData \-TGIST_SPLITVEC \-TGUC_yy_size_t \-TGUC_yy_state_type \-TGene \-TGenericExprState \-TGrantObjectType \-TGrantStmt \-TGroup \-TGroupClause \-TGroupState \-TGucContext \-TGucSource \-THASHACTION \-THASHBUCKET \-THASHCTL \-THASHELEMENT \-THASHHDR \-THASHSEGMENT \-THASH_SEQ_STATUS \-THISTORY_STATE \-THIST_ENTRY \-THTAB \-THTSV_Result \-THash \-THashBuildState \-THashItem \-THashItemData \-THashJoin \-THashJoinState \-THashJoinTable \-THashJoinTuple \-THashJoinTupleData \-THashMetaPage \-THashMetaPageData \-THashPageOpaque \-THashPageOpaqueData \-THashPath \-THashScanList \-THashScanListData \-THashScanOpaque \-THashScanOpaqueData \-THashState \-THashTableData \-THeapScanDesc \-THeapScanDescData \-THeapTuple \-THeapTupleData \-THeapTupleHeader \-THeapTupleHeaderData \-TIOFuncSelector \-TIdList \-TInClauseInfo \-TIncrementVarSublevelsUp_context \-TIndex \-TIndexAttributeBitMap \-TIndexAttributeBitMapData \-TIndexAttrs \-TIndexBuildCallback \-TIndexBulkDeleteCallback \-TIndexBulkDeleteResult \-TIndexElem \-TIndexFSMPageData \-TIndexInfo \-TIndexList \-TIndexOptInfo \-TIndexPath \-TIndexScan \-TIndexScanDesc \-TIndexScanDescData \-TIndexScanDescPtr \-TIndexScanState \-TIndexStmt \-TIndexStrategy \-TIndexStrategyData \-TIndexTuple \-TIndexTupleData \-TIndexVacuumCleanupInfo \-TIndirectBlock \-TInhInfo \-TInhOption \-TInhPaths \-TInhRelation \-TInnerIndexscanInfo \-TInsertIndexResult \-TInsertIndexResultData \-TInsertStmt \-TInstrumentation \-TInt8TransTypeData \-TIntArray \-TInt_yy_size_t \-TInt_yy_state_type \-TInt_yysigned_char \-TInterval \-TInvalidationChunk \-TInvalidationListHeader \-TIpcMemoryId \-TIpcMemoryKey \-TIpcSemaphoreId \-TIpcSemaphoreKey \-TItem \-TItemId \-TItemIdData \-TItemIdFlags \-TItemLength \-TItemOffset \-TItemPointer \-TItemPointerData \-TJoin \-TJoinExpr \-TJoinInfo \-TJoinPath \-TJoinState \

⌨️ 快捷键说明

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