App-DBBrowser
view release on metacpan or search on metacpan
2.441 2026-05-15
- Raised required minimum version for Term::TablePrint (Bugfix header stringification).
- SQLite: bugfix in checking table name duplicates in create table with qualified table names.
- Update option menu.
2.440 2026-04-11
- Raised required minimum version for Term::TablePrint (Bugfix scientific notation).
2.439 2026-02-23
- Raised required minimum version for Term::Choose and Term::TablePrint.
- New output option expanded line spacing.
- Update year copyright.
2.438 2025-12-25
- Backwards incompatible changes:
Table names and column names are not quoted by default.
Saved subqueries: saved at plugin level instead at driver level.
Changes in how configuration data is saved.
- Bug fixes:
Bug fix in quoting attached databases.
- Unicode 17.
2.431 2025-06-06
- Update history for date_add and data_substract.
- Update available columns for extended expressions.
- Makefile.PL: added back the 'dist' section.
2.430 2025-05-13
- Update aggregate functions 'count' and 'group_concat'.
- Term::TablePrint minimum version 0.172.
- New option 'maximum with expanded table row'.
2.429 2025-05-05
- Term::TablePrint minimum version 0.171.
- Added 'List::MoreUtils::XS' to prereq_pm.
- New option 'Pad Row Edges'.
2.428 2025-04-27
- Perl minimum version 5.16.0.
- Term::TablePrint minimum version 0.170.
- Bugfix for Perls prior to 5.26.0: do not use ternary operator with bare length.
bin/db-browser view on Meta::CPAN
Set the number of spaces between columns.
=head3 Expand Table Rows
Expand table rows:
=over
=item C<YES>
If C<Return> is pressed, the selected table row is printed with each column in its line. The first row is not expanded
if the cursor auto-jumped to the first row.
=item C<NO>
Don't expand table rows.
=back
=head3 Expanded rows line spacing
Insert a blank line between columns when a row is expanded. See option L</Expand Table>.
=head3 Expanded rows max width
Set a maximum width of the expanded table row output. I<Expanded rows max width> set to C<0> means no maximum width. See
option L</Expand Table>.
=head3 Column Trim Threshold
Columns with a width below or equal to I<Column trim threshold> are only trimmed if it is still necessary to reduce the
row width, even after all columns wider than I<Column trim threshold> have been trimmed to I<Column trim threshold>.
=head3 DB2 Encoding
For C<DB2> databases only: set the application code set.
lib/App/DBBrowser/Options/Defaults.pm view on Meta::CPAN
choose_columns => 0, # not an option, always 0
codepage_mapping => 0, # not an option, always 0
hide_cursor => 0, # not an option, always 0
max_rows => 0, # not an option, always 0
page => 2, # not an option, always 2
binary_filter => 0,
binary_string => 'BNRY',
color => 0,
col_trim_threshold => 30,
expanded_line_spacing => 1,
expanded_max_width => 0,
# mouse => 0,
pad_row_edges => 0,
progress_bar => 60_000,
search => 1,
squash_spaces => 0,
tab_width => 2,
table_expand => 1, # expand_table_rows ##
trunc_fract_first => 1,
undef => '',
},
insert => {
file_encoding => 'UTF-8',
history_dirs => 4,
parse_mode_input_file => 0,
enable_input_filter => 1,
empty_to_null_plain => 1,
empty_to_null_file => 1,
lib/App/DBBrowser/Options/Menus.pm view on Meta::CPAN
],
group_output => [
{ name => '_binary_filter', text => "- Binary filter", section => 'table' },
{ name => '_squash_spaces', text => "- Squash spaces", section => 'table' },
{ name => '_set_string', text => "- Undef string", section => 'table' },
{ name => '_color', text => "- Color", section => 'table' },
{ name => 'trunc_fract_first', text => "- Trunc fract first", section => 'table' },
{ name => '_base_indent', text => "- Indentation SQL", section => 'G' },
{ name => '_pad_row_edges', text => "- Pad row edges", section => 'table' },
{ name => 'tab_width', text => "- Tab width", section => 'table' },
{ name => '_expand_rows', text => "- Expand table rows", section => 'table' },
{ name => '_expanded_line_spacing', text => "- Expanded rows line spacing", section => 'table' },
{ name => 'expanded_max_width', text => "- Expanded rows max width", section => 'table' },
{ name => 'col_trim_threshold', text => "- Column trim threshold", section => 'table' },
],
group_import => [
{ name => '_parse_file', text => "- Parse tool", section => 'insert' },
{ name => '_csv_in_char', text => "- CSV options a", section => 'csv_in' },
{ name => '_csv_in_options', text => "- CSV options b", section => 'csv_in' },
{ name => '_split_config', text => "- Settings 'split'", section => 'split' },
{ name => '_input_filter', text => "- Input filter", section => 'insert' },
{ name => '_empty_to_null', text => "- Empty to null", section => 'insert' },
{ name => '_file_encoding_in', text => "- File encoding", section => 'insert' },
lib/App/DBBrowser/Options/Menus.pm view on Meta::CPAN
my $prompt = 'Set the tab width ';
$sf->__choose_a_number_wrap( $info, $lo, $section, $sub_group, $prompt, $digits, 0 );
}
elsif ( $sub_group eq '_pad_row_edges' ) {
my $prompt = '"Pad row edges"';
my $sub_menu = [
[ 'pad_row_edges', "- Pad row edges with a space.", [ $no, $yes ] ]
];
$sf->__settings_menu_wrap( $info, $lo, $section, $sub_menu, $prompt );
}
elsif ( $sub_group eq '_expand_rows' ) {
my $prompt = 'Your choice: ';
my $sub_menu = [
[ 'table_expand', "- Expand table rows", [ $no, $yes ] ],
];
$sf->__settings_menu_wrap( $info, $lo, $section, $sub_menu, $prompt );
}
elsif ( $sub_group eq '_expanded_line_spacing' ) {
my $prompt = 'Your choice: ';
my $sub_menu = [
[ 'expanded_line_spacing', "- Blank line between columns when a row is expanded.", [ $no, $yes ] ],
];
$sf->__settings_menu_wrap( $info, $lo, $section, $sub_menu, $prompt );
}
elsif ( $sub_group eq 'expanded_max_width' ) {
my $digits = 3;
my $prompt = 'Maximum width of expanded table rows';
$sf->__choose_a_number_wrap( $info, $lo, $section, $sub_group, $prompt, $digits, 0 );
}
elsif ( $sub_group eq 'col_trim_threshold' ) {
my $digits = 3;
my $prompt = 'Column trim threshold ';
$sf->__choose_a_number_wrap( $info, $lo, $section, $sub_group, $prompt, $digits, 0 );
}
elsif ( $sub_group eq '_db2_encoding' ) {
my $items = [
{ name => 'db2_encoding', prompt => "DB2 application code set" },
lib/App/DBBrowser/Options/ReadWrite.pm view on Meta::CPAN
}
}
elsif ( $plugin ) {
my $file_fs = sprintf( $sf->{i}{plugin_config_file_fmt}, $plugin );
$lo = $ax->read_json( $file_fs ) // {};
if ( ! %{$lo//{}} ) {
$lo = $op_df->defaults( $driver );
}
####### 19.02.2026 ############
if ( exists $lo->{table}{max_width_exp} || exists $lo->{table}{min_col_width} || ! exists $lo->{table}{expanded_line_spacing}) {
$lo->{table}{expanded_line_spacing} = 1 if ! exists $lo->{table}{expanded_line_spacing};
$lo->{table}{expanded_max_width} = delete $lo->{table}{max_width_exp} if exists $lo->{table}{max_width_exp};
$lo->{table}{col_trim_threshold} = delete $lo->{table}{min_col_width} if exists $lo->{table}{min_col_width};
my $file_fs = sprintf( $sf->{i}{plugin_config_file_fmt}, $plugin );
$sf->write_config_file( $lo, $driver, $plugin ) if -f $file_fs;
}
###############################
}
else {
$lo = $ax->read_json( $sf->{i}{f_global_settings} ) // {};
( run in 0.575 second using v1.01-cache-2.11-cpan-5623c5533a1 )