cprintf - display formatted colored text in Command Window

버전 1.14 (34.7 KB) 작성자: Yair Altman
Displays sprintf-formatted strings in the Command Window using the specified color/underline style
다운로드 수: 26.8K
업데이트 날짜: 2022/3/26

라이선스 보기

Syntax:
count = cprintf(style,format,...)
Description:
CPRINTF processes the specified text using the exact same FORMAT arguments accepted by the built-in SPRINTF and FPRINTF functions.
CPRINTF then displays the text in the Command Window using the specified STYLE argument. The accepted styles are those used for Matlab's syntax highlighting (see: File / Preferences / Colors / M-file Syntax Highlighting Colors), and also user-defined colors.
The possible pre-defined STYLE names are:
'Text' - default: black
'Keywords' - default: blue
'Comments' - default: green
'Strings' - default: purple
'UnterminatedStrings' - default: dark red
'SystemCommands' - default: orange
'Errors' - default: light red
'Hyperlinks' - default: underlined blue
'Black','Cyan','Magenta','Blue','Green','Red','Yellow','White'
STYLE beginning with '-' o '_' will be underlined. For example:
'-Blue' => underlined blue, like 'Hyperlinks'
'_Comments' => underlined green
STYLE beginning with '*' will be bold (R2011b+ only). For example:
'*Blue' is bold blue;
'*Comments' is bold green etc.
Note: Matlab does not currently support both bold and underline, only one of them can be used in a single cprintf command. But of course bold and underline can be mixed by using separate commands.
STYLE colors can be specified in 3 variants:
[0.1, 0.7, 0.3] - standard Matlab RGB color format in the range 0.0-1.0
[26, 178, 76] - numeric RGB values in the range 0-255
'#1ab34d' - Hexadecimal format in the range '00'-'FF' (case insensitive). 3-digit HTML RGB format is also accepted: 'a5f' = 'aa55ff'
STYLE can be underlined by prefixing - : -[0,1,1] or '-#0FF' is underlined cyan
STYLE can be made bold by prefixing * : '*[1,0,0]' or '*#F00' is bold red
STYLE is case-insensitive and accepts unique (non-ambiguous) partial strings (for example, 'cy' instead of 'cyan').
Usage examples (see results in the attached screenshot):
cprintf; % displays the demo
cprintf('text', 'regular black text');
cprintf('hyper', 'followed %s','by');
cprintf('key', '%d colored', 4);
cprintf('-comment','& underlined');
cprintf('err', 'elements\n');
cprintf('cyan', 'cyan');
cprintf('_green', 'underlined green');
cprintf(-[1,0,1], 'underlined magenta');
cprintf('*blue', 'and *bold* (R2011b+ only)\n');
cprintf([1,0.5,0],'and multi-\nline orange\n');
Bugs and suggestions:
Please send to Yair Altman (altmany at gmail dot com)
Warning:
This code heavily relies on undocumented and unsupported Matlab functionality. It works on Matlab 7+, but use at your own risk!
A technical description of the implementation can be found at: https://UndocumentedMatlab.com/articles/cprintf
See details & current limitations in the main help section

인용 양식

Yair Altman (2024). cprintf - display formatted colored text in Command Window (https://www.mathworks.com/matlabcentral/fileexchange/24093-cprintf-display-formatted-colored-text-in-command-window), MATLAB Central File Exchange. 검색됨 .

MATLAB 릴리스 호환 정보
개발 환경: R2007b
R2006a 이상 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Language Fundamentals에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
버전 게시됨 릴리스 정보
1.14

Fixed cases of using string (not char) inputs

1.13

Fixed cases of invalid colors (especially bad on R2021b onward)

1.12.0.1

Updated the compatibility boxes to reflect that CPRINTF does NOT work starting with R2021b (only up to R2021a). No code was changed.

1.12.0.0

Enabled specifying color in multiple ways: as #RGB or #RRGGBB (hexadecimal codes e.g. '#a0b0FF'), or [0.1,0.7,0.3], or [26,178,76]

1.11.0.0

Fix by T. Hosman for embedded hyperlinks; package as a toolbox

1.10.0.0

Fixed a few discoloration issues (some other issues still remain)

1.9.0.0

Fix: if command window isn't defined yet (startup) use standard fprintf, as suggested by John Marozas

1.8.0.0

Fix: if command window isn't defined yet (startup) use standard fprintf, as suggested by John Marozas

1.7.0.0

Graceful degradation support for deployed (compiled) and non-desktop applications; minor bug fixes

1.6.0.0

Fixes for R2012b; added bold style; accept RGB string (non-numeric) style

1.5.0.0

Fixes for R2011b; fix by Danilo (FEX comment) for non-default text colors

1.4.0.0

Performance improvement

1.3.0.0

Minor fix for R2010a/b; fixed edge case reported by Sharron; CPRINTF with no args runs the demo

1.2.0.0

Fixed some problems reported by Andreas G, Swagat K

1.1.0.0

Fixed some problems reported by Andreas G & Swagat K

1.0.0.0