--\r
--USING: help.syntax help.markup kernel prettyprint sequences strings ;\r
--\r
--IN: printf\r
--\r
--HELP: printf\r
--{ $values { "format-string" string } }\r
--{ $description "Writes the arguments (specified on the stack) formatted according to the format string." } \r
--{ $examples \r
-- { $example\r
-- "USING: printf ;"\r
-- "123 \"%05d\" printf"\r
-- "00123" }\r
-- { $example\r
-- "USING: printf ;"\r
-- "HEX: ff \"%04X\" printf"\r
-- "00FF" }\r
-- { $example\r
-- "USING: printf ;"\r
-- "1.23456789 \"%.3f\" printf"\r
-- "1.234" }\r
-- { $example \r
-- "USING: printf ;"\r
-- "1234567890 \"%.5e\" printf"\r
-- "1.23456e+09" }\r
-- { $example\r
-- "USING: printf ;"\r
-- "12 \"%'#4d\" printf"\r
-- "##12" }\r
-- { $example\r
-- "USING: printf ;"\r
-- "1234 \"%+d\" printf"\r
-- "+1234" }\r
--} ;\r
--\r
--HELP: sprintf\r
--{ $values { "format-string" string } { "result" string } }\r
--{ $description "Returns the arguments (specified on the stack) formatted according to the format string as a result string." } \r
--{ $see-also printf } ;\r
--\r
--ARTICLE: "printf" "Formatted printing"\r
- "The " { $vocab-link "printf" } " vocabulary is used for formatted printing.\n"\r
- { $subsection printf }\r
- { $subsection sprintf }\r
-"The " { $link printf } " and " { $link sprintf } " words are used for formatted printing.\n"\r
--"\n"\r
--"Several format specifications exist for handling arguments of different types, and specifying attributes for the result string, including such things as maximum width, padding, and decimals.\n"\r
--{ $table\r
-- { "%%" "Single %" "" }\r
-- { "%P.Ds" "String format" "string" }\r
-- { "%P.DS" "String format uppercase" "string" }\r
-- { "%c" "Character format" "char" } \r
-- { "%C" "Character format uppercase" "char" } \r
-- { "%+Pd" "Integer format" "fixnum" }\r
-- { "%+P.De" "Scientific notation" "fixnum, float" }\r
-- { "%+P.DE" "Scientific notation" "fixnum, float" }\r
-- { "%+P.Df" "Fixed format" "fixnum, float" }\r
-- { "%+Px" "Hexadecimal" "hex" }\r
-- { "%+PX" "Hexadecimal uppercase" "hex" }\r
--}\r
--"\n"\r
--"A plus sign ('+') is used to optionally specify that the number should be formatted with a '+' preceeding it if positive.\n"\r
--"\n"\r
--"Padding ('P') is used to optionally specify the minimum width of the result string, the padding character, and the alignment. By default, the padding character defaults to a space and the alignment defaults to right-aligned. For example:\n"\r
--{ $list\r
-- "\"%5s\" formats a string padding with spaces up to 5 characters wide."\r
-- "\"%08d\" formats an integer padding with zeros up to 3 characters wide."\r
-- "\"%'#5f\" formats a float padding with '#' up to 3 characters wide."\r
-- "\"%-10d\" formats an integer to 10 characters wide and left-aligns." \r
--}\r
--"\n"\r
--"Digits ('D') is used to optionally specify the maximum digits in the result string. For example:\n"\r
--{ $list \r
-- "\"%.3s\" formats a string to truncate at 3 characters (from the left)."\r
-- "\"%.10f\" formats a float to pad-right with zeros up to 10 digits beyond the decimal point."\r
-- "\"%.5E\" formats a float into scientific notation with zeros up to 5 digits beyond the decimal point, but before the exponent."\r
--} ;\r
- \r
- ABOUT: "printf"\r
- \r
- \r
++
++USING: help.syntax help.markup kernel prettyprint sequences strings ;
++
++IN: printf
++
++HELP: printf
++{ $values { "format-string" string } }
++{ $description "Writes the arguments (specified on the stack) formatted according to the format string." }
++{ $examples
++ { $example
++ "USING: printf ;"
++ "123 \"%05d\" printf"
++ "00123" }
++ { $example
++ "USING: printf ;"
++ "HEX: ff \"%04X\" printf"
++ "00FF" }
++ { $example
++ "USING: printf ;"
++ "1.23456789 \"%.3f\" printf"
++ "1.234" }
++ { $example
++ "USING: printf ;"
++ "1234567890 \"%.5e\" printf"
++ "1.23456e+09" }
++ { $example
++ "USING: printf ;"
++ "12 \"%'#4d\" printf"
++ "##12" }
++ { $example
++ "USING: printf ;"
++ "1234 \"%+d\" printf"
++ "+1234" }
++} ;
++
++HELP: sprintf
++{ $values { "format-string" string } { "result" string } }
++{ $description "Returns the arguments (specified on the stack) formatted according to the format string as a result string." }
++{ $see-also printf } ;
++
++ARTICLE: "printf" "Formatted printing"
++"The " { $vocab-link "printf" } " vocabulary is used for formatted printing.\n"
++{ $subsection printf }
++{ $subsection sprintf }
++"\n"
++"Several format specifications exist for handling arguments of different types, and specifying attributes for the result string, including such things as maximum width, padding, and decimals.\n"
++{ $table
++ { "%%" "Single %" "" }
++ { "%P.Ds" "String format" "string" }
++ { "%P.DS" "String format uppercase" "string" }
++ { "%c" "Character format" "char" }
++ { "%C" "Character format uppercase" "char" }
++ { "%+Pd" "Integer format" "fixnum" }
++ { "%+P.De" "Scientific notation" "fixnum, float" }
++ { "%+P.DE" "Scientific notation" "fixnum, float" }
++ { "%+P.Df" "Fixed format" "fixnum, float" }
++ { "%+Px" "Hexadecimal" "hex" }
++ { "%+PX" "Hexadecimal uppercase" "hex" }
++}
++"\n"
++"A plus sign ('+') is used to optionally specify that the number should be formatted with a '+' preceeding it if positive.\n"
++"\n"
++"Padding ('P') is used to optionally specify the minimum width of the result string, the padding character, and the alignment. By default, the padding character defaults to a space and the alignment defaults to right-aligned. For example:\n"
++{ $list
++ "\"%5s\" formats a string padding with spaces up to 5 characters wide."
++ "\"%08d\" formats an integer padding with zeros up to 3 characters wide."
++ "\"%'#5f\" formats a float padding with '#' up to 3 characters wide."
++ "\"%-10d\" formats an integer to 10 characters wide and left-aligns."
++}
++"\n"
++"Digits ('D') is used to optionally specify the maximum digits in the result string. For example:\n"
++{ $list
++ "\"%.3s\" formats a string to truncate at 3 characters (from the left)."
++ "\"%.10f\" formats a float to pad-right with zeros up to 10 digits beyond the decimal point."
++ "\"%.5E\" formats a float into scientific notation with zeros up to 5 digits beyond the decimal point, but before the exponent."
++} ;
++
++ABOUT: "printf"
++
++