mirror of https://github.com/tstack/lnav.git
[session] some improvements to session export
This commit is contained in:
parent
c6d7206a1e
commit
056754a926
|
@ -113,7 +113,7 @@ sql_progress(const struct log_cursor& lc)
|
|||
size_t total = lnav_data.ld_log_source.text_line_count();
|
||||
off_t off = lc.lc_curr_line;
|
||||
|
||||
if (off < 0) {
|
||||
if (off < 0 || off >= total) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -231,9 +231,9 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'a':
|
||||
if (lnav_data.ld_last_view == nullptr) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no last view available");
|
||||
} else {
|
||||
textview_curses* tc = lnav_data.ld_last_view;
|
||||
auto* tc = lnav_data.ld_last_view;
|
||||
|
||||
lnav_data.ld_last_view = nullptr;
|
||||
ensure_view(tc);
|
||||
|
@ -242,7 +242,7 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'A':
|
||||
if (lnav_data.ld_last_view == nullptr) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no last view available");
|
||||
} else {
|
||||
auto* tc = lnav_data.ld_last_view;
|
||||
auto* top_tc = *lnav_data.ld_view_stack.top();
|
||||
|
@ -305,13 +305,13 @@ handle_paging_key(int ch)
|
|||
lnav_data.ld_rl_view->set_alt_value(
|
||||
HELP_MSG_1(m, "to bookmark a line"));
|
||||
} else {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no more search hits to the right");
|
||||
}
|
||||
} break;
|
||||
|
||||
case '<':
|
||||
if (tc->get_left() == 0) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no more search hits to the left");
|
||||
} else {
|
||||
std::pair<int, int> range;
|
||||
|
||||
|
@ -357,7 +357,7 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'z':
|
||||
if ((lnav_data.ld_zoom_level - 1) < 0) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("maximum zoom-in level reached");
|
||||
} else {
|
||||
execute_command(
|
||||
ec,
|
||||
|
@ -368,7 +368,7 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'Z':
|
||||
if ((lnav_data.ld_zoom_level + 1) >= ZOOM_COUNT) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("maximum zoom-out level reached");
|
||||
} else {
|
||||
execute_command(
|
||||
ec,
|
||||
|
@ -396,7 +396,8 @@ handle_paging_key(int ch)
|
|||
tc->shift_top(1_vl);
|
||||
}
|
||||
if (lnav_data.ld_last_user_mark[tc] + 1
|
||||
>= tc->get_inner_height()) {
|
||||
>= tc->get_inner_height())
|
||||
{
|
||||
break;
|
||||
}
|
||||
lnav_data.ld_last_user_mark[tc] += 1;
|
||||
|
@ -431,7 +432,7 @@ handle_paging_key(int ch)
|
|||
lnav_data.ld_last_user_mark[tc] = new_mark - 1;
|
||||
} else {
|
||||
lnav_data.ld_last_user_mark[tc] = new_mark;
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no more lines to mark");
|
||||
}
|
||||
lnav_data.ld_select_start[tc] = tc->get_top();
|
||||
tc->reload_data();
|
||||
|
@ -442,8 +443,9 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'M':
|
||||
if (lnav_data.ld_last_user_mark.find(tc)
|
||||
== lnav_data.ld_last_user_mark.end()) {
|
||||
alerter::singleton().chime();
|
||||
== lnav_data.ld_last_user_mark.end())
|
||||
{
|
||||
alerter::singleton().chime("no lines have been marked");
|
||||
} else {
|
||||
int start_line = std::min((int) tc->get_top(),
|
||||
lnav_data.ld_last_user_mark[tc] + 1);
|
||||
|
@ -486,7 +488,8 @@ handle_paging_key(int ch)
|
|||
while (next_top < tc->get_inner_height()) {
|
||||
if (!lss->find_line(lss->at(next_top))->is_message()) {
|
||||
} else if (lss->get_line_accel_direction(next_top)
|
||||
== log_accel::A_DECEL) {
|
||||
== log_accel::A_DECEL)
|
||||
{
|
||||
--next_top;
|
||||
tc->set_top(next_top);
|
||||
break;
|
||||
|
@ -509,7 +512,8 @@ handle_paging_key(int ch)
|
|||
while (0 <= next_top && next_top < tc->get_inner_height()) {
|
||||
if (!lss->find_line(lss->at(next_top))->is_message()) {
|
||||
} else if (lss->get_line_accel_direction(next_top)
|
||||
== log_accel::A_DECEL) {
|
||||
== log_accel::A_DECEL)
|
||||
{
|
||||
--next_top;
|
||||
tc->set_top(next_top);
|
||||
break;
|
||||
|
@ -562,7 +566,8 @@ handle_paging_key(int ch)
|
|||
|
||||
case 'D':
|
||||
if (tc->get_top() == 0) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"the top of the log has been reached");
|
||||
} else if (lss) {
|
||||
lss->time_for_row(tc->get_top()) |
|
||||
[lss, ch, tc](auto first_time) {
|
||||
|
@ -605,7 +610,8 @@ handle_paging_key(int ch)
|
|||
struct line_range opid_range = find_string_attr_range(
|
||||
start_helper.lh_string_attrs, &logline::L_OPID);
|
||||
if (!opid_range.is_valid()) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"Log message does not contain an opid");
|
||||
lnav_data.ld_rl_view->set_attr_value(
|
||||
lnav::console::user_message::error(
|
||||
"Log message does not contain an opid")
|
||||
|
@ -620,7 +626,8 @@ handle_paging_key(int ch)
|
|||
while (true) {
|
||||
if (ch == 'o') {
|
||||
if (++next_helper.lh_current_line
|
||||
>= tc->get_inner_height()) {
|
||||
>= tc->get_inner_height())
|
||||
{
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
|
@ -668,7 +675,8 @@ handle_paging_key(int ch)
|
|||
"No more messages found with opid: ")
|
||||
.append(lnav::roles::symbol(opid_str)))
|
||||
.to_attr_line());
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"no more messages found with opid");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -692,7 +700,7 @@ handle_paging_key(int ch)
|
|||
|
||||
case 't':
|
||||
if (lnav_data.ld_text_source.current_file() == nullptr) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("No text files loaded");
|
||||
lnav_data.ld_rl_view->set_attr_value(
|
||||
lnav::console::user_message::error("No text files loaded")
|
||||
.to_attr_line());
|
||||
|
@ -775,7 +783,8 @@ handle_paging_key(int ch)
|
|||
for (row = 0; row < dls.dls_rows.size(); row++) {
|
||||
if (strcmp(dls.dls_rows[row][log_line_index.value()],
|
||||
linestr.data())
|
||||
== 0) {
|
||||
== 0)
|
||||
{
|
||||
vis_line_t db_line(row);
|
||||
|
||||
db_tc->set_top(db_line);
|
||||
|
@ -813,7 +822,8 @@ handle_paging_key(int ch)
|
|||
size_t col_len = strlen(col_value);
|
||||
|
||||
if (dts.scan(col_value, col_len, nullptr, &tm, tv)
|
||||
!= nullptr) {
|
||||
!= nullptr)
|
||||
{
|
||||
lnav_data.ld_log_source.find_from_time(tv) |
|
||||
[tc](auto vl) {
|
||||
tc->set_top(vl);
|
||||
|
@ -878,7 +888,8 @@ handle_paging_key(int ch)
|
|||
}
|
||||
}
|
||||
} else {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"no configuration panels in this view");
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
:alt-msg Press t to switch to the text view
|
||||
|
||||
**See Also**
|
||||
:ref:`echo`, :ref:`eval`, :ref:`export_session_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_view_to`
|
||||
:ref:`echo`, :ref:`eval`, :ref:`export_session_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -414,7 +414,7 @@
|
|||
:echo Hello, World!
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -473,7 +473,7 @@
|
|||
:eval ;SELECT * FROM ${table}
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`echo`, :ref:`export_session_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`echo`, :ref:`export_session_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -489,7 +489,7 @@
|
|||
* **path\*** --- The path to the file to write
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1006,6 +1006,19 @@
|
|||
----
|
||||
|
||||
|
||||
.. _rebuild:
|
||||
|
||||
:rebuild
|
||||
^^^^^^^^
|
||||
|
||||
Forcefully rebuild file indexes
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`echo`, :ref:`eval`, :ref:`export_session_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
||||
.. _redirect_to:
|
||||
|
||||
:redirect-to *\[path\]*
|
||||
|
@ -1024,7 +1037,7 @@
|
|||
:redirect-to /tmp/script-output.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1412,7 +1425,7 @@
|
|||
:write-table-to /tmp/table.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1435,7 +1448,7 @@
|
|||
:write-csv-to /tmp/table.csv
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1458,7 +1471,7 @@
|
|||
:write-json-to /tmp/table.json
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1481,7 +1494,7 @@
|
|||
:write-jsonlines-to /tmp/table.json
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1505,7 +1518,7 @@
|
|||
:write-raw-to /tmp/table.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1528,7 +1541,7 @@
|
|||
:write-screen-to /tmp/table.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`, :ref:`write_view_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1551,7 +1564,7 @@
|
|||
:write-to /tmp/interesting-lines.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_view_to`, :ref:`write_view_to`
|
||||
|
||||
----
|
||||
|
||||
|
@ -1574,7 +1587,7 @@
|
|||
:write-view-to /tmp/table.txt
|
||||
|
||||
**See Also**
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`
|
||||
:ref:`alt_msg`, :ref:`append_to`, :ref:`create_logline_table`, :ref:`create_search_table`, :ref:`echo`, :ref:`echo`, :ref:`echoln`, :ref:`eval`, :ref:`export_session_to`, :ref:`export_session_to`, :ref:`pipe_line_to`, :ref:`pipe_to`, :ref:`rebuild`, :ref:`redirect_to`, :ref:`redirect_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_csv_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_json_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_jsonlines_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_raw_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_screen_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_table_to`, :ref:`write_to`, :ref:`write_to`
|
||||
|
||||
----
|
||||
|
||||
|
|
|
@ -298,7 +298,8 @@ listview_curses::do_update()
|
|||
this->lv_gutter_source->listview_gutter_value_for_range(
|
||||
*this, range_start, range_end, ch, role, bar_role);
|
||||
if (gutter_y >= (unsigned int) y
|
||||
&& gutter_y <= (unsigned int) lines) {
|
||||
&& gutter_y <= (unsigned int) lines)
|
||||
{
|
||||
role = bar_role;
|
||||
}
|
||||
attrs = vc.attrs_for_role(role);
|
||||
|
@ -365,9 +366,6 @@ listview_curses::shift_selection(int offset)
|
|||
if (new_selection >= 0_vl && new_selection < this->get_inner_height()) {
|
||||
this->set_selection(new_selection);
|
||||
this->scroll_selection_into_view();
|
||||
} else if (!alerter::singleton().chime()) {
|
||||
// XXX Disabling for now...
|
||||
// this->delegate_scroll_out();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -482,7 +480,7 @@ listview_curses::set_top(vis_line_t top, bool suppress_flash)
|
|||
}
|
||||
if (top < 0 || (top > 0 && top >= inner_height)) {
|
||||
if (suppress_flash == false) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("invalid top");
|
||||
}
|
||||
} else if (this->lv_top != top) {
|
||||
this->lv_top = top;
|
||||
|
|
|
@ -90,13 +90,12 @@ class list_gutter_source {
|
|||
public:
|
||||
virtual ~list_gutter_source() = default;
|
||||
|
||||
virtual void listview_gutter_value_for_range(
|
||||
const listview_curses& lv,
|
||||
int start,
|
||||
int end,
|
||||
chtype& ch_out,
|
||||
role_t& role_out,
|
||||
role_t& bar_role_out)
|
||||
virtual void listview_gutter_value_for_range(const listview_curses& lv,
|
||||
int start,
|
||||
int end,
|
||||
chtype& ch_out,
|
||||
role_t& role_out,
|
||||
role_t& bar_role_out)
|
||||
{
|
||||
ch_out = ACS_VLINE;
|
||||
}
|
||||
|
@ -340,7 +339,8 @@ public:
|
|||
{
|
||||
if (offset < 0 && this->lv_top == 0) {
|
||||
if (suppress_flash == false) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"the top of the view has been reached");
|
||||
}
|
||||
} else {
|
||||
this->set_top(std::max(0_vl, this->lv_top + offset),
|
||||
|
@ -369,7 +369,8 @@ public:
|
|||
|
||||
this->get_dimensions(height, width);
|
||||
if ((this->get_inner_width() - this->lv_left) <= width) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"the maximum width of the view has been reached");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -391,7 +392,8 @@ public:
|
|||
unsigned int shift_left(int offset)
|
||||
{
|
||||
if (this->lv_word_wrap) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"cannot scroll horizontally when word wrap is enabled");
|
||||
} else if (offset < 0 && this->lv_left < (unsigned int) -offset) {
|
||||
this->set_left(0);
|
||||
} else {
|
||||
|
|
|
@ -1327,7 +1327,7 @@ looper()
|
|||
"command <cmd>",
|
||||
encoded_name,
|
||||
keyseq));
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("unrecognized key");
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -989,7 +989,7 @@ com_save_to(exec_context& ec,
|
|||
} else if (split_args[0] == "/dev/clipboard") {
|
||||
auto open_res = sysclip::open(sysclip::type_t::GENERAL);
|
||||
if (open_res.isErr()) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("cannot open clipboard");
|
||||
return ec.make_error("Unable to copy to clipboard: {}",
|
||||
open_res.unwrapErr());
|
||||
}
|
||||
|
@ -1557,7 +1557,7 @@ com_redirect_to(exec_context& ec,
|
|||
} else if (split_args[0] == "/dev/clipboard") {
|
||||
auto out = sysclip::open(sysclip::type_t::GENERAL);
|
||||
if (out.isErr()) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("cannot open clipboard");
|
||||
return ec.make_error("Unable to copy to clipboard: {}",
|
||||
out.unwrapErr());
|
||||
}
|
||||
|
@ -3653,15 +3653,18 @@ com_export_session_to(exec_context& ec,
|
|||
} else if (fn == "/dev/clipboard") {
|
||||
auto open_res = sysclip::open(sysclip::type_t::GENERAL);
|
||||
if (open_res.isErr()) {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("cannot open clipboard");
|
||||
return ec.make_error("Unable to copy to clipboard: {}",
|
||||
open_res.unwrapErr());
|
||||
}
|
||||
outfile = open_res.unwrap();
|
||||
} else if (lnav_data.ld_flags & LNF_SECURE_MODE) {
|
||||
return ec.make_error("{} -- unavailable in secure mode", args[0]);
|
||||
} else if ((outfile = fopen(fn.c_str(), "w")) == nullptr) {
|
||||
return ec.make_error("unable to open file -- {}", fn);
|
||||
} else {
|
||||
if ((outfile = fopen(fn.c_str(), "we")) == nullptr) {
|
||||
return ec.make_error("unable to open file -- {}", fn);
|
||||
}
|
||||
fchmod(fileno(outfile.in()), S_IRWXU);
|
||||
}
|
||||
|
||||
auto export_res = lnav::session::export_to(outfile.in());
|
||||
|
@ -3959,6 +3962,7 @@ com_rebuild(exec_context& ec,
|
|||
{
|
||||
if (args.empty()) {
|
||||
} else if (!ec.ec_dry_run) {
|
||||
rescan_files(true);
|
||||
rebuild_indexes_repeatedly();
|
||||
}
|
||||
|
||||
|
@ -5466,6 +5470,11 @@ readline_context::command_t STD_COMMANDS[] = {
|
|||
.with_summary("Export the current lnav state to an lnav script file")
|
||||
.with_parameter(help_text("path", "The path to the file to write"))
|
||||
.with_tags({"io", "scripting"})},
|
||||
{"rebuild",
|
||||
com_rebuild,
|
||||
help_text(":rebuild")
|
||||
.with_summary("Forcefully rebuild file indexes")
|
||||
.with_tags({"scripting"})},
|
||||
{"set-min-log-level",
|
||||
com_set_min_log_level,
|
||||
|
||||
|
@ -5590,11 +5599,10 @@ init_lnav_commands(readline_context::command_map_t& cmd_map)
|
|||
cmd_map["add-test"] = &add_test;
|
||||
}
|
||||
if (getenv("lnav_test") != nullptr) {
|
||||
static readline_context::command_t rebuild(com_rebuild),
|
||||
static readline_context::command_t
|
||||
shexec(com_shexec), poll_now(com_poll_now),
|
||||
test_comment(com_test_comment);
|
||||
|
||||
cmd_map["rebuild"] = &rebuild;
|
||||
cmd_map["shexec"] = &shexec;
|
||||
cmd_map["poll-now"] = &poll_now;
|
||||
cmd_map["test-comment"] = &test_comment;
|
||||
|
|
|
@ -131,12 +131,16 @@ SELECT content_id, format, time_offset FROM lnav_file
|
|||
WHERE format IS NOT NULL AND time_offset != 0
|
||||
)";
|
||||
|
||||
static const char* HEADER = R"(
|
||||
static constexpr const char HEADER[] = R"(#!lnav -Nf
|
||||
# This file is an export of an lnav session. You can type
|
||||
# '|/path/to/this/file' in lnav to execute this file and
|
||||
# restore the state of the session.
|
||||
#
|
||||
|
||||
;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || {0} || ' or later')
|
||||
WHERE lnav_version() < {0} COLLATE naturalcase
|
||||
|
||||
# The files loaded into the session were:
|
||||
|
||||
)";
|
||||
|
||||
static constexpr const char MARK_HEADER[] = R"(
|
||||
|
@ -189,11 +193,13 @@ SELECT content_id, format, time_offset FROM lnav_file
|
|||
.with_reason(prep_mark_res.unwrapErr()));
|
||||
}
|
||||
|
||||
fmt::print(file, FMT_STRING("{}"), HEADER);
|
||||
fmt::print(file, FMT_STRING(HEADER), sqlitepp::quote(PACKAGE_VERSION));
|
||||
for (const auto& lf : lnav_data.ld_active_files.fc_files) {
|
||||
fmt::print(file, FMT_STRING("# {}"), lf->get_filename());
|
||||
fmt::print(file, FMT_STRING(":open {}"), lf->get_filename());
|
||||
}
|
||||
|
||||
fmt::print(file, FMT_STRING("\n:rebuild\n"));
|
||||
|
||||
auto mark_count = 0;
|
||||
auto each_mark_res
|
||||
= prep_mark_res.unwrap().for_each_row<log_message_session_state>(
|
||||
|
|
|
@ -66,7 +66,8 @@ spectrogram_source::list_input_handle_key(listview_curses& lv, int ch)
|
|||
if (sel < 0 || (size_t) sel >= this->text_line_count()
|
||||
|| !this->ss_cursor_column || this->ss_value_source == nullptr)
|
||||
{
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime(
|
||||
"a value must be selected before it can be marked");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -88,6 +88,22 @@ alerter::singleton()
|
|||
return retval;
|
||||
}
|
||||
|
||||
bool
|
||||
alerter::chime(std::string msg)
|
||||
{
|
||||
if (!this->a_enabled) {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool retval = this->a_do_flash;
|
||||
if (this->a_do_flash) {
|
||||
log_warning("chime message: %s", msg.c_str());
|
||||
::flash();
|
||||
}
|
||||
this->a_do_flash = false;
|
||||
return retval;
|
||||
}
|
||||
|
||||
struct utf_to_display_adjustment {
|
||||
int uda_origin;
|
||||
int uda_offset;
|
||||
|
|
|
@ -149,19 +149,7 @@ public:
|
|||
|
||||
void enabled(bool enable) { this->a_enabled = enable; }
|
||||
|
||||
bool chime()
|
||||
{
|
||||
if (!this->a_enabled) {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool retval = this->a_do_flash;
|
||||
if (this->a_do_flash) {
|
||||
::flash();
|
||||
}
|
||||
this->a_do_flash = false;
|
||||
return retval;
|
||||
}
|
||||
bool chime(std::string msg);
|
||||
|
||||
void new_input(int ch)
|
||||
{
|
||||
|
@ -377,25 +365,13 @@ public:
|
|||
|
||||
void set_default_role(role_t role) { this->vc_default_role = role; }
|
||||
|
||||
void set_visible(bool value)
|
||||
{
|
||||
this->vc_visible = value;
|
||||
}
|
||||
void set_visible(bool value) { this->vc_visible = value; }
|
||||
|
||||
bool is_visible() const
|
||||
{
|
||||
return this->vc_visible;
|
||||
}
|
||||
bool is_visible() const { return this->vc_visible; }
|
||||
|
||||
void set_width(long width)
|
||||
{
|
||||
this->vc_width = width;
|
||||
}
|
||||
void set_width(long width) { this->vc_width = width; }
|
||||
|
||||
long get_width() const
|
||||
{
|
||||
return this->vc_width;
|
||||
}
|
||||
long get_width() const { return this->vc_width; }
|
||||
|
||||
static void awaiting_user_input();
|
||||
|
||||
|
@ -469,25 +445,13 @@ public:
|
|||
return std::find(this->begin(), this->end(), view);
|
||||
}
|
||||
|
||||
iterator begin()
|
||||
{
|
||||
return this->vs_views.begin();
|
||||
}
|
||||
iterator begin() { return this->vs_views.begin(); }
|
||||
|
||||
iterator end()
|
||||
{
|
||||
return this->vs_views.end();
|
||||
}
|
||||
iterator end() { return this->vs_views.end(); }
|
||||
|
||||
size_t size() const
|
||||
{
|
||||
return this->vs_views.size();
|
||||
}
|
||||
size_t size() const { return this->vs_views.size(); }
|
||||
|
||||
bool empty() const
|
||||
{
|
||||
return this->vs_views.empty();
|
||||
}
|
||||
bool empty() const { return this->vs_views.empty(); }
|
||||
|
||||
std::function<void(T*)> vs_change_handler;
|
||||
|
||||
|
|
|
@ -857,7 +857,12 @@ toggle_view(textview_curses* toggle_tc)
|
|||
lnav_data.ld_last_view = tc;
|
||||
lnav_data.ld_view_stack.pop_back();
|
||||
} else {
|
||||
if (toggle_tc == &lnav_data.ld_views[LNV_SCHEMA]) {
|
||||
if (toggle_tc == &lnav_data.ld_views[LNV_LOG]
|
||||
|| toggle_tc == &lnav_data.ld_views[LNV_TEXT])
|
||||
{
|
||||
rescan_files(true);
|
||||
rebuild_indexes_repeatedly();
|
||||
} else if (toggle_tc == &lnav_data.ld_views[LNV_SCHEMA]) {
|
||||
open_schema_view();
|
||||
} else if (toggle_tc == &lnav_data.ld_views[LNV_PRETTY]) {
|
||||
open_pretty_view();
|
||||
|
@ -982,7 +987,7 @@ moveto_cluster(nonstd::optional<vis_line_t> (bookmark_vector<vis_line_t>::*f)(
|
|||
return true;
|
||||
}
|
||||
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("unable to find next bookmark");
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -1020,7 +1025,7 @@ previous_cluster(const bookmark_type_t* bt, textview_curses* tc)
|
|||
tc->set_top(new_top.value());
|
||||
}
|
||||
} else {
|
||||
alerter::singleton().chime();
|
||||
alerter::singleton().chime("no previous bookmark");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -212,7 +212,8 @@ vt52_curses::map_output(const char* output, int len)
|
|||
= utf8_char_to_byte_index(line_string, this->vc_x);
|
||||
|
||||
for (int esc_index = 0; esc_index < this->vc_escape_len;
|
||||
esc_index++) {
|
||||
esc_index++)
|
||||
{
|
||||
if (x_byte_index < this->vc_line.length()) {
|
||||
line_string[x_byte_index]
|
||||
= this->vc_escape[esc_index];
|
||||
|
@ -225,7 +226,8 @@ vt52_curses::map_output(const char* output, int len)
|
|||
this->vc_escape_len = 0;
|
||||
}
|
||||
} else if ((cap = vt52_escape_map::singleton()[this->vc_escape])
|
||||
!= nullptr) {
|
||||
!= nullptr)
|
||||
{
|
||||
this->vc_escape_len = 0;
|
||||
if (strcmp(cap, "ce") == 0) {
|
||||
this->vc_line.erase_utf8_chars(this->vc_x);
|
||||
|
|
|
@ -709,9 +709,9 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mParameter[0m
|
||||
[4mmsg[0m The message to display
|
||||
[4mSee Also[0m
|
||||
[1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m
|
||||
[1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m
|
||||
[4mExample[0m
|
||||
#1 To display 'Press t to switch to the text view' on the bottom right:
|
||||
[37m[40m:[0m[1m[36m[40malt-msg[0m[37m[40m Press t to switch to the text view [0m
|
||||
|
@ -940,11 +940,11 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mmsg[0m The message to display
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To output 'Hello, World!':
|
||||
[37m[40m:[0m[1m[36m[40mecho[0m[37m[40m Hello, World! [0m
|
||||
|
@ -979,9 +979,9 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mParameter[0m
|
||||
[4mcommand[0m The command or query to perform substitution on.
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m
|
||||
[1m:alt-msg[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m
|
||||
[4mExample[0m
|
||||
#1 To substitute the table name from a variable:
|
||||
[37m[40m:[0m[1m[36m[40meval[0m[37m[40m ;SELECT * FROM [0m[1m[37m[40m${[0m[37m[40mtable[0m[1m[37m[40m}[0m[37m[40m [0m
|
||||
|
@ -995,7 +995,7 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mpath[0m The path to the file to write
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m,
|
||||
[1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
|
@ -1331,6 +1331,14 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
Quit lnav
|
||||
|
||||
|
||||
[4m:[0m[1m[4mrebuild[0m
|
||||
══════════════════════════════════════════════════════════════════════
|
||||
Forcefully rebuild file indexes
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m
|
||||
|
||||
[4m:[0m[1m[4mredirect-to[0m[4m [[0m[4mpath[0m[4m][0m
|
||||
══════════════════════════════════════════════════════════════════════
|
||||
Redirect the output of commands that write to stdout to the given
|
||||
|
@ -1340,7 +1348,7 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
current redirect will be cleared
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m,
|
||||
[1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
|
@ -1569,12 +1577,13 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m,
|
||||
[1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write SQL results as text to /tmp/table.txt:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-table-to[0m[37m[40m /tmp/table.txt [0m
|
||||
|
@ -1589,8 +1598,8 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
|
@ -1609,12 +1618,12 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m,
|
||||
[1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write SQL results as JSON to /tmp/table.json:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-json-to[0m[37m[40m /tmp/table.json [0m
|
||||
|
@ -1629,12 +1638,12 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m,
|
||||
[1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write SQL results as JSON Lines to /tmp/table.json:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-jsonlines-to[0m[37m[40m /tmp/table.json [0m
|
||||
|
@ -1653,13 +1662,13 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m,
|
||||
[1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m,
|
||||
[1m:write-view-to[0m, [1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write the marked lines in the log view to /tmp/table.txt:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-raw-to[0m[37m[40m /tmp/table.txt [0m
|
||||
|
@ -1675,12 +1684,13 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m,
|
||||
[1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write only the displayed text to /tmp/table.txt:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-screen-to[0m[37m[40m /tmp/table.txt [0m
|
||||
|
@ -1695,12 +1705,13 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m,
|
||||
[1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write SQL results as text to /tmp/table.txt:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-table-to[0m[37m[40m /tmp/table.txt [0m
|
||||
|
@ -1714,7 +1725,7 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mpath[0m The path to the file to write
|
||||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m,
|
||||
[1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m,
|
||||
[1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m,
|
||||
[1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
|
@ -1735,12 +1746,13 @@ lnav@googlegroups.com[1] support@lnav.org[2]
|
|||
[4mSee Also[0m
|
||||
[1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m,
|
||||
[1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m,
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1mecholn()[0m
|
||||
[1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m,
|
||||
[1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m,
|
||||
[1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m,
|
||||
[1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m,
|
||||
[1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m,
|
||||
[1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m,
|
||||
[1m:write-to[0m, [1mecholn()[0m
|
||||
[4mExample[0m
|
||||
#1 To write the top view to /tmp/table.txt:
|
||||
[37m[40m:[0m[1m[36m[40mwrite-view-to[0m[37m[40m /tmp/table.txt [0m
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
|
||||
#!lnav -Nf
|
||||
# This file is an export of an lnav session. You can type
|
||||
# '|/path/to/this/file' in lnav to execute this file and
|
||||
# restore the state of the session.
|
||||
#
|
||||
|
||||
;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.11.0' || ' or later')
|
||||
WHERE lnav_version() < '0.11.0' COLLATE naturalcase
|
||||
|
||||
# The files loaded into the session were:
|
||||
# {test_dir}/logfile_access_log.0
|
||||
|
||||
:open {test_dir}/logfile_access_log.0
|
||||
:rebuild
|
||||
|
||||
|
||||
# The following SQL statements will restore the bookmarks,
|
||||
# comments, and tags that were added in the session.
|
||||
|
|
Loading…
Reference in New Issue