63
calibre User Manual, Release 2.56.0
• Arithmetic(page 144)
– add(x,y)(page 144)
– divide(x,y)(page 144)
– multiply(x,y)(page 144)
– subtract(x,y) (page 144)
• Boolean(page 144)
– and(value,value,...)(page 144)
– not(value)(page 144)
– or(value,value,...)(page 144)
• Datefunctions(page 144)
– days_between(date1,date2)(page 144)
– today() (page 144)
• Formattingvalues(page 145)
– finish_formatting(val,fmt,prefix,suffix)(page 145)
– format_date(val,format_string) (page 145)
– format_number(v,template) (page 145)
– human_readable(v)(page 145)
• Getvaluesfrommetadata(page 145)
– approximate_formats()(page 145)
– author_links(val_separator,pair_separator)(page 145)
– author_sorts(val_separator)(page 146)
– booksize()(page 146)
– current_library_name()(page 146)
– current_library_path()(page 146)
– field(name)(page 146)
– formats_modtimes(date_format) (page 146)
– formats_paths() (page 146)
– formats_sizes() (page 147)
– has_cover()(page 147)
– language_codes(lang_strings) (page 147)
– language_strings(lang_codes,localize) (page 147)
– ondevice()(page 147)
– raw_field(name) (page 147)
– raw_list(name,separator) (page 147)
– series_sort() (page 147)
– user_categories()(page 147)
– virtual_libraries()(page 148)
• If-then-else (page 148)
– contains(val,pattern,textifmatch,textifnotmatch)(page 148)
– ifempty(val,textifempty) (page 148)
– test(val,textifnotempty,textifempty) (page 148)
• Iteratingovervalues (page 148)
– first_non_empty(value,value,...)(page 148)
– lookup(val,pattern,field,pattern,field,...,else_field) (page 148)
– switch(val,pattern,value,pattern,value,...,else_value) (page 148)
• Listlookup(page 148)
– identifier_in_list(val,id,found_val,not_found_val) (page 149)
– in_list(val,separator,pattern,found_val,not_found_val) (page 149)
– list_item(val,index,separator) (page 149)
– select(val,key) (page 149)
– str_in_list(val,separator,string,found_val,not_found_val) (page 149)
• Listmanipulation(page 149)
– count(val,separator)(page 149)
– list_difference(list1,list2,separator) (page 149)
– list_equals(list1,sep1,list2,sep2,yes_val,no_val) (page 150)
– list_intersection(list1,list2,separator) (page 150)
– list_re(src_list,separator,include_re,opt_replace) (page 150)
– list_re_group(src_list,separator,include_re,search_re,group_1_template,...) (page 150)
– list_sort(list,direction,separator) (page 150)
– list_union(list1,list2,separator) (page 150)
1.9. Tutorials
143