private void dump( PrintWriter out, Predicate<String> keyFilter, boolean contrastRatios ) {
		dumpHeader( out );

		defaults.entrySet().stream()
			.sorted( (e1, e2) -> {
				return String.valueOf( e1.getKey() ).compareTo( String.valueOf( e2.getKey() ) );
			} )
			.forEach( entry -> {
				Object key = entry.getKey();
				Object value = entry.getValue();

				String strKey = String.valueOf( key );
				if( !keyFilter.test( strKey ) || strKey.startsWith( "FlatLaf.internal." ) )
					return;

				String prefix = keyPrefix( strKey );
				if( !prefix.equals( lastPrefix ) ) {
					lastPrefix = prefix;
					out.printf( "%n%n#---- %s ----%n%n", prefix );
				}

				out.printf( "%-30s ", strKey );
				dumpValue( out, strKey, value );
				out.println();
			} );

		if( contrastRatios )
			dumpContrastRatios( out );
	}
Dumps look and feel UI defaults to files.

@author Karl Tauber
flatlaf-testing/src/main/java/com/formdev/flatlaf/testing/uidefaults/UIDefaultsDump.java