Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
builtin(1), !(1), %(1), .(1), :(1), @(1), [(1), {(1), }(1), alias(1), alloc(1), bg(1), bind(1), bindkey(1), break(1), breaksw(1), builtins(1), case(1), cd(1), chdir(1), command(1), complete(1), continue(1), default(1), dirs(1), do(1), done(1), echo(1), echotc(1), elif(1), else(1), end(1), endif(1), endsw(1), esac(1), eval(1), exec(1), exit(1), export(1), false(1), fc(1), fg(1), filetest(1), fi(1), for(1), foreach(1), getopts(1), glob(1), goto(1), hash(1), hashstat(1), history(1), hup(1), if(1), jobid(1), jobs(1), kill(1), limit(1), local(1), log(1), login(1), logout(1), ls-F(1), nice(1), nohup(1), notify(1), onintr(1), popd(1), printenv(1), printf(1), pushd(1), pwd(1), read(1), readonly(1), rehash(1), repeat(1), return(1), sched(1), set(1), setenv(1), settc(1), setty(1), setvar(1), shift(1), source(1), stop(1), suspend(1), switch(1), telltc(1), test(1), then(1), time(1), times(1), trap(1), true(1), type(1), ulimit(1), umask(1), unalias(1), uncomplete(1), unhash(1), unlimit(1), unset(1), unsetenv(1), until(1), wait(1), where(1), which(1), while(1)
shell built-in commands
lower-case character test
upper-case character test
stpcpy(3), strcat(3), strncat(3), strchr(3), strrchr(3), strcmp(3), strncmp(3), strcasecmp(3), strncasecmp(3), strcpy(3), strncpy(3), strerror(3), strlen(3), strpbrk(3), strsep(3), strspn(3), strcspn(3), strstr(3), strtok(3), index(3), rindex(3)
string specific functions
strcasecmp(3), strncasecmp(3)
compare strings, ignoring case
strstr(3), strcasestr(3), strnstr(3)
locate a substring in a string
upper case to lower case letter conversion
lower case to upper case letter conversion
upper case to lower case letter conversion (wide character version)
lower case to upper case letter conversion (wide character version)
wmemchr(3), wmemcmp(3), wmemcpy(3), wmemmove(3), wmemset(3), wcpcpy(3), wcpncpy(3), wcscasecmp(3), wcscat(3), wcschr(3), wcscmp(3), wcscpy(3), wcscspn(3), wcsdup(3), wcslcat(3), wcslcpy(3), wcslen(3), wcsncasecmp(3), wcsncat(3), wcsncmp(3), wcsncpy(3), wcsnlen(3), wcspbrk(3), wcsrchr(3), wcsspn(3), wcsstr(3)
wide character string manipulation operations
check for lower case ASCII character
check for upper case ASCII character
compare UTF-8 strings ignoring case
create a lower case translation of a string
locate UTF-8 substring ignoring ASCII case
convert upper case ASCII to lower case
Base class for writing DlfAnalyser unit tests
Base class for writing DLfConverter unit tests
Base class for writing functional unit tests
Base class for writing Plugin unit tests
Common base for Lire test cases
XStringToKeysym(3), XKeysymToString(3), XKeycodeToKeysym(3), XKeysymToKeycode(3), XConvertCase(3)
convert keysyms
XtSetKeyTranslator(3), XtTranslateKeycode(3), XtRegisterCaseConverter(3), XtConvertCase(3)
convert KeySym to KeyCodes
This document is an ever growing set of questions, statements, ideas and complaints about AfterStep version 2.0 1. General Information1.1. About this Document. This document is an ever growing set of questions, statements, ideas and complaints about AfterStep version 2.0. You can get this FAQ at the following locations: The rest of this document assumes you are running AfterStep 2.0. If you are running a version of AfterStep prior to version 2.0, this document will suggests only one thing: upgrade. 1.2. What is AfterStep? AfterStep is a Window Manager for the X Window System (hereafter referred to as X). It was started to emulate the look and feel of NeXTSTEP(tm), but has evolved into something that while still being able to emulate NeXT, can do much much more. Without using much memory or cpu time, AfterStep provides all the features one could want in a Window Manager. 1.3. What is AfterStep's history? Original AfterStep was a continuation of the BowMan Window Manager which was originally put together by Bo Yang. BowMan was based on the fvwm Window Manager, written by Robert Nation. Fvwm was based on code from twm. And so on.... Idea was to emulate some of the look and feel of the NEXTSTEP(tm) user interface, but overtime it evolved to include other concepts, as dictated by end user needs. It is that unholy direction that made Alfredo Kojima abandon project in 1997 and create a Window Manger of its own - Window Maker, which had a goal of strict adherance to NEXTSTEP interface ideas. After releasing version 1.8.11 it became aparent for developers that old AfterStep codebase had reached its limits and required a substantial redesign. Such redesign began with development of radically new image handling library libAfterImage, introducing high quality image manipulation, blending, TrueType fonts, XML image scripting, and more. Building off of libAfterImage and incorporating new developments in X Window management, AfterStep 2.0 was born and released in September, 2004. As of now AfterStep code base contains none of the original fvwm parts, and association to fvwm, twm and BowMan remain only in history. 1.4. Fine, what if I'm not running AfterStep 2.0? Is there a FAQ for me? Yes. There should be a version of the AfterStep FAQ available within your specific AfterStep distribution. If you are using a version earlier than 2.0, it is strongly suggested you upgrade. 1.5. What is X? What are these "window managers" ? "X" is shorthand for The X Window System. It is a basis for building graphical user interfaces for UNIX (it is available for non-UNIX systems, but wasn't designed to be as such). "X" is not the interface itself, just a foundation for one. For more information, check . A Window Manager is a program that manages your windows during your X session. AfterStep is one of many available window managers . 1.6. What are AfterStep's main features? "The Wharf" Similar to NeXTSTEP's(tm) Dock, it allows applications to be Swallowed, shortcuts with icons, and many other things. "The Pager" Shows a miniature view of the Afterstep desktops, you can move between them, and move windows around in the Pager as though it were a miniature desktop. "The WinList" A list of all the windows, clicking on the items can show that window, destroy it, shade it, or anything you might want. "Configurability" Almost anything can be changed. "XML image scripting" AfterStep allows XML scripts to be used to assemble complex images for things like buttons, frame sides, etc, from other, simplier images or graphical primitives. "TrueType fonts support" Antialised TrueType fonts could be used to render window titles and other labels. "Unicode, UTF8 and other encodings support" Most international character encodings are supported as long as fonts provide glyphs. "ColorSchemes" AfterStep can calculate a set of about 34 colors to create looks with harmonious color composition. 1.7. Is AfterStep 2.0 GNOME and/or KDE compliant? AfterStep 2.0 supports Extended Window Manager Hints, ICCCM protocol and Motif hints, thus making it as compatible as possible with both GNOME and KDE, as well as most other X applications. 1.8. Can I run it in Microsoft Windows(tm)? AfterStep 2.0 does run under Windows using CYGWIN compatibility layer, while running any X server. Some of the X servers available under Windows allow so-called root-less mode, where X applications can coincide with native applications. See sample screenshot . 1.9. Who develops AfterStep? "Sasha Vasko <sasha at>" coordinator, coder, web designer, carpenter, and everything else ( at the moment ). "Niklas Lunger <niklas at fet dot at>" documentation and user testing. "Nathan Mahon <as_ml at vaevictus net>" realease manager 1.10. AfterStep is awesome! How can I help? Code contributions are welcome. Hardware donations are welcome. If you can help write AfterStep, or feel you can help the effort elsewhere, do so. Hang out on irc (#afterstep, efnet), participate on the mailing lists, suggest ideas, help code, etc etc. 1.11. Who writes this FAQ? see 1.9. above. 2. Resources2.1. Where can I find AfterStep resources, or help? "HTML documentation" AfterStep 2.0 comes installed with complete set of documentation in HTML format, usually installed at /usr/local/share/afterstep/doc/html or /usr/share/afterstep/doc/html . Same documentation is available online from : . If you find that documentation incomplete in some areas - please feel free to submit any corrections to any of the AfterStep mailing lists. "WWW Page" The official AfterStep web page is at . This web site is managed by whoever has write access to AfterStep CVS, and is kindly hosted by the generous people at Web Conquest . "FTP site" The FTP site, , is the best place to get AfterStep. "AfterStep applets" The applets (asapps) that go with AfterStep are distributed separately. The applet distribution is maintained by Albert Dorofeev, (<>). You can find the applets at . RPMs for many an applet could be found here : "Man pages." AfterStep installation comes with set of man pages that attempt to cover all aspects of AfterStep configuration. Please read the relevent man page before asking a question. Also note that the Pager man page is 'man Pager' (note the capitalization). "IRC" There is also #afterstep on IRC servers. You can view current activity here : 2.2. What are the AfterStep mailing lists, and where are their archives? There are three AfterStep mailing lists. as-users, as-devel and as-bugs. "as-users." as-users is the general AfterStep mailing list, open to all AfterStep questions, concerns and ideas ( NO LiteSTEP, Window Maker, some-x-app questions unless it really does pertain to AfterStep, please). Subscribe by entering your e-mail at : "as-devel." as-devel is the development AfterStep mailing list. It is used to send notices about commits to CVS repository. Subscribe by entering your e-mail at : "as-bugs." as-bugs is the AfterStep mailing list for submiting bug reports. It is geared toward development questions, ideas and complaints. Subscribe by entering your e-mail at : The mailing list archives can be read at . 3. Getting and Installing AfterStep 2.03.1. Where can I get AfterStep 2.0? You can download AfterStep 2.0 at any of the following locations: RPM packages 3.2. What do I need to compile and install AfterStep? Because AfterStep is an X application, you need to have X installed, and the X development libraries (note, in this case "development" means libraries need to compile things with X, not development level code). It's probably a good idea to also have a working C compiler. AfterStep includes some image libraries, but it is recommended that you install those libraries using your distribution's package management system. Note that you will need development libraries in addition to run-time libraries. The following are the libraries that AfterStep can take advantage of : libJPEG - support for JPEG image format libPNG - support for PNG image format libTIFF - support for TIFF image format Freetype - support for TrueType fonts Note that following image format do not require any external libraries : XPM, PPM, BMP, ICO, XCF, GIF. 3.3. Can I install AfterStep without being root? Yes, before compiling AfterStep, do this: Source : mkdir /bin mkdir -p /man/man1 /configure --prefix / Then follow the normal install directions, allowing you to Source : make installwithout being root. 3.4. How do I upgrade AfterStep from AfterStep version prior to 2.0.0? Install AfterStep 2.0 and then run it. It will start with default configuration that you may or maynot like. If you wish to try and reuse your old configuration files, then copy them over from your old /GNUstep/Library/AfterStep/ directory and into /.afterstep/. Restart AfterStep to make changes effective. If some of the features do not work quite right - feel free to submit bug report along with your configuration files. It is recommended though that you start with default configuration and try out all of the supplied looks and color schemes. Select whichever is close to what you want and then modify it to your liking. These approach will allow you to take advantage of many new features, available in AfterStep 2.0. 3.4. How do I upgrade AfterStep from AfterStep version higher then 2.0.0? Make sure that all configuration files that you ever changed are in your home directory at /.afterstep/, as installing afterstep will replace everything in global shared location (/usr/local/share/afterstep). Install afterstep and run. You should not have any trouble. 3.5. What's up with all these compile errors? Most likely, you don't have the X devel package (should have come with your operating system, if not, check ). 3.6. How the hell does one configure AfterStep? Configuration files are usually either in /usr(/local)/share/afterstep for system wide configuration and ~.afterstep for personal settings. Configuration is handled in multiple files: look file (in looks subdirectory) for visual attributes, feel file (in feels subdirectory) for the general behaviour; wharf, winlist, banner, pager, animate for module specific configuration. Just copy any file you want to modify over from /usr(/local)/share/afterstep to ~.afterstep to override system wide defaults retaining subdirectory layout
automatic test case reduction tool
telnet server for libcaca
conditionally execute a block of commands
compare strings case-insensitively
compare strings case-insensitively
compare strings case-insensitively
compare strings case-insensitively
compare prefixes of strings case-insensitively
test cases for QDBM Cabin
CD/DVD labels, jewel case inserts, and envelopes creator. Generates frontcards and traycards for CD cases, single-cd envelopes, DVD case inserts, as well as output suitable for direct printing on CD/DVD
test cases for QDBM Curia
curl_strequal(3), curl_strnequal(3)
case insensitive string comparisons
test cases for QDBM Depot
test cases of the core API
check case-insensitively if an estring ends with an estring
check case-insensitively if an estring ends with a string
check case-insensitively if an estring starts with an estring
compare two estrings case-insensitively
search for an estring case-insensitively in an estring
compare two estring segments case-insensitively
check case-insensitively if an estring starts with a string
compare an estring and a string case-insensitively
search case-insensitively for a string in an estring
convert all letters in an estring to lower case
convert all letters in an estring to upper case
strcasecmp (3) provided as a replacement so programs can maintain ANSI C compliance
strncasecmp (3) provided as a replacement so programs can maintain ANSI C compliance
Converts a filename to a standardised case. Allegro game programming library
Generate a test case description file
stop disks in the case of inactivity using GEOM statistics
test cases for QDBM Hovel
test cases of the simple API
ldap_sort_entries(3), ldap_sort_values(3), ldap_sort_strcasecmp(3)
LDAP sorting routines (deprecated)
libstring-inmos(3), append.char(3),, append.hex.int64(3),, append.int64(3), append.real32(3), append.real64(3), append.text(3), char.pos(3), compare.strings(3), delete.string(3), eqstr(3), insert.string(3), is.digit(3), is.hex.digit(3),,, is.lower(3), is.upper(3),, next.word.from.line(3), search.match(3),, str.shift(3), string.pos(3),,
KRoC INMOS occam toolset string library
lsamen(l), LSAMEN(l)
tests if the first N letters of CA are the same as the first N letters of CB, regardless of case
Compare specified regions of two M-texts ignoring cases
Compare two M-texts ignoring cases
Lowercase an M-text
Compare initial parts of two M-texts ignoring cases
Titlecase an M-text
Uppercase an M-text
program to run test cases mysqltest_embedded - program to run embedded test cases
test cases for QDBM Odeum
Optimize case insensitive regexp filters for tin
test cases for thread-safety
test cases for QDBM Relic
sc_IdentityTransform(3), sc::IdentityTransform(3)
The IdentityTransform is a special case of NonlinearTransform were no transformation takes place'
sh(1), for(1), case(1), if(1), while(1), : (1), . (1), break(1), continue(1), cd(1), eval(1), exec(1), exit(1), export(1), login(1), newgrp(1), read(1), readonly(1), set(1), shift(1), times(1), trap(1), umask(1), wait(1)
command language
Escher's infinite staircase
test cases of the abstract database API
test cases of the abstract database API
test cases of the B+ tree database API
test cases of the B+ tree database API
test cases of the fixed-length database API
test cases of the fixed-length database API
test cases of the hash database API
test cases of the hash database API
test cases of the q-gram database API
test cases of the remote database API
test cases of the remote database API
test cases of the table database API
test cases of the table database API
test cases of the on-memory database API
test cases of the utility API
test cases of the word database API
rename titled files with English title case
test cases of the update log API
Compares two strings ignoring case. Allegro game programming library
Replaces all letters with lower case. Allegro game programming library
Compares up to n letters of two strings ignoring case. Allegro game programming library
Replaces all letters with upper case. Allegro game programming library
Converts a letter to lower case. Allegro game programming library
Converts a letter to upper case. Allegro game programming library
test cases for QDBM Villa
Convert Tags to Upper or Lower Case
wnutil(3), wninit(3)
re_wninit, cntwords, strtolower, ToLowerCase, strsubst, getptrtype, getpos, getsstype, StrToPos, GetSynsetForSense, GetDataOffset, GetPolyCount, WNSnsToStr, GetValidIndexPointer, GetWNSense, GetSenseIndex, default_display_message
fire up programs in case of user inactivity under X
wrappers around AnyEvent::Subprocess to save typing in simple cases
BZ::Client::Exception(3), BZ::Client::Exception(3)
Exception class, which is thrown by BZ::Client in case of errors. BZ::Client does not return error codes or do similar stuff. Instead, it throws instances of BZ::Client::Exception
Lowercase Filter
Uppercase Filter
Support for the Antarctica/Casey time zone
filter transforming to lower case
filter transforming to upper case
base class for hashes with key-casing requirements
hash with enforced lower cased keys
hash with enforced lower cased keys
native hash with enforced lower cased keys
Jifty coding style guide Default style Subsection "Default style" When in doubt, default to whatever Damian Conway's Perl Best Practices says. Private documentation Subsection "Private documentation" When documenting a private method, or providing documentation which is not useful to the user of the module (and is presumably useful to the developer), wrap it in =begin/end private. This way it does not show up in perldoc where a user would see it and yet is still available and well formatted (that is, not just a lump comment) when looking at the code. =begin private =head2 import_extra Called by L<Test::More>s C<import> code when L<Jifty::Test> is first C<use>d, it calls L</setup>, and asks Test::More to export its symbols to the namespace that C<use>d this one. =end private sub import_extra { ... } Test temp files Subsection "Test temp files" Files created by tests should be declared as such using Jifty::Test->test_file() so they are cleaned up on a successful test run. Use Shell::Command Subsection "Use Shell::Command" Shell::Command has a number of functions which work like common shell file commands such as touch, cp and mv. They are battle tested and cross-platform. Use them instead of coding your own. For example, instead of this: open my $file, ">foo"; close $file; Do this: use Shell::Command; touch $file; Case insensitive matching Subsection "Case insensitive matching" To check if a string equals another string case insensitively, do this lc $foo eq lc $bar; lc $foo eq bar; not this: $foo =~ /^eQ$bareE/i; $foo =~ /^bar$/i;
convert input to lower case
Lineup(3), XMLTV::Lineup(3)
Perl extension to read and write TV lineup information in XMLTV lineup format "write_data(data, options...)" 4 Item "write_data(data, options...)" Takes a data structure and writes it as XML to standard output. Any extra arguments are passed on to XML::Writer's constructor, for example my $f = new IO::File >out.xml; die if not $f; write_data($data, OUTPUT => $f); The encoding used for the output is given by the first element of the data. Normally, there will be a warning for any Perl data which is not understood and cannot be written as XMLTV, such as strange keys in hashes. But as an exception, any hash key beginning with an underscore will be skipped over silently. You can store 'internal use only' data this way. If a display name or channel hash contains a key beginning with 'debug', this key and its value will be written out as a comment inside the <display-name> or <channel> element. This lets you include small debugging messages in the XML output. "best_name(languages, pairs [, comparator])" 4 Item "best_name(languages, pairs [, comparator])" The XMLTV format contains many places where human-readable text is given an optional 'lang' attribute, to allow mixed languages. This is represented in Perl as a pair [ text, lang ], although the second element may be missing or undef if the language is unknown. When several alernatives for an element (such as <title>) can be given, the representation is a list of [ text, lang ] pairs. Given such a list, what is the best text to use? It depends on the user's preferred language. This function takes a list of acceptable languages and a list of [string, language] pairs, and finds the best one to use. This means first finding the appropriate language and then picking the 'best' string in that language. The best is normally defined as the first one found in a usable language, since the XMLTV format puts the most canonical versions first. But you can pass in your own comparison function, for example if you want to choose the shortest piece of text that is in an acceptable language. The acceptable languages should be a reference to a list of language codes looking like 'ru', or like 'de_DE'. The text pairs should be a reference to a list of pairs [ string, language ]. (As a special case if this list is empty or undef, that means no text is present, and the result is undef.) The third argument if present should be a cmp-style function that compares two strings of text and returns 1 if the first argument is better, -1 if the second better, 0 if they're equally good. Returns: [s, l] pair, where s is the best of the strings to use and l is its language. This pair is 'live' - it is one of those from the list passed in. So you can use best_name() to find the best pair from a list and then modify the content of that pair. (This routine depends on the Lingua::Preferred module being installed; if that module is missing then the first available language is always chosen.) Example: my $langs = [ de, fr ]; # German or French, please # Say we found the following under $ch->{display-name} for a channel $ch. my $pairs = [ [ BBC Trois, fr ], [ BBC One, en_US ] ]; my $best = best_name($langs, $pairs); print "chose title $best->[0]en"; "list_display_name_keys(), list_channel_keys()" 4 Item "list_display_name_keys(), list_channel_keys()" Some users of this module may wish to enquire at runtime about which keys a programme or channel hash can contain. The data in the hash comes from the attributes and subelements of the corresponding element in the XML. The values of attributes are simply stored as strings, while subelements are processed with a handler which may return a complex data structure. These subroutines returns a hash mapping key to handler name and multiplicity. This lets you know what data types can be expected under each key. For keys which come from attributes rather than subelements, the handler is set to 'scalar', just as for subelements which give a simple string. "scalar" 4 Item "scalar" Reads and writes a simple string as the content of the XML element. "icon" 4 Item "icon" An icon in XMLTV files is like the <img> element in HTML. It is represented in Perl as a hashref with 'src' and optionally 'width' and 'height' keys. "with-lang" 4 Item "with-lang" In XML something like title can be either <title>Foo</title> or <title lang=en>Foo</title>. In Perl these are stored as [ 'Foo' ] and [ 'Foo', 'en' ]. For the former [ 'Foo', undef ] would also be okay. This handler also has two modifiers which may be added to the name after '/'. /e means that empty text is allowed, and will be returned as the empty tuple [], to mean that the element is present but has no text. When writing with /e, undef will also be understood as present-but-empty. You cannot however specify a language if the text is empty. The modifier /m means that the text is allowed to span multiple lines. So for example with-lang/em is a handler for text with language, where the text may be empty and may contain newlines. Note that the with-lang-or-empty of earlier releases has been replaced by with-lang/e. Now, which handlers are used for which subelements (keys) of display names and channels? And what is the multiplicity (should you expect a single value or a list of values)? The following tables map subelements of <display-name> and of <channel> to the handlers used to read and write them. Many elements have their own handler with the same name, and most of the others use with-lang. The third column specifies the multiplicity of the element: * (any number) will give a list of values in Perl, + (one or more) will give a nonempty list, ? (maybe one) will give a scalar, and 1 (exactly one) will give a scalar which is not undef
Lingua::EN::NameCase(3), NameCase(3)
Perl module to fix the case of people's names
Log2t::input::encase_dirlisting(3), structure(3)
an input module log2timeline that parses X
BeCause EveryOne Loves CamelCase
Universal interface for FTP-like modules (FTP, SFTP, SCP), in most cases Net::FTP compatible
Case and quote control
Distinguish different program components by case
Write " <<THE_END; " instead of " <<theEnd; "
normalises token text to lower case
tokenizer which also lower cases text
Handy functions when testing Plucene
RDFStore::Serializer::NTriples(3), RDFStore::Serilizer::NTriples(3)
Serialise a model/graph to W3C RDF Test Cases N-Triples syntax
This extended sorting algorithm allows you to a) sort an array by ANY field number, not only the first. b) find duplicates in your data-set and sort them out. The function is case-sensitive. Future versions might come without this limitation
camelcase, de-camelcase
Base class for Test::Mini test cases
A POE Component providing TCP client services for test cases
A POE Component providing TCP server services for test cases
An object for querying a test case
unit testing framework base class
helper TestCase for adding warnings to a suite
Case preserving but case insensitive hash table
check for lower case ASCII character
check for upper case ASCII character
compare UTF-8 strings ignoring case
create a lower case translation of a string
locate UTF-8 substring ignoring ASCII case
convert upper case ASCII to lower case
Tcl_StringMatch(3), Tcl_StringCaseMatch(3)
test whether a string matches a pattern
Tcl_UniChar(3), Tcl_UniCharCaseMatch(3), Tcl_UniCharNcasecmp(3), Tcl_UniCharToUtf(3), Tcl_UtfToUniChar(3), Tcl_UniCharToUtfDString(3), Tcl_UtfToUniCharDString(3), Tcl_UniCharLen(3), Tcl_UniCharNcmp(3), Tcl_UtfCharComplete(3), Tcl_NumUtfChars(3), Tcl_UtfFindFirst(3), Tcl_UtfFindLast(3), Tcl_UtfNext(3), Tcl_UtfPrev(3), Tcl_UniCharAtIndex(3), Tcl_UtfAtIndex(3), Tcl_UtfBackslash(3)
routines for manipulating UTF-8 strings
Tcl_UniCharToUpper(3), Tcl_UniCharToLower(3), Tcl_UniCharToTitle(3), Tcl_UtfToUpper(3), Tcl_UtfToLower(3), Tcl_UtfToTitle(3)
routines for manipulating the case of Unicode characters and UTF-8 strings
Evaluate one of several scripts, depending on a given value
isalpharune(3), islowerrune(3), isspacerune(3), istitlerune(3), isupperrune(3), tolowerrune(3), totitlerune(3), toupperrune(3)
Unicode character classes and cases
home | help