## org.gjt.sp.util
Class StandardUtilities

    java.lang.Object
      org.gjt.sp.util.StandardUtilities

    public class StandardUtilities

extends java.lang.Object

Several tools that depends on JDK only.

Since:
  4.3pre5

Nested Class Summary
`static class` `StandardUtilities.StringCompare<E>` Compares objects as strings.

Field Summary
`static java.text.DecimalFormat` `KB_FORMAT`
`static java.text.DecimalFormat` `MB_FORMAT`

Method Summary
`static java.lang.String` `charsToEscapes(java.lang.String str)` Escapes newlines, tabs, backslashes, and quotes in the specified string.
`static java.lang.String` `charsToEscapes(java.lang.String str, java.lang.String toEscape)` Escapes the specified characters in the specified string.
`static int` `compareStrings(java.lang.String str1, java.lang.String str2, boolean ignoreCase)` Compares two strings.
`static java.lang.String` `createWhiteSpace(int len, int tabSize)` Creates a string of white space with the specified length.
`static java.lang.String` `createWhiteSpace(int len, int tabSize, int start)` Creates a string of white space with the specified length.
`static java.lang.String` `formatFileSize(long length)` Formats the given file size into a nice string (123 Bytes, 10.6 kB, 1.2 MB).
`static boolean` `getBoolean(java.lang.Object obj, boolean def)` Returns a boolean from a given object.
`static java.lang.String` `getIndentString(java.lang.String str)`
`static int` `getLeadingWhiteSpace(java.lang.CharSequence str)` Returns the number of leading white space characters in the specified string.
`static int` `getLeadingWhiteSpace(java.lang.String str)` Returns the number of leading white space characters in the specified string.
`static int` `getLeadingWhiteSpaceWidth(java.lang.CharSequence str, int tabSize)` Returns the width of the leading white space in the specified string.
`static int` `getLeadingWhiteSpaceWidth(java.lang.String str, int tabSize)` Returns the width of the leading white space in the specified string.
`static int` `getOffsetOfVirtualColumn(javax.swing.text.Segment seg, int tabSize, int column, int[] totalVirtualWidth)` Returns the array offset of a virtual column number (taking tabs into account) in the segment.
`static int` `getTrailingWhiteSpace(java.lang.String str)` Returns the number of trailing whitespace characters in the specified string.
`static int` `getVirtualWidth(javax.swing.text.Segment seg, int tabSize)` Returns the virtual column number (taking tabs into account) of the specified offset in the segment.
`static java.lang.String` `globToRE(java.lang.String glob)` Converts a Unix-style glob to a regular expression.
`static byte[]` `md5(java.lang.String s)` Returns the md5sum for given string.
`static boolean` `objectsEqual(java.lang.Object o1, java.lang.Object o2)` Returns if two strings are equal.
`static boolean` `regionMatches(java.lang.CharSequence seq, int toff, java.lang.CharSequence other, int ooff, int len)` Implementation of String.regionMatches() for CharSequence.
`static boolean` `startsWith(java.lang.CharSequence seq, java.lang.String str)` Implementation of String.startsWith() for CharSequence.
`static java.lang.String` `truncateWhiteSpace(int len, int tabSize, java.lang.String indentStr)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### KB_FORMAT

    public static final java.text.DecimalFormat KB_FORMAT

### MB_FORMAT

    public static final java.text.DecimalFormat MB_FORMAT

Method Detail

### charsToEscapes

    public static java.lang.String charsToEscapes(java.lang.String str)

  Escapes newlines, tabs, backslashes, and quotes in the specified string.

  Parameters:
    `str` - The string
  Since:
    jEdit 4.3pre15

### charsToEscapes

    public static java.lang.String charsToEscapes(java.lang.String str,
                                                  java.lang.String toEscape)

  Escapes the specified characters in the specified string.

  Parameters:
    `str` - The string
    `toEscape` - Any characters that require escaping
  Since:
    jEdit 4.3pre15

### getIndentString

    public static java.lang.String getIndentString(java.lang.String str)

  Parameters:
    `str` - A java string
  Returns:
    the leading whitespace of that string, for indenting subsequent lines.
  Since:
    jEdit 4.3pre10

### getLeadingWhiteSpace

    public static int getLeadingWhiteSpace(java.lang.String str)

  Returns the number of leading white space characters in the specified string.

  Parameters:
    `str` - The string

### getLeadingWhiteSpace

    public static int getLeadingWhiteSpace(java.lang.CharSequence str)

  Returns the number of leading white space characters in the specified string.

  Parameters:
    `str` - The string
  Since:
    jEdit 4.3pre15

### getTrailingWhiteSpace

    public static int getTrailingWhiteSpace(java.lang.String str)

  Returns the number of trailing whitespace characters in the specified string.

  Parameters:
    `str` - The string

### getLeadingWhiteSpaceWidth

    public static int getLeadingWhiteSpaceWidth(java.lang.String str,
                                                int tabSize)

  Returns the width of the leading white space in the specified string.

  Parameters:
    `str` - The string
    `tabSize` - The tab size

### getLeadingWhiteSpaceWidth

    public static int getLeadingWhiteSpaceWidth(java.lang.CharSequence str,
                                                int tabSize)

  Returns the width of the leading white space in the specified string.

  Parameters:
    `str` - The string
    `tabSize` - The tab size
  Since:
    jEdit 4.3pre15

### createWhiteSpace

    public static java.lang.String createWhiteSpace(int len,
                                                    int tabSize)

  Creates a string of white space with the specified length.

  To get a whitespace string tuned to the current buffer's settings, call this method as follows:

      myWhitespace = MiscUtilities.createWhiteSpace(myLength,
           (buffer.getBooleanProperty("noTabs") ? 0
           : buffer.getTabSize()));

  Parameters:
    `len` - The length
    `tabSize` - The tab size, or 0 if tabs are not to be used

### truncateWhiteSpace

    public static java.lang.String truncateWhiteSpace(int len,
                                                      int tabSize,
                                                      java.lang.String indentStr)

### createWhiteSpace

    public static java.lang.String createWhiteSpace(int len,
                                                    int tabSize,
                                                    int start)

  Creates a string of white space with the specified length.

  To get a whitespace string tuned to the current buffer's settings, call this method as follows:

      myWhitespace = MiscUtilities.createWhiteSpace(myLength,
           (buffer.getBooleanProperty("noTabs") ? 0
           : buffer.getTabSize()));

  Parameters:
    `len` - The length
    `tabSize` - The tab size, or 0 if tabs are not to be used
    `start` - The start offset, for tab alignment

### getVirtualWidth

    public static int getVirtualWidth(javax.swing.text.Segment seg,
                                      int tabSize)

  Returns the virtual column number (taking tabs into account) of the specified offset in the segment.

  Parameters:
    `seg` - The segment
    `tabSize` - The tab size

### getOffsetOfVirtualColumn

    public static int getOffsetOfVirtualColumn(javax.swing.text.Segment seg,
                                               int tabSize,
                                               int column,
                                               int[] totalVirtualWidth)

  Returns the array offset of a virtual column number (taking tabs into account) in the segment.

  Parameters:
    `seg` - The segment
    `tabSize` - The tab size
    `column` - The virtual column number
    `totalVirtualWidth` - If this array is non-null, the total virtual width will be stored in its first location if this method returns -1.
  Returns:
    -1 if the column is out of bounds

### compareStrings

    public static int compareStrings(java.lang.String str1,
                                     java.lang.String str2,
                                     boolean ignoreCase)

  Compares two strings.

  Unlike <function>String.compareTo()</function>, this method correctly recognizes and handles embedded numbers. For example, it places "My file 2" before "My file 10".

  Parameters:
    `str1` - The first string
    `str2` - The second string
    `ignoreCase` - If true, case will be ignored
  Returns:
    negative If str1 < str2, 0 if both are the same, positive if str1 > str2
  Since:
    jEdit 4.3pre5

### objectsEqual

    public static boolean objectsEqual(java.lang.Object o1,
                                       java.lang.Object o2)

  Returns if two strings are equal. This correctly handles null pointers, as opposed to calling `o1.equals(o2)`.

  Since:
    jEdit 4.3pre6

### globToRE

    public static java.lang.String globToRE(java.lang.String glob)

  Converts a Unix-style glob to a regular expression.

  ? becomes ., * becomes .*, {aa,bb} becomes (aa|bb).

  Parameters:
    `glob` - The glob pattern
  Since:
    jEdit 4.3pre7

### regionMatches

    public static boolean regionMatches(java.lang.CharSequence seq,
                                        int toff,
                                        java.lang.CharSequence other,
                                        int ooff,
                                        int len)

  Implementation of String.regionMatches() for CharSequence.

  Parameters:
    `seq` - The test CharSequence.
    `toff` - Offset for the test sequence.
    `other` - The sequence to compare to.
    `ooff` - Offset of the comparison sequence.
    `len` - How many characters to compare.
  Returns:
    Whether the two subsequences are equal.
  Since:
    jEdit 4.3pre15
  See Also:
    `String.regionMatches(int,String,int,int)`

### startsWith

    public static boolean startsWith(java.lang.CharSequence seq,
                                     java.lang.String str)

  Implementation of String.startsWith() for CharSequence.

  Parameters:
    `seq` - The CharSequence.
    `str` - String to test.
  Returns:
    Whether the sequence starts with the test string.
  Since:
    jEdit 4.3pre15

### getBoolean

    public static boolean getBoolean(java.lang.Object obj,
                                     boolean def)

  Returns a boolean from a given object.

  Parameters:
    `obj` - the object
    `def` - The default value
  Returns:
    the boolean value if obj is a Boolean, true if the value is "true", "yes", "on", false if the value is "false", "no", "off" def if the value is null or anything else
  Since:
    jEdit 4.3pre17

### formatFileSize

    public static java.lang.String formatFileSize(long length)

  Formats the given file size into a nice string (123 Bytes, 10.6 kB, 1.2 MB).

  Parameters:
    `length` - The size
  Since:
    jEdit 4.4pre1

### md5

    public static byte[] md5(java.lang.String s)

  Returns the md5sum for given string. Or dummy byte array on error Suppress NoSuchAlgorithmException because MD5 algorithm always present in JRE

  Parameters:
    `s` - Given string
  Returns:
    md5 sum of given string