Man page - unicode::decompose(3)
Packages contains this manual
- unicode_lb_end(3)
- unicode_derived_changes_when_casemapped_lookup(3)
- unicode_bidi_cleaned_size(3)
- unicode_locale_chset(3)
- unicode_emoji_extended_pictographic(3)
- unicode_convert_tou_tobuf(3)
- courier-unicode(7)
- unicode_derived_case_ignorable_lookup(3)
- unicode::ucs_2(3)
- unicode_convert_tobuf(3)
- unicode_tc(3)
- unicode_convert_tocbuf_init(3)
- unicode_default_chset(3)
- unicode::linebreakc_iter(3)
- unicode_emoji_lookup(3)
- unicode::iconvert::fromu(3)
- unicode_lb_next_cnt(3)
- unicode_convert(3)
- unicode_derived_xid_start_lookup(3)
- unicode_composition_deinit(3)
- unicode_emoji_modifier_base(3)
- unicode_bidi_calc_levels(3)
- unicode_canonical(3)
- unicode::ucs_4(3)
- unicode::bidi_logical_order(3)
- unicode::bidi_embed_paragraph_level(3)
- unicode::bidi_get_direction(3)
- unicode_isalnum(3)
- unicode_lb_set_opts(3)
- unicode_isspace(3)
- unicode_grapheme_break_init(3)
- unicode_lbc_end(3)
- unicode_general_category_lookup(3)
- unicode::iconvert::convert(3)
- unicode_script(3)
- unicode::bidi(3)
- unicode_derived_incb_lookup(3)
- unicode_ispunct(3)
- unicode_convert_fromutf8(3)
- unicode::bidi_reorder(3)
- unicode_decomposition_init(3)
- unicode_bidi_reorder(3)
- unicode_wbscan_init(3)
- unicode_convert_tocbuf_toutf8_init(3)
- unicode_wb_next(3)
- unicode_bidi_setbnl(3)
- unicode_bidi_direction(3)
- unicode::decompose_default_reallocate(3)
- unicode_html40ent_lookup(3)
- unicode_derived_changes_when_casefolded_lookup(3)
- unicode_emoji_modifier(3)
- unicode_convert_init(3)
- unicode_grapheme_break(3)
- unicode_bidi_logical_order(3)
- unicode_emoji_presentation(3)
- unicode_bidi_mirror(3)
- unicode::canonical(3)
- unicode::bidi_override(3)
- unicode_wb_next_cnt(3)
- unicode::linebreak_callback_save_buf(3)
- unicode_derived_cased_lookup(3)
- unicode::compose(3)
- unicode::wordbreak_callback_base(3)
- unicode::iso_8859_1(3)
- unicode_grapheme_break_deinit(3)
- unicode_derived_grapheme_base_lookup(3)
- unicode_derived_default_ignorable_code_point_lookup(3)
- unicode_derived_changes_when_titlecased_lookup(3)
- unicode_derived_lowercase_lookup(3)
- unicode_convert_deinit(3)
- unicode_bidi_combinings(3)
- unicode_derived_grapheme_extend_lookup(3)
- unicode::bidi_embed(3)
- unicode_uc(3)
- unicode_composition_apply(3)
- unicode_bidi_type(3)
- unicode_derived_uppercase_lookup(3)
- unicode_derived_id_start_lookup(3)
- unicode::tolower(3)
- unicode_derived_changes_when_lowercased_lookup(3)
- unicode::linebreak_callback_base(3)
- unicode_compose(3)
- unicode_grapheme_break_next(3)
- unicode_isupper(3)
- unicode_lbc_next_cnt(3)
- unicode::linebreak_iter(3)
- unicode_bidi(3)
- unicode_decompose_reallocate_size(3)
- unicode::toupper(3)
- unicode::linebreakc_callback_base(3)
- unicode::bidi_cleanup(3)
- unicode::iconvert::convert_tocase(3)
- unicode_composition_init(3)
- unicode_lbc_next(3)
- unicode_bidi_bracket_type(3)
- unicode_convert_fromu_init(3)
- unicode_category_lookup(3)
- unicode_ccc(3)
- unicode_emoji(3)
- unicode::iconvert::tou(3)
- unicode_bidi_needs_embed(3)
- unicode_derived_id_continue_lookup(3)
- unicode_convert_uc(3)
- unicode_emoji_component(3)
- unicode_u_ucs2_native(3)
- unicode::wordbreak(3)
- unicode_wbscan_end(3)
- unicode::compose_default_callback(3)
- unicode_bidi_calc(3)
- unicode_isalpha(3)
- unicode::decompose(3)
- unicode_convert_toutf8(3)
- unicode_line_break(3)
- unicode_derived_math_lookup(3)
- unicode_derived_core_properties(3)
- unicode_bidi_cleanup(3)
- unicode_derived_xid_continue_lookup(3)
- unicode_wbscan_next(3)
- unicode_islower(3)
- unicode_convert_tocase(3)
- unicode_word_break(3)
- unicode_convert_tou_init(3)
- unicode_derived_grapheme_link_lookup(3)
- unicode_bidi_embed_paragraph_level(3)
- unicode_bidi_calc_types(3)
- unicode_lc(3)
- unicode_wb_end(3)
- unicode_isdigit(3)
- unicode_isblank(3)
- unicode_derived_changes_when_uppercased_lookup(3)
- unicode::bidi_calc(3)
- unicode_decomposition_deinit(3)
- unicode::utf_8(3)
- unicode_decompose(3)
- unicode_bidi_embed(3)
- unicode_lb_next(3)
- unicode_u_ucs4_native(3)
- unicode::bidi_calc_types(3)
- unicode_isgraph(3)
- unicode_wb_init(3)
- unicode_convert_tocbuf_fromutf8_init(3)
- unicode::bidi_combinings(3)
- unicode_lbc_set_opts(3)
- unicode_lbc_init(3)
- unicode::bidi_needs_embed(3)
- unicode_convert_fromu_tobuf(3)
- unicode_lb_init(3)
apt-get install libcourier-unicode-dev
Manual
UNICODE::CANONICAL
NAMESYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
NOTES
NAME
unicode::canonical, unicode::decompose, unicode::decompose_default_reallocate, unicode::compose, unicode::compose_default_callback - unicode canonical normalization and denormalization
SYNOPSIS
#include <courier-unicode.h>
constexpr int
decompose_flag_qc=UNICODE_DECOMPOSE_FLAG_QC;
constexpr int
decompose_flag_compat=UNICODE_DECOMPOSE_FLAG_COMPAT;
constexpr int
compose_flag_removeunused=UNICODE_COMPOSE_FLAG_REMOVEUNUSED;
constexpr int
compose_flag_oneshot=UNICODE_COMPOSE_FLAG_ONESHOT;
|
void decompose_default_reallocate(std::u32stringĀ & string , constĀ std::vector<std::tuple<size_t,Ā size_t>>Ā & list ); |
|
|
void decompose(std::u32stringĀ & string , int flags =0, constĀ std::function<voidĀ (std::u32stringĀ &,Ā constĀ std::vector<std::tuple<size_t,Ā size_t>>)>Ā & reallocate =decompose_default_reallocate); |
|
|
void compose_default_callback(unicode_composition_tĀ & compositions ); |
|
|
void compose(std::u32stringĀ & string , int flags =0, constĀ std::function<voidĀ (unicode_composition_tĀ &)>Ā & cb =compose_default_reallocate); |
DESCRIPTION
These functions implement the C++ interface for the Unicode Canonical Decomposition and Composition [1] , See the description of the underlying unicode_canonical (3) C library API for more information. C++ specific notes:
⢠The C++ decomposition reallocate callback receives a single vector of offset and size tuples instead of two separate arrays or vectors. unicode::decompose_default_reallocate () is the C++ version of the default reallocate callback. It receives the receiving the same tuple vector parameter, too. The C++ interface use std::u32strings to represent Unicode text strings, and unicode::decompose_default_reallocate () resize s it.
Like the C callback, the C++ one gets called 0 or more times.
⢠unicode::compose () takes care of initializing, applying, and de-initialization the unicode_composition_t object, for decomposition. The callback receives a reference to the unicode_composition_t object, which the callback should not modify in any way.
SEE ALSO
courier-unicode (7), unicode_canonical (3).
AUTHOR
Sam Varshavchik
Author
NOTES
|
1. |
Unicode Canonical Decomposition and Composition |
https://www.unicode.org/reports/tr15/tr15-54.html