diff options
-rw-r--r-- | BUILDING.md | 5 | ||||
-rw-r--r-- | CMakeLists.txt | 14 | ||||
-rw-r--r-- | QUICKSTART.md | 47 | ||||
-rw-r--r-- | README.md | 29 | ||||
-rw-r--r-- | linux/man/smolbote.md | 3 | ||||
-rwxr-xr-x | tools/gen_authors.rb | 18 | ||||
-rwxr-xr-x | tools/list-authors.sh | 12 |
7 files changed, 70 insertions, 58 deletions
diff --git a/BUILDING.md b/BUILDING.md index 51fb333..105e7b4 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -53,10 +53,7 @@ On gcc/clang, no optimize flags are set by default, resulting in rather bloated code being generated. Recommend setting at least -O2. MSVC has optimze flags set by default. -You can set the compiler using -~~~sh --DCMAKE_CXX_COMPILER=/path/to/c++ -~~~ +You can set the compiler using -DCMAKE_CXX_COMPILER=/path/to/c++. You can set additional compiler flags using -DCMAKE_CXX_FLAGS. ### Build type diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c51ddb..20b4f01 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,11 +62,15 @@ endif() # Summarize message(STATUS "=== Configuration summary ===") -feature_summary(WHAT ALL) message(STATUS "Building ${poi_NAME} ${VerTag}; version ${VerDescribe} ${VerBranch}:${VerCommit}") -message(STATUS "Build type: ${CMAKE_BUILD_TYPE}") -message(STATUS "vendor.cmake: ${VENDOR}") -message(STATUS "CXX compiler: ${CMAKE_CXX_COMPILER_ID}") -message(STATUS "C++ flags: ${CMAKE_CXX_FLAGS}") +message(STATUS "vendor.cmake: ${VENDOR}") + +message(STATUS "Platform: ${CMAKE_SYSTEM_NAME}") +message(STATUS "Generator: ${CMAKE_GENERATOR}") +message(STATUS "Build type: ${CMAKE_BUILD_TYPE}") +message(STATUS "CXX compiler: ${CMAKE_CXX_COMPILER_ID}") +message(STATUS "CXX flags: ${CMAKE_CXX_FLAGS}") + +feature_summary(WHAT ALL) diff --git a/QUICKSTART.md b/QUICKSTART.md index f35b9cd..0f65115 100644 --- a/QUICKSTART.md +++ b/QUICKSTART.md @@ -1,27 +1,43 @@ -## Keyboard shortcuts +## Principles -### Navigation -- F4 to focus the address bar and type an address; F2 show its menu -- Ctrl + Left - go back -- Ctrl + Right - go forward +### Simplicity +This should be a simple browser that only does its browsing job with as little +fuss as possible. This is not a platform. + +### Customizability +This browser should be usable with minimal configuration necessary. At the same +time, all functionality should be user-customizable. It is the user's +responsibility to ensure a stable working state when changing settings. + +This browser should be kept as platform-agnostic as possible, while learning +from and implementing the UNIX philosophy as applicable. -### Tabs +### Pragmatic Freedom +Free software should serve the user, not impose unbreakable barriers for +ideological reasons. + +QtWebEngine allows the usage of third-party non-free codecs and non-free +plugins. This browser does not prevent you from doing so. It's up to you how +you exercise your freedom. + +## Keyboard shortcuts +- F4 to focus the address bar and type an address; F2 show its menu +- Ctrl + Left/Right - go back/forward - Ctrl + T - new tab - Ctrl + X - close tab -- Ctrl + O - previous tab -- Ctrl + P - next tab +- Ctrl + O/P - previous tab/next tab +- Ctrl + Shift + O/P - move tab left/right +- Ctrl + B - show/hide bookmarks +- Ctrl + D - show/hide downloads -### Subwindows -A subwindows is a collection of tabs. It can be minimized, resized, moved, +## Subwindows +A subwindow is a multiple document interface window that contains a collection +of tabs and has a default profile. It can be minimized, resized, moved, maximized, tiled (F9) and cascaded (F10) within the main window. - Ctrl + G - new subwindow - Ctrl + W - close subwindow -### Other -- Ctrl + B - show/hide bookmarks -- Ctrl + D - show/hide downloads - ## Profiles A Profile is a collection of settings, policies, scripts, cookies, cache and history. Profiles can be used to isolate pages from each other. @@ -39,4 +55,5 @@ site would still be using the default off-the-record profile. ## Configuration files Configuration is saved in: -- on Linux, _~/.config/smolbote/smolbote.cfg_ +- on Linux, _~/.config/smolbote/_ + @@ -2,33 +2,30 @@ _It's yet another no-frills browser, poi!_ ### What is this and why should I care? -smolbote is a [keep-it-simple][kiss-principle] free software web browser. +smolbote is a [keep-it-simple][kiss-principle] free software web browser based +on Qt and QtWebEngine. -* do one thing and do it well -* just work out of the box -* tweakable: you can change all the things +This program is free software. You can use it as you see fit, study and modify +it, and share the program with or without modification, but providing the same +terms. -This program is free software. You can: - -* use it as you see fit; -* study the source code and change it to suit your needs; -* share the program; -* share your modifications. - -For more information, and a list of free software we depend on, see [LICENSE.md][repo-license]. +For more information, and a list of dependancies, see [LICENSE.md][repo-license]. ### What's up with the name?! It's a small boat. It says poi. ### Sounds dumb, how do I use it? -You make it yourself. Then you _poi_. +You make it yourself. -Do you know what makepkg is? Then take a look in linux/makepkg/. +It's a cmake-based project that depends on Qt and Boost, so cmake && make alone +should be sufficient to build from source. Some basic package scripts are +provided in the repository. -Do you know what a compiler is? Great, glance at the [build instructions](/smolbote/building.html). +Detailed [build instructions](/smolbote/building.html) also included. ### It doesn't work, what now? Drop me an email at _aqua at iserlohn dash fortress dot net_. [kiss-principle]: https://en.wikipedia.org/wiki/KISS_principle -[repo-license]: https://neueland.iserlohn-fortress.net/smolbote.hg/file/tip/LICENSE.md +[repo-license]: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote/src/branch/master/LICENSE.md + diff --git a/linux/man/smolbote.md b/linux/man/smolbote.md index 060b0da..b9ea181 100644 --- a/linux/man/smolbote.md +++ b/linux/man/smolbote.md @@ -66,6 +66,9 @@ 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/tools/gen_authors.rb b/tools/gen_authors.rb deleted file mode 100755 index 96f2679..0000000 --- a/tools/gen_authors.rb +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env ruby -# Generate list of authors from repository commits - -log = `hg log --template='{author}'%` - -authors = Hash.new(0) -log.split('%').each do |i| - authors[i] += 1 -end - -# sort list by descending number of commits -authors = authors.sort_by {|k, v| v}.reverse - -# print out authors -authors.each do |k, v| - #print " #{k} (#{v})\n" - print " #{k}\n" -end diff --git a/tools/list-authors.sh b/tools/list-authors.sh new file mode 100755 index 0000000..430d4a9 --- /dev/null +++ b/tools/list-authors.sh @@ -0,0 +1,12 @@ +#!/usr/bin/bash + +# git shortlog: +# -s (--summary): suppress commit description +# -n (--numbered): sort according to number of commits per author +# -e (--email): show email address of author + +# sed: +# replace (any spaces)(any numbers)(any spaces) with ' - ' +# this replaces the commit numbers and turns it into a bullet list +git shortlog -sne $1 | sed -e 's/^\s*[0-9]*\s*/ - /g' + |