aboutsummaryrefslogtreecommitdiff
path: root/doc/Usage
diff options
context:
space:
mode:
Diffstat (limited to 'doc/Usage')
-rw-r--r--doc/Usage/CommandLine.md12
-rw-r--r--doc/Usage/Configuration.md53
-rw-r--r--doc/Usage/Profile.md17
-rw-r--r--doc/Usage/Session.md30
4 files changed, 112 insertions, 0 deletions
diff --git a/doc/Usage/CommandLine.md b/doc/Usage/CommandLine.md
new file mode 100644
index 0000000..1c532ce
--- /dev/null
+++ b/doc/Usage/CommandLine.md
@@ -0,0 +1,12 @@
+## Command-line options
+
+### General
+* `-h`, `--help`: Display this help.
+* `-v`, `--version`: Display version information.
+* `--build`: Display build branch and commit.
+* `-c`, `--config`: Set configuration file.
+* `--no-remote`: Don't check for other instances when starting.
+
+### Tweaking configuration
+You can overwrite options at runtime using the option path as a command line
+parameter.
diff --git a/doc/Usage/Configuration.md b/doc/Usage/Configuration.md
new file mode 100644
index 0000000..3bf55b9
--- /dev/null
+++ b/doc/Usage/Configuration.md
@@ -0,0 +1,53 @@
+## Configuration
+
+The Configuration is loaded from _~/.config/smolbote/smolbote.cfg_. Most
+settings are only loaded on launch.
+
+For a full list of settings, check `--help`.
+
+### Browser (group: browser)
+
+### Main Window (group: mainwindow)
+A main window contains one or more subwindows.
+
+### Subwindow (group: window)
+A subwindow contains multiple tabs and functions similarly to a tab group.
+
+### Navigation bar (group: navigation)
+The navigation bar is the toolbar that holds the history, reload and home
+buttons, as well as the address bar. It can be made movable through the
+navigation.movable option.
+
+### Address bar (group: addressbar)
+
+### Filter (group: filter)
+
+### Plugins (group: plugins)
+Plugins a way of extending smolbote's functionality using the Qt plugin system.
+They are not to be confused with NPAPI/PPAPI or WebExtension plugins.
+
+To enable a plugin either copy it or symlink it in the plugins.path location,
+or set its absolute path as the plugins.path.
+
+### Profiles (group: profile)
+A Profile is a collection of settings, policies, scripts, cookies, cache and
+history. Profiles can be used to isolate pages from each other.
+
+Each window has a default profile it uses when opening new tabs. This can be
+set by the profile.default option, and can be changed from the window's menu.
+Additionally, tabs can have their profiles individually changed from their page
+menu.
+
+Because profiles store all their data separately, you can log in into the same
+site with a different account from each profile. However, links opened into new
+tabs will still use the subwindow's default profile. For example, you can set a
+profile to hold login information for a site, but all new tabs opened from that
+site would still be using the default off-the-record profile.
+
+Profile definitions are stored in the profiles.path location. To create a new
+profile, create a profile-id.profile file in that location.
+
+### Bookmarks (group: bookmarks)
+
+### Downloads (group: downloads)
+
diff --git a/doc/Usage/Profile.md b/doc/Usage/Profile.md
new file mode 100644
index 0000000..d205a86
--- /dev/null
+++ b/doc/Usage/Profile.md
@@ -0,0 +1,17 @@
+Profiles are read from profile.path
+
+## Settings
+
+- otr (defaults to true) - is this profile off-the-record
+- name (defaults to the configuration file name)
+- search (defaults to profile.search) - search engine url
+- homepage (defaults to profile.homepage)
+- newtab (defaults to profile.newtab)
+
+### Properties
+Key is property name; value is property value
+
+### Attributes
+see QWebEngineSetting::WebAttribute for list of IDs.
+Key is attribute id; value is attribute value (true/false)
+
diff --git a/doc/Usage/Session.md b/doc/Usage/Session.md
new file mode 100644
index 0000000..3018253
--- /dev/null
+++ b/doc/Usage/Session.md
@@ -0,0 +1,30 @@
+## Session format
+A session is a single window, which contains a list of subwindows.
+
+Each subwindow has a profile (profile id), and a list of tabs.
+
+Each tab has a profile (profile id) and url.
+
+~~~json
+{
+ "subwindows": [
+ {
+ "profile": "<profile id>",
+ "tabs": [
+ {
+ "profile": "<profile id>",
+ "url": "<url>"
+ },
+ {
+ ...
+ }
+ ]
+ }
+ ]
+}
+
+~~~
+
+## --session
+This command-line option causes the browser to load the specified json file.
+