diff options
Diffstat (limited to 'src/lnav_config.hh')
-rw-r--r-- | src/lnav_config.hh | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/lnav_config.hh b/src/lnav_config.hh index 8341eca..2408006 100644 --- a/src/lnav_config.hh +++ b/src/lnav_config.hh @@ -36,23 +36,26 @@ #include <map> #include <set> #include <string> -#include <unordered_map> #include <vector> #include "archive_manager.cfg.hh" +#include "base/date_time_scanner.cfg.hh" #include "base/file_range.hh" #include "base/lnav.console.hh" #include "base/result.h" #include "file_vtab.cfg.hh" #include "ghc/filesystem.hpp" #include "lnav_config_fwd.hh" +#include "log.annotate.cfg.hh" #include "log_level.hh" #include "logfile.cfg.hh" #include "logfile_sub_source.cfg.hh" +#include "piper.looper.cfg.hh" #include "styling.hh" #include "sysclip.cfg.hh" #include "tailer/tailer.looper.cfg.hh" #include "top_status_source.cfg.hh" +#include "url_handler.cfg.hh" /** * Check if an experimental feature should be enabled by @@ -77,7 +80,8 @@ bool update_installs_from_git(); void install_extra_formats(); struct key_command { - std::string kc_cmd; + std::string kc_id; + positioned_property<std::string> kc_cmd; std::string kc_alt_msg; }; @@ -94,6 +98,11 @@ struct movement_config { config_movement_mode mode{config_movement_mode::TOP}; }; +enum class lnav_mouse_mode { + disabled, + enabled, +}; + struct _lnav_config { top_status_source_cfg lc_top_status_cfg; bool lc_ui_dim_text; @@ -101,7 +110,8 @@ struct _lnav_config { std::string lc_ui_keymap; std::string lc_ui_theme; movement_config lc_ui_movement; - std::unordered_map<std::string, key_map> lc_ui_keymaps; + lnav_mouse_mode lc_mouse_mode; + std::map<std::string, key_map> lc_ui_keymaps; std::map<std::string, std::string> lc_ui_key_overrides; std::map<std::string, std::string> lc_global_vars; std::map<std::string, lnav_theme> lc_ui_theme_defs; @@ -109,11 +119,15 @@ struct _lnav_config { key_map lc_active_keymap; archive_manager::config lc_archive_manager; + date_time_scanner_ns::config lc_log_date_time; + lnav::piper::config lc_piper; file_vtab::config lc_file_vtab; lnav::logfile::config lc_logfile; tailer::config lc_tailer; sysclip::config lc_sysclip; + lnav::url_handler::config lc_url_handlers; logfile_sub_source_ns::config lc_log_source; + lnav::log::annotate::config lc_log_annotations; }; extern struct _lnav_config lnav_config; @@ -139,6 +153,8 @@ void reload_config(std::vector<lnav::console::user_message>& errors); std::string save_config(); +std::string dump_config(); + extern const char* DEFAULT_FORMAT_SCHEMA; extern const std::set<std::string> SUPPORTED_FORMAT_SCHEMAS; |