diff --git a/.github/workflows/hugo.yaml b/.github/workflows/hugo.yaml index 94512d3..2004ef0 100644 --- a/.github/workflows/hugo.yaml +++ b/.github/workflows/hugo.yaml @@ -2,77 +2,82 @@ name: Deploy Hugo site to Pages on: - # Runs on pushes targeting the default branch - push: - branches: - - main + # Runs on pushes targeting the default branch + push: + branches: + - main - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: - contents: read - pages: write - id-token: write + contents: read + pages: write + id-token: write # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. concurrency: - group: "pages" - cancel-in-progress: false + group: "pages" + cancel-in-progress: false # Default to bash defaults: - run: - shell: bash + run: + shell: bash jobs: - # Build job - build: - runs-on: ubuntu-latest - env: - HUGO_VERSION: 0.111.3 - steps: - - name: Install Hugo CLI - run: | - wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ - && sudo dpkg -i ${{ runner.temp }}/hugo.deb - - name: Install Dart Sass Embedded - run: sudo snap install dart-sass-embedded - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - fetch-depth: 0 - - name: Setup Pages - id: pages - uses: actions/configure-pages@v3 - - name: Install Node.js dependencies - run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" - - name: Build with Hugo + # Build job + build: + runs-on: ubuntu-latest env: - # For maximum backward compatibility with Hugo modules - HUGO_ENVIRONMENT: production - HUGO_ENV: production - run: | - hugo \ - --gc \ - --minify \ - --baseURL "${{ steps.pages.outputs.base_url }}/" - - name: Upload artifact - uses: actions/upload-pages-artifact@v1 - with: - path: ./public + HUGO_VERSION: 0.141.0 + steps: + - name: Install Hugo CLI + run: | + wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ + && sudo dpkg -i ${{ runner.temp }}/hugo.deb - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v2 \ No newline at end of file + - name: Install Dart Sass Embedded + run: sudo snap install dart-sass-embedded + + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + + - name: Setup Pages + id: pages + uses: actions/configure-pages@v3 + + - name: Install Node.js dependencies + run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" + - name: Build with Hugo + env: + # For maximum backward compatibility with Hugo modules + HUGO_ENVIRONMENT: production + HUGO_ENV: production + run: | + hugo \ + --gc \ + --minify \ + --baseURL "${{ steps.pages.outputs.base_url }}/" + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./public + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore index 21e5f1c..dd9b7ee 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ utils/news2hugo/venv -.DS_Store \ No newline at end of file +public/ +.DS_Store diff --git a/Makefile b/Makefile index cdd35ca..a476ca2 100644 --- a/Makefile +++ b/Makefile @@ -18,4 +18,5 @@ cr-manpages: content/help/man-startfluxbox.md content/help/man-%.md: $(FLUXBOX_SRC)/doc/asciidoc/%.txt asciidoctor -b docbook -o - $^ |\ - pandoc -f docbook -t markdown_strict - -o $@ + pandoc -f docbook -t markdown_strict - -o - |\ + python3 utils/number-manpages.py $(notdir $@) > $@ diff --git a/README.md b/README.md new file mode 100644 index 0000000..0c9f029 --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# The Fluxbox.org Website + +This is the repository to host the fluxbox.org website. + +## Folders / Interesting Files + +* data/fluxbox-news.yaml - stores the published "news", transformed + into gohugo-posts via utils/news2hugo/news2hugo.py + +* Makefile - various helpers to embed manual-pages into the help/ section + + + +## Relevant Links + +* https://gohugo.io - the site generator +* https://gohugo.io/hosting-and-deployment/hosting-on-github/ - integrating it into + GH actions diff --git a/config.yml b/config.yml index fe41555..b257921 100644 --- a/config.yml +++ b/config.yml @@ -1,15 +1,15 @@ title: "fluxbox" subtitle: "The Window Manager" -copyright: "Copyright © 2001–2023, The Fluxbox Team." -baseURL: "/" -languageCode: 'en-us' -#theme: "hugo-book" -paginate: 5 +copyright: "Copyright © 2001–2025, The Fluxbox Team." +languageCode: "en-us" +theme: "hugo-book" +pagination: + pagerSize: 23 menu: - after: - - name: "Github" - url: "https://github.com/fluxbox/fluxbox" - weight: 100 + after: + - name: "Github" + url: "https://github.com/fluxbox/fluxbox" + weight: 100 # main: # - name: News # url: "/news" @@ -25,40 +25,39 @@ menu: # - name: Help # url: "/help" params: - # theme: book - BookSection: '*' - BookComments: false - # theme: terminal - fullWidthTheme: false - centerTheme: true - Toc: true - Logo: - logoText: "fluxbox" + # theme: book + BookSection: "*" + BookComments: false + fullWidthTheme: false + centerTheme: true + Toc: true + Logo: + logoText: "fluxbox" markup: - goldmark: - renderer: - unsafe: true + goldmark: + renderer: + unsafe: true privacy: - disqus: - disable: false - googleAnalytics: - anonymizeIP: false - disable: false - respectDoNotTrack: false - useSessionStorage: false - instagram: - disable: false - simple: false - twitter: - disable: false - enableDNT: false - simple: false - vimeo: - disable: false - enableDNT: false - simple: false - youtube: - disable: false - privacyEnhanced: false \ No newline at end of file + disqus: + disable: false + googleAnalytics: + anonymizeIP: false + disable: false + respectDoNotTrack: false + useSessionStorage: false + instagram: + disable: false + simple: false + twitter: + disable: false + enableDNT: false + simple: false + vimeo: + disable: false + enableDNT: false + simple: false + youtube: + disable: false + privacyEnhanced: false diff --git a/content/_index.md b/content/_index.md index 3f8f1c2..d5e3356 100644 --- a/content/_index.md +++ b/content/_index.md @@ -10,15 +10,16 @@ menu: ## What is it? -Fluxbox is a windowmanager for X that was based on the Blackbox 0.61.1 code. -It is very light on resources and easy to handle but yet full of features to -make an easy, and extremely fast, desktop experience. It is built using C++ -and licensed under the MIT-License +Fluxbox is a windowmanager for X that was based on the +[Blackbox 0.61.1](https://github.com/bbidulock/blackboxwm) code. It is very light on +resources and easy to handle but yet full of features to make an easy, and +extremely fast, desktop experience. It is built using C++ and licensed under the +MIT-License. ## What can it do? Fluxbox is supplied with lots of native options such as tabbing, grouping, a -long list of keycommands, Chainable Keygrabber, fully editable menu and much, +long list of keycommands, chainable Keygrabber, fully editable menu and much, much more. You might want to dive into it and learn more about fluxbox's features. @@ -31,12 +32,13 @@ setting up fluxbox correctly. ## What can it look like? To get an impression of what many fluxbox desktops look like and what those -applications are you can see, check out the screenshots-page. Although fluxbox -is "only" a windowmanager, there are typical applications that are frequently +applications are you can see, check out the [screenshots-page]({{< ref "/screenshots/" >}}). +Although fluxbox is "only" a windowmanager, there are typical applications that are frequently used amongst fluxbox users. ## How can I help? The best way to get in contact with the development team is to join the -official irc-channel and speak directly to them or to use the bug-tracker and -forums at sourceforge.net. For further information check out the help-site. \ No newline at end of file +official [irc-channel]() and speak directly to them or to use the bug-tracker and +forums at [sourceforge.net](https://sourceforge.net/projects/fluxbox/). +For further information check out the help-site. diff --git a/content/download/_index.md b/content/download/_index.md index ed30c62..af47359 100644 --- a/content/download/_index.md +++ b/content/download/_index.md @@ -15,10 +15,10 @@ of the improvements. The source tarballs for the latest release can be found here: -* 1.3.7 Source tarball (gz) -* 1.3.7 Source tarball (bz2) -* 1.3.7 Source tarball (xz) - +* [1.3.7 Source tarball (gz)](https://sourceforge.net/projects/fluxbox/files/fluxbox/1.3.7/fluxbox-1.3.7.tar.gz/download) +* [1.3.7 Source tarball (bz2)](https://sourceforge.net/projects/fluxbox/files/fluxbox/1.3.7/fluxbox-1.3.7.tar.bz2/download) +* [1.3.7 Source tarball (xz)](https://sourceforge.net/projects/fluxbox/files/fluxbox/1.3.7/fluxbox-1.3.7.tar.xz/download) + The source tarballs of all releases can be found on the fluxbox-project-page on sourceforge.net. @@ -59,4 +59,3 @@ repositories are: * klowner's site * deviantart * customize.org - diff --git a/content/help/_index.md b/content/help/_index.md index d665f29..de61027 100644 --- a/content/help/_index.md +++ b/content/help/_index.md @@ -10,30 +10,32 @@ bookCollapseSection: true # You need help, you have ideas? Sources for help have been established in many places. Besides the classic one -called google there are a lot of places dedicated to fluxbox directly. +called "Google" there are a lot of places dedicated to fluxbox directly. ## Manpages The following manpages are valid for the latest 1.3.7 release. -* The main manpage: fluxbox(1) -* Startup mechanism: startfluxbox(1) -* Setting up keys and mouse bindings: fluxbox-keys(5) -* How to create menus: fluxbox-menu(5) -* Applying actions based upon window properties: fluxbox-apps(5) -* Styling fluxbox: fluxbox-style(5) -* Simple remote control: fluxbox-remote(1) -* Describing fbrun: fbrun(1) -* Setting the wallpaper: fbsetbg(1) - +* The main manpage: [fluxbox(1)]({{< ref "man-fluxbox.md" >}}) +* Startup mechanism: [startfluxbox(1)]({{< ref "man-startfluxbox.md" >}}) +* Setting up keys and mouse bindings: [fluxbox-keys(5)]({{< ref "man-fluxbox-keys.md" >}}) +* How to create menus: [fluxbox-menu(5)]({{< ref "man-fluxbox-menu.md" >}}) +* Applying actions based upon window properties: [fluxbox-apps(5)]({{< ref "man-fluxbox-apps.md" >}}) +* Styling fluxbox: [fluxbox-style(5)]({{< ref "man-fluxbox-style.md" >}}) +* Simple remote control: [fluxbox-remote(1)]({{< ref "man-fluxbox-remote.md" >}}) +* Describing fbrun: [fbrun(1)]({{< ref "man-fbrun.md" >}}) +* Setting the wallpaper: [fbsetbg(1)]({{< ref "man-fbsetbg.md" >}}) + + ## IRC -Furthermore there are various irc-channels located on https://libera.chat +Furthermore there are various irc-channels located on [https://libera.chat](https://libera.chat) * #fluxbox - the official fluxbox irc-channel * #fluxbox-chitchat - the offical off-topic-channel @@ -42,16 +44,15 @@ Furthermore there are various irc-channels located on https://libera.chat There are three mailing-lists on sourceforge.net: -* fluxbox-users mailing-list -* fluxbox-devel mailing-list -* fluxbox-announce mailing-list +* [fluxbox-users mailing-list](https://sourceforge.net/p/fluxbox/mailman/fluxbox-users/) +* [fluxbox-devel mailing-list](https://sourceforge.net/p/fluxbox/mailman/fluxbox-devel/) +* [fluxbox-announce mailing-list](https://sourceforge.net/p/fluxbox/mailman/fluxbox-announce/) ## BUGS, FEATURES, FORUMS Also there are: -* fluxbox discussion group -* fluxbox developer discussion group -* bug-tracker -* feature-request-list -* patches-tracker \ No newline at end of file +* [fluxbox discussion group](https://groups.google.com/g/fluxbox) +* [fluxbox developer discussion group](https://groups.google.com/g/fluxbox-dev) +* [GH issues](https://github.com/fluxbox/fluxbox/issues) +* [SF bug-tracker](https://sourceforge.net/p/fluxbox/bugs/) diff --git a/content/help/man-client-patterns.md b/content/help/man-client-patterns.md index 52da04a..5acd8db 100644 --- a/content/help/man-client-patterns.md +++ b/content/help/man-client-patterns.md @@ -1,4 +1,7 @@ -A 'pattern' looks like this +--- +weight: 5 +--- +A 'pattern' looks like this **(**\['propertyname'\[!\]=\]'regexp'**)** …​ Match definitions are enclosed in parentheses **(**…​**)**, and if no @@ -14,92 +17,92 @@ condition - All specified patterns must match. You can use **=** to test for equality or **!=** to test for inequality. -The following values are accepted for 'propertyname' -**Name** +The following values are accepted for 'propertyname' +**Name** A string, corresponding to the CLASSNAME property (The first field of WM\_CLASS from the output of the **xprop(1)** utility). -**Class** +**Class** A string, corresponding to the CLASSCLASS property (The second field of WM\_CLASS from the output of the **xprop(1)** utility). -**Title** +**Title** A string, corresponding to the window title (WM\_NAME from **xprop(1)**). -**Role** +**Role** A string, corresponding to the ROLE property (WM\_WINDOW\_ROLE from **xprop(1)**). -**Transient** +**Transient** Either **yes** or **no**, depending on whether the window is transient (typically, a popup dialog) or not. -**Maximized** +**Maximized** Either **yes** or **no**, depending on whether the window is maximized or not. -**MaximizedHorizontal** +**MaximizedHorizontal** Either **yes** or **no**, depending on whether the window is maximized horizontally or not. -**MaximizedVertical** +**MaximizedVertical** Either **yes** or **no**, depending on whether the window is maximized vertically or not. -**Minimized** +**Minimized** Either **yes** or **no**, depending on whether the window is minimized (iconified) or not. -**Fullscreen** +**Fullscreen** Either **yes** or **no**, depending on whether the window is fullscreen or not. -**Shaded** +**Shaded** Either **yes** or **no**, depending on whether the window is shaded or not. -**Stuck** +**Stuck** Either **yes** or **no**, depending on whether the window is sticky (on all workspaces) or not. -**FocusHidden** +**FocusHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the focus list (or, the alt-tab list), or not. -**IconHidden** +**IconHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the icon list (or, the taskbar), or not. -**Urgent** +**Urgent** Either **yes** or **no**, depending on whether the window has the urgent hint set. -**Workspace** +**Workspace** A number corresponding to the workspace number to which the window is attached. The first workspace here is **0**. You may also use **\[current\]** to match the currently visible workspace. -**WorkspaceName** +**WorkspaceName** A string corresponding to the name of the workspace to which the window is attached. -**Head** +**Head** The number of the display head to which the window is attached. You may match this against the special value **\[mouse\]** which refers to the head where the mouse pointer currently resides. -**Layer** +**Layer** The string name of the window’s layer, which is one of **AboveDock**, **Dock**, **Top**, **Normal**, **Bottom**, **Desktop** -**Screen** +**Screen** The number of the currently used 'screen'. If the setup of the running xserver involves independent screens ('not Xinerama'), the $DISPLAY environment contains something like ':0.1' or ':1.0'. The part after the dot ('.') is the number of the screen. -**@XPROP** +**@XPROP** A string, corresponding to any xproperty (Use either the **xprop(1)** utility or the 'SetXProp' command to set a xproperty to a window) diff --git a/content/help/man-fluxbox-apps.md b/content/help/man-fluxbox-apps.md index 642c17c..05df78b 100644 --- a/content/help/man-fluxbox-apps.md +++ b/content/help/man-fluxbox-apps.md @@ -1,3 +1,6 @@ +--- +weight: 5 +--- # NAME fluxbox-apps - per-window attribute configuration for fluxbox(1) @@ -36,7 +39,7 @@ detailed below. **\[app\]** sections provide settings for individual application windows. -These sections begin with a line of the format +These sections begin with a line of the format **\[app\]** **(***pattern***)** **{***count***}** The *pattern* can be one or more patterns which match windows. For more @@ -50,7 +53,7 @@ default is to apply the settings to all matching windows. This opening **\[apps\]** line is followed by any number of settings for the application. See **SETTINGS** for more details. -Each of these sections ends with the single line +Each of these sections ends with the single line **\[end\]** # TRANSIENT SECTIONS @@ -67,7 +70,7 @@ remain above. Notably, open/save dialogs fall into this category. The primary purpose of **\[group\]** sections is to group windows together. All windows in a group will be tabbed together automatically. -These sections begin with a line of the format +These sections begin with a line of the format **\[group\]** **(***pattern***)** Where the *pattern* item is optional. If specified, this pattern must @@ -80,13 +83,13 @@ similar format to the **\[app\]** section detailed above in **APP SECTIONS**, but do not contain any settings and do not have an associated **\[end\]** line. -Like this +Like this **\[app\]** **(***pattern***)** This section may also contain settings that are applied to every window in the group. See the **SETTINGS** section for details. -As with **\[app\]** sections, each of these sections ends with the single line +As with **\[app\]** sections, each of these sections ends with the single line **\[end\]** # SETTINGS @@ -94,44 +97,44 @@ As with **\[app\]** sections, each of these sections ends with the single line These settings may be stored in the “apps” file. A settings line must appear inside either an **\[app\]** or **\[group\]** section. -The general format is +The general format is **\[***setting***\]** **{***value***}** All allowed values are described below, except for *bool* which can simply have the value **yes** or **no**, which enables or disables the associated setting, respectively. -**\[Workspace\]** {*number*} +**\[Workspace\]** {*number*} Forces the application to open on the *number* workspace specified. Workspaces are set by number, beginning with 0. -**\[Jump\]** {*bool*} +**\[Jump\]** {*bool*} Changes the active workspace to the remembered one when the application is opened. This is only useful when used in conjunction with *\[Workspace\]*. See **EXAMPLES**. -**\[Head\]** {*number*} +**\[Head\]** {*number*} Forces the application to open on the *number* head specified (Xinerama only). -**\[Layer\]** {*number*} +**\[Layer\]** {*number*} Specify the layer to open the window on (by number). Each layer has a number. The named ones are: 2-AboveDock, 4-Dock, 6-Top, 8-Normal, 10-Bottom, 12-Desktop. -**\[Dimensions\]** {*width\[%\]* *height\[%\]*} +**\[Dimensions\]** {*width\[%\]* *height\[%\]*} Opens the application with the specified *width* and *height*, in pixels. If the value is given in percent, then the window size will be based on the current screen’s size. -**\[IgnoreSizeHints\]** {*bool*} +**\[IgnoreSizeHints\]** {*bool*} Some Applications restrict the aspect ratio, minimum or maximum size of windows. Setting this key "yes" will make fluxbox ignore those constraints. **NOTICE** that bad client implementations may hard depend on these constraints (by blindly using their geometry in unsave calculations, causing div-by-zero segfaults etc.) -**\[Position\]** (*anchor*) {*X\[%\]* *Y\[%\]*} +**\[Position\]** (*anchor*) {*X\[%\]* *Y\[%\]*} Position the application at a particular spot. By default the upper-left corner is placed at screen coordinates (*X*,*Y*). If you specify an *anchor*, say BottomRight, then the lower-right corner of the window is @@ -139,27 +142,27 @@ positioned (*X*,*Y*) pixels from the lower-right corner of the screen. If the value is given in percent, then the coordinates will be based on the current screen’s size. -*anchor* may be set to one of: +*anchor* may be set to one of: **TopLeft Left BottomLeft Top Center Bottom TopRight Right BottomRight** -**\[Deco\]** {*value*} -Specify the decoration state. There are several predefined *value* sets: -**NORMAL** +**\[Deco\]** {*value*} +Specify the decoration state. There are several predefined *value* sets: +**NORMAL** Standard decorations -**NONE** +**NONE** No decorations -**BORDER** +**BORDER** Like NONE except keep the X window border -**TAB** +**TAB** Like BORDER except keep external tabs (if enabled) -**TINY** +**TINY** Titlebar with only an iconify button -**TOOL** +**TOOL** Titlebar only The *value* may also be a bitmask for finer-grained control. The bits @@ -167,79 +170,79 @@ are, from (1<<0) to (1<<10): Titlebar, Handle/Grips, Border, Iconify Button, Maximize Button, Close Button, Menu Button, Sticky Button, Shade Button, External Tabs, Focus Enabled. -**\[Shaded\]** {*bool*} +**\[Shaded\]** {*bool*} Whether the window is Shaded (rolled-up) or not. -**\[Tab\]** {*bool*} +**\[Tab\]** {*bool*} Whether the window has tabs enabled. -**\[FocusNewWindow\]** {*bool*} -**DEPRECATED!** Please use FocusProtection "Gain" or "Refuse" instead. +**\[FocusNewWindow\]** {*bool*} +**DEPRECATED!** Please use FocusProtection "Gain" or "Refuse" instead. If enabled, a new window will grab X focus as soon as it is opened. If disabled, a new window will not grab X focus as soon as it is opened. -**\[FocusProtection\]** {*value* \[,*value* \[, …​\]\] } -Comma separated list of focus controlling flags. *value* may be: -**None** +**\[FocusProtection\]** {*value* \[,*value* \[, …​\]\] } +Comma separated list of focus controlling flags. *value* may be: +**None** Regular behavior -**Gain** +**Gain** A new window will grab X focus as soon as it is opened. -**Refuse** +**Refuse** A new window will not grab X focus as soon as it is opened. -**Deny** +**Deny** The window is not allowed to claim focus while it is opened. -**Lock** +**Lock** No window is allowed to claim the focus while this window has it. Please notice that technically, windows may still obtain the focus which is then however reverted by the WM. In case you’re very unlucky, a key event may thus still go to the wrong window. -**\[FocusHidden\]** {*bool*} +**\[FocusHidden\]** {*bool*} If enabled, the window will not appear in *NextWindow*/*PrevWindow* lists. -**\[IconHidden\]** {*bool*} +**\[IconHidden\]** {*bool*} If enabled, the window will not appear in the icon area of the toolbar. -**\[Hidden\]** {*bool*} +**\[Hidden\]** {*bool*} A shortcut for setting both **FocusHidden** and **IconHidden** at the same time. -**\[Sticky\]** {*bool*} +**\[Sticky\]** {*bool*} Specify if an application should be sticky (shown on all workspaces) or not. -**\[Minimized\]** {*bool*} +**\[Minimized\]** {*bool*} Application should start minimized -**\[Maximized\]** {*value*} -Application should start maximized. *value* may be: -**yes** +**\[Maximized\]** {*value*} +Application should start maximized. *value* may be: +**yes** Fully maximized -**horz** +**horz** Horizontally maximized -**vert** +**vert** Vertically maximized -**no** +**no** Not maximized -**\[Fullscreen\]** {*bool*} +**\[Fullscreen\]** {*bool*} Application should start in fullscreen mode (fully maximized without any decorations). -**\[Close\]** {*bool*} +**\[Close\]** {*bool*} Save settings on close. By default, application settings are not updated when a window is closed. -**\[Alpha\]** {*value* \[*value*\]} +**\[Alpha\]** {*value* \[*value*\]} Set the alpha value for this window. If two values are given, they correspond to the focused and unfocused transparency, respectively. One number only will be used for both values. *value* is an integer between @@ -247,7 +250,7 @@ number only will be used for both values. *value* is an integer between # CLIENT PATTERNS -A *pattern* looks like this +A *pattern* looks like this **(**\[*propertyname*\[!\]=\]*regexp***)** …​ Match definitions are enclosed in parentheses **(**…​**)**, and if no @@ -263,92 +266,92 @@ condition - All specified patterns must match. You can use **=** to test for equality or **!=** to test for inequality. -The following values are accepted for *propertyname* -**Name** +The following values are accepted for *propertyname* +**Name** A string, corresponding to the CLASSNAME property (The first field of WM\_CLASS from the output of the **xprop(1)** utility). -**Class** +**Class** A string, corresponding to the CLASSCLASS property (The second field of WM\_CLASS from the output of the **xprop(1)** utility). -**Title** +**Title** A string, corresponding to the window title (WM\_NAME from **xprop(1)**). -**Role** +**Role** A string, corresponding to the ROLE property (WM\_WINDOW\_ROLE from **xprop(1)**). -**Transient** +**Transient** Either **yes** or **no**, depending on whether the window is transient (typically, a popup dialog) or not. -**Maximized** +**Maximized** Either **yes** or **no**, depending on whether the window is maximized or not. -**MaximizedHorizontal** +**MaximizedHorizontal** Either **yes** or **no**, depending on whether the window is maximized horizontally or not. -**MaximizedVertical** +**MaximizedVertical** Either **yes** or **no**, depending on whether the window is maximized vertically or not. -**Minimized** +**Minimized** Either **yes** or **no**, depending on whether the window is minimized (iconified) or not. -**Fullscreen** +**Fullscreen** Either **yes** or **no**, depending on whether the window is fullscreen or not. -**Shaded** +**Shaded** Either **yes** or **no**, depending on whether the window is shaded or not. -**Stuck** +**Stuck** Either **yes** or **no**, depending on whether the window is sticky (on all workspaces) or not. -**FocusHidden** +**FocusHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the focus list (or, the alt-tab list), or not. -**IconHidden** +**IconHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the icon list (or, the taskbar), or not. -**Urgent** +**Urgent** Either **yes** or **no**, depending on whether the window has the urgent hint set. -**Workspace** +**Workspace** A number corresponding to the workspace number to which the window is attached. The first workspace here is **0**. You may also use **\[current\]** to match the currently visible workspace. -**WorkspaceName** +**WorkspaceName** A string corresponding to the name of the workspace to which the window is attached. -**Head** +**Head** The number of the display head to which the window is attached. You may match this against the special value **\[mouse\]** which refers to the head where the mouse pointer currently resides. -**Layer** +**Layer** The string name of the window’s layer, which is one of **AboveDock**, **Dock**, **Top**, **Normal**, **Bottom**, **Desktop** -**Screen** +**Screen** The number of the currently used *screen*. If the setup of the running xserver involves independent screens (*not Xinerama*), the $DISPLAY environment contains something like *:0.1* or *:1.0*. The part after the dot (*.*) is the number of the screen. -**@XPROP** +**@XPROP** A string, corresponding to any xproperty (Use either the **xprop(1)** utility or the *SetXProp* command to set a xproperty to a window) @@ -372,12 +375,12 @@ layer than the currently focused window** # FILES -**~/.fluxbox/apps** +**~/.fluxbox/apps** This is the default location for the application settings. # RESOURCES -**session.appsFile:** *location* +**session.appsFile:** *location* This may be set to override the location of the application settings. # EXAMPLES diff --git a/content/help/man-fluxbox-keys.md b/content/help/man-fluxbox-keys.md index 453eb58..afdbe1c 100644 --- a/content/help/man-fluxbox-keys.md +++ b/content/help/man-fluxbox-keys.md @@ -1,3 +1,6 @@ +--- +weight: 3 +--- # NAME fluxbox-keys - keyboard shortcuts configuration for fluxbox(1) @@ -48,28 +51,28 @@ modifiers are most commonly used: where **Mod1** is the Alt key on the PC keyboard and **Mod4** is usually a key branded with a familiar company logo. -There are also some special modifiers that refer to mouse button events -**OnDesktop** +There are also some special modifiers that refer to mouse button events +**OnDesktop** The mouse cursor is over the desktop (root window), and not any window. -**OnToolbar** +**OnToolbar** The mouse cursor is over the toolbar (which is normally at the bottom of the screen). -**OnSlit** +**OnSlit** The mouse cursor is over the mystic slit (the thing that collects dock type windows). -**OnWindow** +**OnWindow** The mouse cursor is over a window. -**OnTitlebar** +**OnTitlebar** The mouse cursor is over a window’s titlebar. -**OnTab** +**OnTab** The mouse cursor is over a tab. -**Double** +**Double** Limits this action to double-clicks only. ## Combining Modifiers @@ -92,21 +95,21 @@ Commands can also be bound to mouse events (*N* denotes the number of the button, eg. *1* is the primary button, *4*/*5* are the wheel buttons): -**MouseN** +**MouseN** The mouse button *N* is pressed down and held. -**ClickN** +**ClickN** The mouse button *N* is clicked (pressed and released with no movement in between) -**MoveN** +**MoveN** The mouse button *N* is currently held, the bound action is triggered as often as the mouse moves. There are some special "keys" that let you bind events to non-keyboard events: -**ChangeWorkspace** +**ChangeWorkspace** Fires when the workspace changes. This can be used to change backgrounds or do anything else you like when you switch to a new workspace. See the **EXAMPLES** below for one idea. @@ -147,13 +150,13 @@ keybindings will be deactivated) until the keymode changes again. # COMMANDS -Some commands have multiple names which are shown below as +Some commands have multiple names which are shown below as CMD1 | CMD2 -Related commands have been grouped below as +Related commands have been grouped below as CMD1 / CMD2 -The commands are broken up into sections as follows +The commands are broken up into sections as follows - Mouse Commands - Window Commands @@ -172,14 +175,14 @@ These commands may only be bound to mouse buttons (plus modifiers), not keystrokes. In all cases, the action finishes when the mouse button is released. -**StartMoving** +**StartMoving** Start dragging to move the window. -**StartResizing** \[*corner*\] +**StartResizing** \[*corner*\] Start dragging to resize the window as if you had grabbed the window at the specified *corner*. -By default *corner* is **BottomRight**, but may be overridden with one of: +By default *corner* is **BottomRight**, but may be overridden with one of: **NearestCorner NearestEdge NearestCornerOrEdge Center TopLeft Top TopRight Left Right BottomLeft Bottom BottomRight** @@ -189,10 +192,10 @@ be specified to be the larger of one or two following numbers: *percent-size* is the percentage of half the window width or height. If no size is given, it defaults to 50 pixels and 30%. -**StartTabbing** +**StartTabbing** Start dragging to add this window to another’s tabgroup. -**ActivateTab** +**ActivateTab** Activates the tab underneath the mouse. ## Window Commands @@ -201,152 +204,152 @@ These commands ordinarily affect only the currently focused window. The **OnWindow** modifier and **ForEach** command may affect the window that is used. -**Minimize** | **MinimizeWindow** | **Iconify** +**Minimize** | **MinimizeWindow** | **Iconify** Minimize the current window, equivalent to the window button. -**Maximize** | **MaximizeWindow** +**Maximize** | **MaximizeWindow** Maximize the current window, equivalent to the window button. -**MaximizeHorizontal** / **MaximizeVertical** +**MaximizeHorizontal** / **MaximizeVertical** Maximize the current window in one direction only, leaving the other dimension unchanged. -**Fullscreen** +**Fullscreen** Resize the window’s content to fit the whole screen, without any window decoration. -**Raise** / **Lower** +**Raise** / **Lower** Reorder this window to the top or bottom of the window stack, within its current layer. See *fluxbox(1)* for a discussion of layers. -**RaiseLayer** / **LowerLayer** \[*offset*\] +**RaiseLayer** / **LowerLayer** \[*offset*\] Raise the window up to the layer above, or lower it to the layer below. See *fluxbox(1)* for a discussion of layers. -**SetLayer** *layer* +**SetLayer** *layer* Move the window to the specified layer. *layer* should be one of **AboveDock**, **Dock**, **Top**, **Normal**, **Bottom**, **Desktop**. See *fluxbox(1)* for a discussion of layers. -**Close** +**Close** Close the current window, equivalent to the window button. -**Kill** | **KillWindow** +**Kill** | **KillWindow** Close a window that’s not responding to **Close**, like using **xkill(1)**. -**Shade** | **ShadeWindow** +**Shade** | **ShadeWindow** Toggle the **shaded** state of the current window, equivalent to the window button. A **shaded** window appears as only the title bar. -**ShadeOn** / **ShadeOff** +**ShadeOn** / **ShadeOff** Set the **shaded** state of the window to On / Off. -**Stick** | **StickWindow** +**Stick** | **StickWindow** Toggle the **sticky** state of the current window, equivalent to the window button. A **sticky** window is visible on all workspaces. -**SetDecor** *decor* +**SetDecor** *decor* Sets which window decorations will be shown. *decor* has the same format as the “\[Deco\]” parameter in the apps file. See *fluxbox-apps(5)* for more info. -**ToggleDecor** +**ToggleDecor** Toggles the presence of the window decorations (title bar, window buttons, and resize bar). -**NextTab** / **PrevTab** +**NextTab** / **PrevTab** Cycle to the next / previous tab in the current tab group. -**Tab** *number* +**Tab** *number* Cycle to the given tab in the current tab group, where **1** is the first tab. A negative *number* counts from the end of the tab group (**-1** is the last tab, **-2** is the next-to-last, etc.). -**MoveTabRight** / **MoveTabLeft** +**MoveTabRight** / **MoveTabLeft** Reorder the tabs in the current tab group, swapping the current tab with the one to the right / left. -**DetachClient** +**DetachClient** Remove the current tab from the tab group, placing it in its own window. -**ResizeTo** *width\[%\]* *height\[%\]* +**ResizeTo** *width\[%\]* *height\[%\]* Resizes the window to the given width and height. If the value is given in percent, then the window size will be based on the current screen’s size. -**Resize** *delta-width\[%\]* *delta-height\[%\]* +**Resize** *delta-width\[%\]* *delta-height\[%\]* Resizes the window relative to the current width and height. If the value is given in percent, then the window size will be based on the current window’s size. -**ResizeHorizontal** *delta-width\[%\]* / **ResizeVertical** *delta-height\[%\]* +**ResizeHorizontal** *delta-width\[%\]* / **ResizeVertical** *delta-height\[%\]* Resizes the window in one dimension only. If the value is given in percent, then the window size will be based on the current window’s size. -**MoveTo** *x\[%\]* *y\[%\]* \[*anchor*\] +**MoveTo** *x\[%\]* *y\[%\]* \[*anchor*\] Moves the window to the given coordinates, given in pixels or relatively to the current screen size if % is specified after the value. If either *x* or *y* is set to **\\**\*, that coordinate will be ignored, and the movement will only take place in one dimension. -The default *anchor* is the upper left corner, but this may be overridden with one of: +The default *anchor* is the upper left corner, but this may be overridden with one of: **TopLeft Left BottomLeft Top Center Bottom TopRight Right BottomRight** -**Move** *delta-x* *delta-y* +**Move** *delta-x* *delta-y* Moves the window relative to its current position. Positive numbers refer to right and down, and negative to left and up, respectively. -**MoveRight** *d* / **MoveLeft** *d* / **MoveUp** *d* / **MoveDown** *d* +**MoveRight** *d* / **MoveLeft** *d* / **MoveUp** *d* / **MoveDown** *d* Moves the window relative to its current position by the number of pixels specified in *d*. If the number is negative, it moves in the opposite direction. -**TakeToWorkspace** *workspace* / **SendToWorkspace** *workspace* +**TakeToWorkspace** *workspace* / **SendToWorkspace** *workspace* Sends you along with the current window to the selected workspace. SendToWorkspace just sends the window. The first workspace is number **1**, not 0. -**TakeToNextWorkspace** \[*offset*\] / **TakeToPrevWorkspace** \[*offset*\] +**TakeToNextWorkspace** \[*offset*\] / **TakeToPrevWorkspace** \[*offset*\] Sends you along with the current window to the next or previous workspace. If you set *offset* to a value greater than the default of **1**, it will move you that number of workspaces ahead or behind. If you go beyond the end of the currently defined workspaces, it will wrap around to the other end automatically. -**SendToNextWorkspace** \[*offset*\] / **SendToPrevWorkspace** \[*offset*\] +**SendToNextWorkspace** \[*offset*\] / **SendToPrevWorkspace** \[*offset*\] Identical to the "TakeTo…​" commands, but again this sends only the window, and does not move you away from your current workspace. -**SetAlpha** \[*alpha* \[*unfocused-alpha*\]\] +**SetAlpha** \[*alpha* \[*unfocused-alpha*\]\] Sets the alpha value of a window. Putting a **+** or **-** in front of the value adds or subtracts from the current value. A plain integer sets the value explicitly. -no arguments +no arguments Resets both focused and unfocused settings to default opacity. -one argument +one argument Changes both focused and unfocused alpha settings. -two arguments +two arguments First value becomes the focused alpha, second becomes the unfocused alpha value. -**SetHead** *number* +**SetHead** *number* Moves the window to the given display head. Only available when fluxbox has been compiled with Xinerama support. -**SendToNextHead** \[*offset*\] / **SendToPrevHead** \[*offset*\] +**SendToNextHead** \[*offset*\] / **SendToPrevHead** \[*offset*\] Sends the current window to the next/previous display head. If you specify an *offset* greater than **1**, it will move the window that many heads. If this takes the window beyond the total number of heads, it will wrap around to the beginning. -**SetXProp** *PROP=value* +**SetXProp** *PROP=value* Sets the xproperty *PROP* of the current window to *value*. Delete the content of *PROP* by using *PROP=*. @@ -355,10 +358,10 @@ content of *PROP* by using *PROP=*. These commands affect the entire workspace (or "desktop" as it is sometimes called). -**AddWorkspace** / **RemoveLastWorkspace** +**AddWorkspace** / **RemoveLastWorkspace** Adds or removes a workspace from the end of the list of workspaces. -**NextWorkspace** \[*n*\] / **PrevWorkspace** \[*n*\] / **RightWorkspace** \[*n*\] / **LeftWorkspace** \[*n*\] +**NextWorkspace** \[*n*\] / **PrevWorkspace** \[*n*\] / **RightWorkspace** \[*n*\] / **LeftWorkspace** \[*n*\] Switch to the Next / Previous workspace. All versions accept an offset value *n*, which defaults to **1** and refers to the number of workspaces to move at one time. {Next,Prev}Workspace wrap around when @@ -366,18 +369,18 @@ going past the last workspace, whereas {Right,Left}Workspace do not. The special offset "0" will toggle the former workspace for Next- and PrevWorkspace -**Workspace** *number* +**Workspace** *number* Jumps to the given workspace *number*. The first workspace is **1**. -**NextWindow** \[{*options*}\] \[*pattern*\] / **PrevWindow** \[{*options*}\] \[*pattern*\] +**NextWindow** \[{*options*}\] \[*pattern*\] / **PrevWindow** \[{*options*}\] \[*pattern*\] Focuses the next / previous window in the focus list. -*options* is one or more of the following, space delimited: -**static** +*options* is one or more of the following, space delimited: +**static** Instead of moving in order of most-recent focus, move in order of when the window was opened (or, the order shown in the iconbar). -**groups** +**groups** Only include the current tab in windows with multiple tabs. If *pattern* arguments are supplied, only windows that match all the @@ -392,28 +395,28 @@ the "Tab" key a few times), fluxbox will lower the window again when you move on to the next one. This allows you to preview the windows in order, but does not change the order in doing so. -**NextGroup** \[{*options*}\] \[*pattern*\] / **PrevGroup** \[{*options*}\] \[*pattern*\] +**NextGroup** \[{*options*}\] \[*pattern*\] / **PrevGroup** \[{*options*}\] \[*pattern*\] Equivalent to NextWindow / PrevWindow above, but with the **groups** option forced on. -**GotoWindow** *number* \[{*options*}\] \[*pattern*\] +**GotoWindow** *number* \[{*options*}\] \[*pattern*\] Focuses and activates the window at position *number* in the focus list. The *options* and *pattern* arguments have the same meaning as **NextWindow** above. -**Activate** \[*pattern*\] | **Focus** \[*pattern*\] +**Activate** \[*pattern*\] | **Focus** \[*pattern*\] With *pattern*, this is an alias for **GoToWindow** 1 *pattern*. Without, this behaves like a window command, so that OnWindow events can change the focused window. -**Attach** *pattern* +**Attach** *pattern* Combines all windows that match the *pattern* into a single tab group. See **CLIENT PATTERNS** for more about the *pattern* arguments. -**FocusLeft** / **FocusRight** / **FocusUp** / **FocusDown** +**FocusLeft** / **FocusRight** / **FocusUp** / **FocusDown** Focus to the next window which is located in the direction specified. -**ArrangeWindows** *pattern* / **ArrangeWindowsVertical** *pattern* / **ArrangeWindowsHorizontal** *pattern* +**ArrangeWindows** *pattern* / **ArrangeWindowsVertical** *pattern* / **ArrangeWindowsHorizontal** *pattern* Tries to arrange all windows on the current workspace so that they overlap the least amount possible. **ArrangeWindowsVertical** prefers vertical splits (windows side by side), whereas @@ -421,7 +424,7 @@ vertical splits (windows side by side), whereas of eachother). See **CLIENT PATTERNS** for more about the *pattern* arguments. -**ArrangeWindowsStackLeft** *pattern* / **ArrangeWindowsStackRight** *pattern* +**ArrangeWindowsStackLeft** *pattern* / **ArrangeWindowsStackRight** *pattern* Similar to **ArrangeWindows**, these commands arrange windows on the current workspace. The currently focussed window is used as the *main* window, and will fill half the screen, while the other windows are tiled @@ -432,7 +435,7 @@ hand side of the screen. **ArrangeWindowsStackRight** puts the main window on the LEFT hand side of the screen, and the tiled windows are on the RIGHT hand side of the screen. -**ArrangeWindowsStackTop** *pattern* / **ArrangeWindowsStackBottom** *pattern* +**ArrangeWindowsStackTop** *pattern* / **ArrangeWindowsStackBottom** *pattern* Behaves just like **ArrangeWindowsStackLeft** and **ArrangeWindowsStackRight**. **ArrangeWindowsStackBottom** places the main window on the TOP half of the screen, and the tiled windows on the @@ -440,57 +443,57 @@ bottom half of the screen. **ArrangeWindowsStackTop** places the main window on the BOTTOM half of the screen and the tiled windows on the top half of the screen. -**Unclutter** *pattern* +**Unclutter** *pattern* Arrange all matching windows to reduce the overall window overlap as much as possible. Windows are not resized. See **CLIENT PATTERNS** for more about the *pattern* arguments. -**ShowDesktop** +**ShowDesktop** Minimizes all windows on the current workspace. If they are already all minimized, then it restores them. -**ToggleSlitAbove** +**ToggleSlitAbove** Toggles the slit between its regular and the AboveDock layer -**ToggleSlitHidden** +**ToggleSlitHidden** Toggles the slit’s autohiding state (autohide doesn’t have to be enabled) -**ToggleToolbarAbove** +**ToggleToolbarAbove** Toggles the toolbar between its regular and the AboveDock layer -**ToggleToolbarHidden** +**ToggleToolbarHidden** Toggles the toolbar’s autohiding state (autohide doesn’t have to be enabled) -**Deiconify** *mode* *destination* +**Deiconify** *mode* *destination* Deiconifies windows (or, restores from a minimized state). -Where *mode* may be one of: -**All** +Where *mode* may be one of: +**All** All icons across all workspaces. -**AllWorkspace** +**AllWorkspace** All icons on the current workspace. -**Last** +**Last** The last icon across all workspaces. -**LastWorkspace** (default) +**LastWorkspace** (default) The last icon on the current workspace. -And *destination* may be one of: -**Current** (default) +And *destination* may be one of: +**Current** (default) Deiconify to the current workspace. -**OriginQuiet** +**OriginQuiet** Deiconify to the window’s original workspace, but does so in the background, without moving you there. -**SetWorkspaceName** *name* / **SetWorkspaceNameDialog** +**SetWorkspaceName** *name* / **SetWorkspaceNameDialog** Sets the name of the current workspace. -**CloseAllWindows** +**CloseAllWindows** Closes all windows on all desktops. ## Menu Commands @@ -498,59 +501,59 @@ Closes all windows on all desktops. These commands open or close fluxbox popup menus. For more information on what these menus contain or how to configure them, see *fluxbox(1)*. -**RootMenu** +**RootMenu** Opens the root menu. See **ROOT MENU** in **fluxbox-menu(5)** for details. -**WorkspaceMenu** +**WorkspaceMenu** Opens a menu showing all workspaces and windows. See **Workspace Menu** in **fluxbox(1)** for details. -**WindowMenu** +**WindowMenu** Opens a menu containing actions for the current window. See **WINDOW MENU** in **fluxbox-menu(5)** for details. -**ClientMenu** \[*pattern*\] +**ClientMenu** \[*pattern*\] Opens a menu that contains all windows. If you specify a *pattern*, only matching windows will be in the menu. Selecting a window will jump to that workspace and raise the window. See **CLIENT PATTERNS** below for more details on the *pattern* argument. -**CustomMenu** *path* +**CustomMenu** *path* Opens a custom menu file. This *path* must be a valid menu file in the same format as detailed by the **ROOT MENU** section of **fluxbox-menu(5)**. -**HideMenus** +**HideMenus** Hide all fluxbox popup menus. ## Window Manager Commands These commands affect the Window Manager, or more than one window. -**Restart** \[*path*\] +**Restart** \[*path*\] Restarts fluxbox. This does not close any running applications. If the optional *path* is a path to an executable window manager, that manager is started in place of fluxbox. -**Quit** | **Exit** +**Quit** | **Exit** Exits fluxbox. This will normally cause X to stop as well and terminate all existing applications, returning you to the login manager or console. -**Reconfig** | **Reconfigure** +**Reconfig** | **Reconfigure** Reloads all fluxbox configuration files including the keys file, apps file, and init file, if they have changed. -**SetStyle** *path* +**SetStyle** *path* Sets the current style to that given in *path*, which must be the full path to a fluxbox style. -**ReloadStyle** +**ReloadStyle** Reloads only the current style. Useful after editing a style which is currently in use. -**ExecCommand** *args …​* | **Exec** *args …​* | **Execute** *args …​* +**ExecCommand** *args …​* | **Exec** *args …​* | **Execute** *args …​* Probably the most-used binding of all. Passes all the arguments to your **$SHELL** (or /bin/sh if $SHELL is not set). You can use this to launch applications, run shell scripts, etc. Since all arguments are passed @@ -561,15 +564,15 @@ variables that were set before fluxbox started (such as in **SetEnv** commands, below. See **fluxbox(1)** for more details on the **ENVIRONMENT** and **\\/.fluxbox/startup** file. -**CommandDialog** +**CommandDialog** Pops up a dialog box that lets you type in any of these commands manually. -**SetEnv** *name* *value* | **Export** *name*=*value* +**SetEnv** *name* *value* | **Export** *name*=*value* Sets an environment variable in Fluxbox. It will be passed to any applications spawned by any future ExecCommand commands. -**SetResourceValue** *resourcename* *resourcevalue* | **SetResourceValueDialog** +**SetResourceValue** *resourcename* *resourcevalue* | **SetResourceValueDialog** Sets a fluxbox resource value, which are normally stored in the init file. See *fluxbox(1)* for more details on available resources and allowed values. @@ -578,37 +581,37 @@ allowed values. These commands have special meanings or behaviors. -**MacroCmd** {*command1*} {*command2*} {*command3*} *…​* +**MacroCmd** {*command1*} {*command2*} {*command3*} *…​* Allows you to execute more than one command with one keybinding. The commands will be executed in series. The **{** **}** brackets are literally required, as in the following example: MacroCmd {MoveTo 0 0} {ResizeTo 1280 800} -**Delay** {*command*} \[*microseconds*\] +**Delay** {*command*} \[*microseconds*\] Delays running *command* for the given amount of time. If the same key binding is activated again, the timer will be restarted. -**ToggleCmd** {*command1*} {*command2*} *…​* +**ToggleCmd** {*command1*} {*command2*} *…​* Alternates between the commands. On the first press of the bound key, runs *command1*. On the next press, runs *command2*. -**BindKey** *keybinding* +**BindKey** *keybinding* Adds the given *keybinding* (which must be a valid key binding as defined in the DESCRIPTION section above) to your keys file. -**KeyMode** *keymode* \[*return-keybinding*\] +**KeyMode** *keymode* \[*return-keybinding*\] Activates the named *keymode* (or, all key binding lines prefaced with the same *keymode*:) and deactivates all others until the *return-keybinding* (by default **Escape**) is pressed. The default keymode is named *default*. -**ForEach** {*command*} \[{*condition*}\] | **Map** {*command*} \[{*condition*}\] +**ForEach** {*command*} \[{*condition*}\] | **Map** {*command*} \[{*condition*}\] Runs the given *command* (normally one from the **Window Commands** section above) on each window. If you specify a *condition* (See **Conditions**, below) the action will be limited to matching windows. -**If** {*condition*} {*then-command*} \[{*else-command*}\] | **Cond** {*condition*} {*then-command*} \[{*else-command*}\] +**If** {*condition*} {*then-command*} \[{*else-command*}\] | **Cond** {*condition*} {*then-command*} \[{*else-command*}\] If the *condition* command returns **true**, then run the *then-command*, otherwise run the optional *else-command*. See **Conditions** below for more information on the *condition* argument. @@ -618,7 +621,7 @@ If the *condition* command returns **true**, then run the These special commands are used to match windows conditionally. They are commonly used by the **If** and **ForEach** command. -**Matches** *pattern* +**Matches** *pattern* Returns **true** if the current window matches the given *pattern*. See **CLIENT PATTERNS** below for details on the *pattern* syntax. @@ -628,24 +631,24 @@ the window you clicked, not the currently focused window. To check other windows besides the currently focused one, see the **Every** and **Some** conditions below. -**Some** *condition* +**Some** *condition* Returns **true** if any window on any workspace (not just the currently focused one) matches the *condition*. -**Every** *condition* +**Every** *condition* Returns **true** if every window on every workspace (not just the current one) matches the *condition*. -**Not** *condition* +**Not** *condition* Returns **true** if *condition* returns **false**, and vice-versa. -**And** {*condition1*} {*condition2*} \[{*condition3*} …​\] +**And** {*condition1*} {*condition2*} \[{*condition3*} …​\] Returns **true** if and only if all given conditions return **true**. -**Or** {*condition1*} {*condition2*} \[{*condition3*} …​\] +**Or** {*condition1*} {*condition2*} \[{*condition3*} …​\] Returns **true** if any of the listed conditions return **true**. -**Xor** {*condition1*} {*condition2*} \[{*condition3*} …​\] +**Xor** {*condition1*} {*condition2*} \[{*condition3*} …​\] Returns the boolean **xor** of the truth values for all conditions listed. @@ -655,7 +658,7 @@ Many of the more advanced commands take a *pattern* argument, which allows you to direct the action at a specific window or set of windows which match the properties specified in the *pattern*. -A *pattern* looks like this +A *pattern* looks like this **(**\[*propertyname*\[!\]=\]*regexp***)** …​ Match definitions are enclosed in parentheses **(**…​**)**, and if no @@ -671,92 +674,92 @@ condition - All specified patterns must match. You can use **=** to test for equality or **!=** to test for inequality. -The following values are accepted for *propertyname* -**Name** +The following values are accepted for *propertyname* +**Name** A string, corresponding to the CLASSNAME property (The first field of WM\_CLASS from the output of the **xprop(1)** utility). -**Class** +**Class** A string, corresponding to the CLASSCLASS property (The second field of WM\_CLASS from the output of the **xprop(1)** utility). -**Title** +**Title** A string, corresponding to the window title (WM\_NAME from **xprop(1)**). -**Role** +**Role** A string, corresponding to the ROLE property (WM\_WINDOW\_ROLE from **xprop(1)**). -**Transient** +**Transient** Either **yes** or **no**, depending on whether the window is transient (typically, a popup dialog) or not. -**Maximized** +**Maximized** Either **yes** or **no**, depending on whether the window is maximized or not. -**MaximizedHorizontal** +**MaximizedHorizontal** Either **yes** or **no**, depending on whether the window is maximized horizontally or not. -**MaximizedVertical** +**MaximizedVertical** Either **yes** or **no**, depending on whether the window is maximized vertically or not. -**Minimized** +**Minimized** Either **yes** or **no**, depending on whether the window is minimized (iconified) or not. -**Fullscreen** +**Fullscreen** Either **yes** or **no**, depending on whether the window is fullscreen or not. -**Shaded** +**Shaded** Either **yes** or **no**, depending on whether the window is shaded or not. -**Stuck** +**Stuck** Either **yes** or **no**, depending on whether the window is sticky (on all workspaces) or not. -**FocusHidden** +**FocusHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the focus list (or, the alt-tab list), or not. -**IconHidden** +**IconHidden** Either **yes** or **no**, depending on whether the window has asked to be left off the icon list (or, the taskbar), or not. -**Urgent** +**Urgent** Either **yes** or **no**, depending on whether the window has the urgent hint set. -**Workspace** +**Workspace** A number corresponding to the workspace number to which the window is attached. The first workspace here is **0**. You may also use **\[current\]** to match the currently visible workspace. -**WorkspaceName** +**WorkspaceName** A string corresponding to the name of the workspace to which the window is attached. -**Head** +**Head** The number of the display head to which the window is attached. You may match this against the special value **\[mouse\]** which refers to the head where the mouse pointer currently resides. -**Layer** +**Layer** The string name of the window’s layer, which is one of **AboveDock**, **Dock**, **Top**, **Normal**, **Bottom**, **Desktop** -**Screen** +**Screen** The number of the currently used *screen*. If the setup of the running xserver involves independent screens (*not Xinerama*), the $DISPLAY environment contains something like *:0.1* or *:1.0*. The part after the dot (*.*) is the number of the screen. -**@XPROP** +**@XPROP** A string, corresponding to any xproperty (Use either the **xprop(1)** utility or the *SetXProp* command to set a xproperty to a window) @@ -780,18 +783,18 @@ layer than the currently focused window** # FILES -**~/.fluxbox/keys** +**~/.fluxbox/keys** This is the default location for the keybinding definitions. -**/usr/X11R6/include/X11/keysymdef.h** +**/usr/X11R6/include/X11/keysymdef.h** X key names are in this file. -**/usr/X11R6/lib/X11/XKeysymDB** +**/usr/X11R6/lib/X11/XKeysymDB** X key names are also in this file. # RESOURCES -**session.keyFile:** *location* +**session.keyFile:** *location* This may be set to override the location of the keybinding definitions. # ENVIRONMENT diff --git a/content/help/man-fluxbox-menu.md b/content/help/man-fluxbox-menu.md index 9afac92..0153d42 100644 --- a/content/help/man-fluxbox-menu.md +++ b/content/help/man-fluxbox-menu.md @@ -1,3 +1,6 @@ +--- +weight: 4 +--- # NAME fluxbox-menu - fluxbox(1) menu syntax @@ -52,7 +55,7 @@ changes should be taken into account the next time you open the menu. The root menu must begin with a **\[begin\]** tag and end with an **\[end\]** tag, and every tag must be on its own line. -There are up to four fields in a menu line. They are of the form +There are up to four fields in a menu line. They are of the form \[*tag*\] (*label*) {*command*} <'icon'> The <'icon'> field is always optional when shown below. If @@ -70,13 +73,13 @@ You may enter labels, commands, and icons using characters from any ## Structural Tags -**\[begin\]** (*title*) +**\[begin\]** (*title*) This tells fluxbox to start parsing the menu file. This tag is required for fluxbox to read your menu file. If it cannot find it, the system default menu is used in its place. The *title* appears at the top of the menu. And **\[end\]** tag is required to end the menu. -**\[submenu\]** (*label*) {*title*} <'icon'> +**\[submenu\]** (*label*) {*title*} <'icon'> This tells fluxbox to create and parse a new menu, which is inserted as a submenu into the parent menu. These menus are parsed recursively, so there is no limit to the number of levels or nested submenus you can @@ -85,33 +88,33 @@ the *title* is shown at the top of the submenu. If omitted, the *title* will be the same as the *label*. An **\[end\]** tag is required to end the submenu. -**\[end\]** +**\[end\]** This tells fluxbox that it is at the end of a menu. This can either be a **\[submenu\]** or the **\[begin\]** tag of the main root menu. There must be at least one of these tags in your menu to correspond to the required **\[begin\]** tag, and one for each **\[submenu\]**. -**\[encoding\]** {*encoding*} +**\[encoding\]** {*encoding*} This begins an **\[encoding\]** section and specifies the string encoding of all strings until the matching **\[endencoding\]** tag. For a list of available encodings on your system, run **iconv -l**. -**\[endencoding\]** +**\[endencoding\]** This ends an **\[encoding\]** section. -**\[include\]** (*path*) +**\[include\]** (*path*) Parses the file specified by filename inline with the current menu. The *path* can be the full path to a file or it can begin with **~/**, which will be expanded into your home directory. If *path* is a directory, then all files in that directory are included. -**\[separator\]** +**\[separator\]** This will create a nice separation line. Useful for splitting up sections in a “pretty” way. The optional *comment* is not displayed, but can be useful for internal documentation or script parsing of menu files. -**\[nop\]** (*label*) <'icon'> +**\[nop\]** (*label*) <'icon'> Insert a non-operational item into the current menu. This is much like **\[separator\]**, but instead of a line, it inserts a *label*. This can be used to help format the menu into blocks or sections if so desired. @@ -119,7 +122,7 @@ The *label* is optional, and if omitted a blank item will be inserted. ## Applications -**\[exec\]** (*label*) {*command…​*} <'icon'> +**\[exec\]** (*label*) {*command…​*} <'icon'> Inserts a command item into the menu. When you select the menu item from the menu, fluxbox runs *command…​* in your **$SHELL** (or /bin/sh if $SHELL is not set). You can use this to launch applications, run shell @@ -130,40 +133,40 @@ fluxbox started (such as in ~/.fluxbox/startup). ## Fluxbox Functions -**\[config\]** (*label*) <'icon'> +**\[config\]** (*label*) <'icon'> Inserts a fluxbox native submenu item, containing numerous configuration options concerning window placement, focus style, window moving style, etc. See **Configuration Menu** in **fluxbox(1)** for details. -**\[reconfig\]** (*label*) <'icon'> +**\[reconfig\]** (*label*) <'icon'> When selected this item re-reads the current style and menu files and applies any changes. This is useful for creating a new style or theme, as you don’t have to constantly restart fluxbox every time you save your style. However, fluxbox automatically rereads the menu whenever it changes. -**\[restart\]** (*label*) {*command*} <'icon'> +**\[restart\]** (*label*) {*command*} <'icon'> This tells fluxbox to restart. If *command* is supplied, it shuts down and runs the command (which is commonly the name of another window manager). If *command* is omitted, fluxbox restarts itself. -**\[exit\]** (*label*) <'icon'> +**\[exit\]** (*label*) <'icon'> Inserts an item that shuts down and exits fluxbox. Any open windows are reparented to the root window before fluxbox exits. -**\[style\]** (*label*) {*filename*} <'icon'> +**\[style\]** (*label*) {*filename*} <'icon'> This tells fluxbox to insert an item that, when selected, reads style file named filename and apply the new textures, colors and fonts to the current running session. -**\[stylesmenu\]** (*directory*) <'icon'> +**\[stylesmenu\]** (*directory*) <'icon'> Reads all filenames from the specified directory, assuming that they are all valid style files, and creates inline menu items in the current menu for every filename, that, when selected by the user will apply the selected style file to the current session. The labels that are created in the menu are the filenames of the style files. -**\[stylesdir\]** (*label*) {*directory*} <'icon'> +**\[stylesdir\]** (*label*) {*directory*} <'icon'> Creates a submenu entry with *label* (that is also the title of the new submenu), and inserts in that submenu all filenames in the specified *directory*, assuming that they are all valid style files (directories @@ -171,15 +174,15 @@ are ignored) in the same way as the **\[stylesdir\]** command does. Both **\[stylesdir\]** and **\[stylesmenu\]** commands make it possible to install style files without editing your init file. -**\[wallpapers\]** (*directory*) {*command*} <'icon'> +**\[wallpapers\]** (*directory*) {*command*} <'icon'> This inserts a menu item to set the wallpaper for each file in the given directory. The *command* is optional, and defaults to **fbsetbg**. -**\[workspaces\]** (*label*) <'icon'> +**\[workspaces\]** (*label*) <'icon'> This tells fluxbox to insert a link to the workspaces menu directly into your menu. See **Workspace Menu** in **fluxbox(1)** for details. -**\[***command***\]** (*label*) <'icon'> +**\[***command***\]** (*label*) <'icon'> In addition to the commands above, any legal keys file *command* may be used as a menu item. See **fluxbox-keys(5)** for more information. @@ -193,16 +196,16 @@ each must be on a line by itself with no labels, commands, or icons. The additonal available tags in this menu are: -**\[shade\]** +**\[shade\]** Provides a menu item to shade or unshade (or, roll-up) the window. This is equivalent to the shade titlebar button. -**\[stick\]** +**\[stick\]** Provides a menu item to stick or unstick the window. Stuck windows are displayed on all workspaces. This is equivalent to the stick titlebar button. -**\[maximize\]** +**\[maximize\]** Provides a menu item to maximize or unmaximize the window, equivalent to the maximize titlebar button. The button with which you click alters the behaviour of this item as follows: @@ -213,66 +216,66 @@ behaviour of this item as follows: - Button 3 (Un)Maximize window horizontally. -**\[iconify\]** +**\[iconify\]** Provides a menu item to iconify (or, minimize) the window, equivalent to the iconify titlebar button. -**\[close\]** +**\[close\]** Closes the window gracefully, equivalent to the titlebar button. -**\[kill\]** +**\[kill\]** Kills the window’s process, like **xkill(1)**. -**\[raise\]** +**\[raise\]** Raise the window to the top of the stack within its layer. -**\[lower\]** +**\[lower\]** Lower the window to the bottom of the stack within its layer. -**\[settitledialog\]** +**\[settitledialog\]** Opens a dialog which can be used to set the window’s title. Some applications may re-set their own title from time-to-time, wiping out your setting. -**\[sendto\]** +**\[sendto\]** Sends the window to a different workspace. When you select the workspace with a middle-click, fluxbox will also change to the new workspace. A regular click only sends the window. -**\[layer\]** +**\[layer\]** Adds a “Layer…​” submenu which lets you change the layer of this window. -**\[alpha\]** +**\[alpha\]** Adds a “Transparency…​” submenu which lets you change the focused and unfocused transparency of this window. -**\[extramenus\]** +**\[extramenus\]** Adds the “Remember…​” menu item, which allows you to specify which settings should be stored in the “apps” file (See **fluxbox-apps(5)** for more details). -**\[separator\]** +**\[separator\]** Adds a horizontal line to the menu # FILES -**~/.fluxbox/menu** +**~/.fluxbox/menu** This is the default location for the user’s root menu. -**@pkgdatadir@/menu** +**@pkgdatadir@/menu** This is the system-wide root menu file. It will be used if the user’s root menu is missing or unparseable. -**~/.fluxbox/windowmenu** +**~/.fluxbox/windowmenu** This is the user’s window menu definition file -**@pkgdatadir@/menu** +**@pkgdatadir@/menu** This is the default window menu. If the user does not have this file, it will be copied to **~/.fluxbox/windowmenu** on fluxbox startup. # RESOURCES -**session.menuFile:** *location* +**session.menuFile:** *location* This may be set to override the location of the user’s root menu. # ENVIRONMENT diff --git a/content/help/man-fluxbox-style.md b/content/help/man-fluxbox-style.md index 906a7d5..e31b493 100644 --- a/content/help/man-fluxbox-style.md +++ b/content/help/man-fluxbox-style.md @@ -1,3 +1,6 @@ +--- +weight: 6 +--- # NAME fluxbox-style - A comprehensive look at styles/themes for fluxbox(1). diff --git a/content/help/man-fluxbox.md b/content/help/man-fluxbox.md index 06f12f1..601f8e8 100644 --- a/content/help/man-fluxbox.md +++ b/content/help/man-fluxbox.md @@ -1,3 +1,7 @@ +--- +weight: 1 +--- + # NAME fluxbox - A lightweight window manager for the X Windowing System @@ -54,43 +58,43 @@ utilities. # OPTIONS -**-display** *display* +**-display** *display* Start fluxbox on the specified display. Programs started by fluxbox will share the DISPLAY environment variable also. -**-h**, **-help** +**-h**, **-help** Display command line options. -**-i**, **-info** +**-i**, **-info** Display useful information concerning the defaults and compiled-in options. -**-log** *logfile* +**-log** *logfile* Starting fluxbox with this option will designate a file in which you want to log events to. -**-no-slit** +**-no-slit** Do not use the container for DockApps (aka the Slit) -**-no-toolbar** +**-no-toolbar** Do not use the toolbar -**-rc** *rcfile* +**-rc** *rcfile* Use a different config file other than the default **~/.fluxbox/init**. -**-v**, **-version** +**-v**, **-version** The version of fluxbox installed. -**-screen** all|*scr*,*scr*…​ +**-screen** all|*scr*,*scr*…​ Run on specified screens only or all (by default). -**-verbose** +**-verbose** Print more information in process. -**-sync** +**-sync** Synchronize with the X server for debugging. -**-list-commands** +**-list-commands** Lists all available internal commands. # STARTING FLUXBOX @@ -352,52 +356,52 @@ The default menu, which is created by the “fluxbox-generate\_menu” command, contains menus for installed applications, as well as a special “Fluxbox menu” item with the items detailed below: -**Configure** +**Configure** The next level under this menu is where you can set certain resources and really begin to customize the look and feel of your desktop. See the **Configure Menu** section below for more details. -**System Styles** +**System Styles** This is where the standard styles are listed. You can select one of these by clicking on it, and it will be applied immediately. System styles are located in **@pkgdatadir@/styles/** upon a default install. Remember that you can confirm this with fluxbox -i. -**User Styles** +**User Styles** This is where your custom styles are listed. It will list any styles from **~/.fluxbox/styles/**, which may be styles you grab from the Internet, or your own custom styles, provided you follow the standards described in **fluxbox-style(5)**. -**Workspace List** +**Workspace List** This is the same as the **Workspace Menu** detailed below. -**Tools** +**Tools** Listed here are different tools that you can use. You can rename your workspace, run programs from a command line or regenerate your menu. -**Window Managers** +**Window Managers** Allows you to switch your window manager. (Only listed if you have other window managers/desktop environments installed.) -**Lock Screen** +**Lock Screen** Locks the screen, if a suitable locking program has been detected. -**Fluxbox Command** +**Fluxbox Command** A little Commandline will popup where you can enter a fluxbox command. These commands are the same as those detailed in **fluxbox-keys(5)**. -**Reload config** +**Reload config** Use this to reload the fluxbox configuration files. You must do this after editing the “keys” file, “init” file, or the current style. -**Restart** +**Restart** Restart the whole darn thing. This starts a completely new fluxbox process, rereads files and redraws all graphical elements. Running applications will remain open, however, and restored to the same workspaces they were previously in once fluxbox returns. -**Exit** +**Exit** Exits fluxbox, which in turn either shuts down the X Window server or returns you to the graphical login screen. @@ -409,44 +413,44 @@ easier and faster way to change the most common settings. All changes take effect immediately. -**Focus Model** +**Focus Model** Lets you configure the window focus model. For details, see **FOCUS MODEL**, below. -**Maximize Options** +**Maximize Options** Lets you configure what happens when you maximize a window. The four options are: -**Full Maximization**: +**Full Maximization**: Normally, a maximized window will not overlap the toolbar, slit, or any docked windows (like panels). Enabling this option allows maximized windows to be as large as the actual screen resolution. -**Ignore Resize Increment**: +**Ignore Resize Increment**: Normally, terminal windows specify a “resize increment” which mean fluxbox will only resize the window to an even multiple of the character size. Enabling this option will ignore this specification when maximizing. -**Disable Moving** / **Disable Resizing**: +**Disable Moving** / **Disable Resizing**: Normally, maximized windows can still be moved and resized. Enabling these options prevents these behaviour. -**Tab Options** +**Tab Options** Lets you configure the properties of tabs. Detailed in **TAB OPTIONS**, below. -**Slit** +**Slit** This menu can also be found by right-clicking the slit (if visible). Find more information about this menu’s options in the **Slit Menu** section, below. -**Toolbar** +**Toolbar** This menu can also be found by right-clicking any non-icon part of the toolbar. Find more information about this menu’s options in the **Toolbar Menu** section, below. -**Transparency** +**Transparency** This sets the default transparency for a focused windows, unfocused window and the menu. Use the left mouse button to decrease and the right mouse button to increase the value. 0 is invisible, 255 is not @@ -460,15 +464,15 @@ the xcomposite extension and use pseudo-transparency instead of true transparency. Note: When pseudo-transparency is on, the transparency values here only affect titlebars, not window contents. -**Opaque Window Moving** +**Opaque Window Moving** If enabled, you will see the window content while dragging it. Otherwise only an outline of the window will be shown. -**Opaque Window Resizing** +**Opaque Window Resizing** If enabled, you will see the window content while resizing it. Otherwise only an outline of the window will be shown. -**Workspace Warping** +**Workspace Warping** If enabled, you can drag windows from one workspace to another. There are parameters to set independently whether this warping happens horizontally and/or vertically, and in each direction you can set the @@ -487,19 +491,19 @@ To customize this menu, see the **WINDOW MENU** section of By default, this menu contains: -**Shade** +**Shade** Shade the window (display the titlebar only). -**Stick** +**Stick** (Un)Stick window. A “stuck” window will always be displayed on all workspaces. -**Send To…​** +**Send To…​** Send window to another workspace. When you select the workspace with a middle click, fluxbox will send you along with the application to the selected workspace. -**Maximize** +**Maximize** (Un)Maximize window. Depending on your toolbar and slit configuration, maximize may cover them. You can use the different mouse buttons for different aspects of maximize function. @@ -510,83 +514,83 @@ different aspects of maximize function. - Button 3 (Un)Maximize window horizontally. -**Iconify** +**Iconify** Iconify (or minimize) a window. The “icon” can be found in the Icons submenu of the workspace menu as well as in the toolbar (if a Toolbar mode showing Icons is selected). -**Raise** +**Raise** Raise the window above all others in the same layer. -**Lower** +**Lower** Lower the window below all others in the same layer. -**Layer…​** +**Layer…​** Change the layer of this window. See **LAYERS** for more details. -**Transparency** +**Transparency** Change this window’s transparency, overriding the defaults from the **Configuration Menu**. -**Remember…​** +**Remember…​** Specify which window settings should be stored in the “apps” file and resumed the next time this window is opened. Specifically the setting you may store are: -**Workpace:** +**Workpace:** Open this in the same workspace as where the window currently resides. -**Jump to workspace:** +**Jump to workspace:** When **Workspace** is selected, fluxbox will jump to the appropriate workspace when this window is opened there. If not selected, the window will open in the background. -**Head**: +**Head**: For xinerama users only, start this window on the current head (or screen). -**Dimensions**: +**Dimensions**: Record the current window height and width. -**Position**: +**Position**: Record the current X and Y coordinates of the window. -**Sticky**: +**Sticky**: Record whether the window is on all desktops, or not. -**Decorations**: +**Decorations**: Record the current set of decorations (title bar, grips, tabs, etc) on the window. -**Shaded**: +**Shaded**: Record whether the window is shaded (or rolled-up) or not. -**Minimized**: +**Minimized**: Record whether the window is iconified (or minimized) or not. -**Maximized**: +**Maximized**: Record whether the window is maximized or not. -**Fullscreen**: +**Fullscreen**: Record whether the window is in fullscreen mode or not. -**Transparency**: +**Transparency**: Record the current **Transparency** settings. -**Layer**: +**Layer**: Record the current layer. -**Save on close**: +**Save on close**: If selected, any of the above items which are also selected will be updated with the window’s current values as it is closed. These are is covered in more detail in **fluxbox-apps(5)**. -**Close** +**Close** Close the application softly. -**Kill** +**Kill** Kill the window’s parent process, like **xkill(1)**. ## Workspace Menu @@ -595,25 +599,25 @@ The workspace menu can be found, by default, by middle-clicking on the background. This menu contains entries to explore the currently defined workspaces, windows, and add/remove/rename workspaces. -**Icons** +**Icons** This menu shows any iconified (or, minimized) windows. Clicking on a window in this menu will raise it on the current workspace. -*Workspaces* +*Workspaces* The next section provides one submenu per workspace. Middle-clicking on a workspace name will take you to that workspace. The submenu contains a list of all open windows on that workspace. Clicking on a window name will take you to that window and raise it, changing the active workspace if necessary. -**New Workspace** +**New Workspace** This entry adds a new workspace to the end of the list of current workspaces. -**Edit current workspace name** +**Edit current workspace name** Pops up a dialog to enter a new name for the current workspace. -**Remove Last** +**Remove Last** Remove the last workspace in the list. Any windows currently open there will be sent to the next-to-last workspace. @@ -630,39 +634,39 @@ section for details on how to alter this value. The possible tools are: -**Clock** +**Clock** This will show an area to display a clock and the date according to the format specification listed in "man strtftime" -**Button.<name>** +**Button.<name>** This displays a clickable label with custom text. -**Iconbar** +**Iconbar** This is the area that contains all windows (all running applications, all minimized windows or maybe no window, all depending on the Toolbar Settings). -**Systemtray** +**Systemtray** The Systemtray can hold applications that are made to use it. -**WorkspaceName** +**WorkspaceName** This displays the name of the current workspace. Also, one is able to switch to the workspace left of the current one with a left click and to the workspace right of the current one with a right click. -**PrevWorkspace** +**PrevWorkspace** This displays an arrow that allows one to switch to the workspace left of the current one. -**NextWorkspace** +**NextWorkspace** This displays an arrow that allows one to switch to the workspace right of the current one. -**PrevWindow** +**PrevWindow** This displays an arrow that switches focus to the previous visible window on the current workspace. -**NextWindow** +**NextWindow** This displays an arrow that switches focus to the next visible window on the current workspace. @@ -679,100 +683,100 @@ a window’s name in the iconbar), or from the **Configuration Menu**. All changes take effect immediately. Here are the settings: -**Visible** +**Visible** Sets the toolbar either to visible or invisible. -**Auto hide** +**Auto hide** If this is enabled the toolbar will disappear after a defined time when the mouse pointer leaves the toolbar. It will slide in when the cursor hits the remaining edge of the toolbar. See the **session.autoRaiseDelay** resource for the delay time. -**Auto raise** +**Auto raise** If this is enabled the toolbar will elevate after a defined time when the mouse pointer enters the it. It will fall back when the cursor leaves the toolbar. See the **session.autoRaiseDelay** resource for the delay time. -**Toolbar width percentage** +**Toolbar width percentage** Sets the width of the toolbar in a percentage of your total screen size. Use the left mouse button to decrease and the right mouse-button to increase the value. The value can be from 1-100. -**Maximize Over** +**Maximize Over** Enabling this option will allow windows to maximize over the toolbar. With this switched on they will only expand to the edge of the bar. This option may be overridden by the “Full Maximization” from the **Configuration Menu**. If that option is enabled, this option will have no effect.. -**Layer…​** +**Layer…​** This sets the layer on which the toolbar is set. With this you can set the toolbar to "Always on top". -**Placement** +**Placement** Sets the toolbar to any edge of the screen, either centered or aligned with a corner. -**Alpha** +**Alpha** This sets the alpha value for the toolbar. Use the left mouse button to decrease and the right mouse button to increase the value. 0 is invisible, 255 is not transparent at all. -**Iconbar Mode** +**Iconbar Mode** Specifies various modes of the iconbar’s operation. The first section outlines what types of windows will be shown in the iconbar: -**None**: +**None**: Will not show any windows -**Icons**: +**Icons**: Shows windows from all workspaces that are iconified (or, minimized) -**NoIcons**: +**NoIcons**: Shows windows from all workspaces that are not iconified -**WorkspaceIcons**: +**WorkspaceIcons**: Shows windows from the current workspace that are iconified -**WorkspaceNoIcons**: +**WorkspaceNoIcons**: Shows windows from the current workspace that are not iconified -**Workspace**: +**Workspace**: Shows all windows (iconified or not) from the current workspace -**All Windows**: +**All Windows**: Shows all windows (iconified or not) from all workspaces The next section specifies the alignment of the window names shown in the iconbar. The width is specified via the **session.screen0.iconbar.iconWidth** resource: -**Left**: +**Left**: All icons will be left-aligned with the width set in the “init” file -**Relative**: +**Relative**: All icons will be sized evenly to fill the iconbar completely -**RelativeSmart**: +**RelativeSmart**: All icons will initially be sized evenly, but icons with long titles will be larger -**Right**: +**Right**: All icons will be right-aligned with the width set in the “init” file The last option in this submenu is: -**Show Pictures**: +**Show Pictures**: If enabled the iconbar will show the application’s icon (if provided by the application) -**Clock** +**Clock** Lets you switch between the 00:00am - 11:59pm and 00:00 - 23:59 notation -**Edit Clock Format** +**Edit Clock Format** clicking this entry will pop up a dialog window in which the clock format can be set according to *man strftime* (or *man date*). @@ -792,35 +796,35 @@ windows will gain focus when the mouse clicks on them. Thus, there are four main options when choosing a focus model. You should choose one of the first two and one of the last two. They are: -**Click To Focus** +**Click To Focus** Click to focus windows. -**Mouse Focus** +**Mouse Focus** Window focus follows mouse. -**Mouse Focus (Strict)** +**Mouse Focus (Strict)** Like Mouse Focus, but no mouse movement is required, ie. the window is also focused if it moves below the mouse, eg. because it shows up or you change the virtual desktop. -**ClickTabFocus** +**ClickTabFocus** Click to focus tabs. -**MouseTabFocus** +**MouseTabFocus** Tab focus follows mouse. There are three more settings in the “Focus Model” menu: -**Focus New Windows** +**Focus New Windows** If enabled, a new window will grab X focus as soon as it is opened. -**Auto Raise** +**Auto Raise** If enabled, focusing on a new window will automatically raise that window above all others within its layer. When disabled, you must explicitly raise a focused window using the window menu, keybinding, or **Click Raises**. -**Click Raises** +**Click Raises** If enabled, clicking anywhere on a window will raise it above all others within its layer. @@ -829,20 +833,20 @@ within its layer. This section of fluxbox configuration menu lets you configure many features of tabs. Inside of it there are three main options: -**Placement** +**Placement** You can choose where the external tabs will be positioned relative to the window. For these options to work, *Tabs in Titlebar* must be off. -**Tabs in Titlebar** +**Tabs in Titlebar** When this option is on, tabs are fixed in window titlebar and the width varies according to the amount of windows grouped. -**Maximize Over** +**Maximize Over** When this option is on, maximizing a window will disregard the size and location of external tabs, which means they may be pushed out of the screen entirely. -**External Tab Width** +**External Tab Width** This specifies in pixels the width of external tabs. # STYLES @@ -891,37 +895,37 @@ Menu**. All changes take effect immediately. Here are the settings: -**Placement** +**Placement** This lets you set the position of the slit. -**Layer** +**Layer** See **LAYERS** for details on the layer order. -**Auto hide** +**Auto hide** If this is enabled the slit will disappear after a defined time when the mouse pointer leaves the slit. It will slide in when the cursor hits the remaining edge of the slit. See the **session.autoRaiseDelay** resource for the delay time. -**Auto raise** +**Auto raise** If this is enabled the slit will elevate after a defined time when the mouse pointer enters the it. It will fall back when the cursor leaves the slit. See the **session.autoRaiseDelay** resource for the delay time. -**Maximize Over** +**Maximize Over** Enabling this option will allow windows to maximizing over the slit. With this switched off they will only expand to the edge of the slit. This option may be overridden by the “Full Maximization” from the **Configuration Menu**. If that option is enabled, this option will have no effect.. -**Alpha** +**Alpha** This sets the alpha value for the slit. Use the left mouse button to decrease and the right mouse button to increase the value. 0 is invisible, 255 is not transparent at all. -**Clients** +**Clients** This submenu lets you reorder the the applications running in the slit. You are able to hide apps from the slit by unselecting them in the list showing. This will not kill the app. You can make them re-appear by @@ -994,7 +998,7 @@ can also be screen1, screen2, to customize the behavior of fluxbox on each desktop accordingly. Here are the resources that are currently available: -**session.screen0.window.{focus|unfocus}.alpha**: *integer* +**session.screen0.window.{focus|unfocus}.alpha**: *integer* These resources are available to the user to set different levels of transparency for different components of fluxbox. Each one accepts a value between 0-255, 255 being opaque and 0 being completely @@ -1002,14 +1006,14 @@ transparent. Default: **255** -**session.screen0.{slit|toolbar}.autoHide**: *boolean* +**session.screen0.{slit|toolbar}.autoHide**: *boolean* The autoHide resources allow the user to set the behavior of the toolbar and slit. This behavior can be that they disappear when they are not being used actively by the user, or they remain visible at all times. Default: **False** -**session.screen0.{slit|toolbar}.autoRaise**: *boolean* +**session.screen0.{slit|toolbar}.autoRaise**: *boolean* If enabled, the respective item will elevate to the AboveDock layer when entered and fall back to its regular layer when left. Notice that this does **not** implicitly alter the items regular layer or the workspace @@ -1019,17 +1023,17 @@ enter, thus elevate it. Default: **False** -**session.screen0.{slit|toolbar}.layer**: *layer* +**session.screen0.{slit|toolbar}.layer**: *layer* With these two resources, you can set the layer you want the toolbar and the slit to appear on. Please read the LAYER section for more information. Default: **Dock** -**session.screen0.{slit|toolbar}.placement**: *placement* +**session.screen0.{slit|toolbar}.placement**: *placement* These allow users to place the slit and toolbar where they like. -Possible options are: +Possible options are: **BottomLeft BottomCenter BottomRight LeftBottom LeftCenter LeftTop RightBottom RightCenter RightTop TopLeft TopCenter TopRight** @@ -1037,7 +1041,7 @@ Slit default: **RightBottom** Toolbar default: **BottomCenter** -**session.screen0.{slit|toolbar|tabs}.maxOver**: *boolean* +**session.screen0.{slit|toolbar|tabs}.maxOver**: *boolean* Setting these to True will allow application windows to maximize over the complete screen. Setting to False allows the slit, toolbar, and external tabs to hold their territory and will always be visible when an @@ -1045,68 +1049,68 @@ application is maximized. Default: **False** -**session.screen0.toolbar.height**: *integer* +**session.screen0.toolbar.height**: *integer* Set the height of the toolbar. If the value is set to 0, the style file will gain control over the toolbar height. It is possible to set a fixed height by changing this value to something greater than 0. Default: **0** -**session.screen0.toolbar.visible**: *boolean* +**session.screen0.toolbar.visible**: *boolean* The user can set whether they want to have a toolbar on screen at all. Setting to False removes the toolbar from the screen. Default: **True** -**session.screen0.toolbar.widthPercent**: *integer* +**session.screen0.toolbar.widthPercent**: *integer* This resource sets the width percentage of the toolbar on the screen. Default: **100** -**session.screen0.toolbar.tools**: *tools* +**session.screen0.toolbar.tools**: *tools* This resource specifies the tools plugged into the toolbar. Read the TOOLBAR section in this manual for a description of each of these. They may be specified in any order, delimited by the **,** character. They will appear in the order given. -Possible tools: +Possible tools: **clock iconbar nextwindow prevwindow nextworkspace prevworkspace systemtray workspacename button.<name>** -Default: +Default: **workspacename, prevworkspace, nextworkspace, iconbar, prevwindow, nextwindow, systemtray, clock** -**session.screen0.{slit|toolbar}.onhead**: *integer* +**session.screen0.{slit|toolbar}.onhead**: *integer* For those that use xinerama, users can set this value to the number of the head where they would like to see the slit and toolbar, starting from 1. Setting this to 0 will ignore xinerama information. Default: **0** for slit, **1** for toolbar -**session.screen0.iconbar.mode**: *pattern* +**session.screen0.iconbar.mode**: *pattern* This determines which windows will be displayed in the iconbar. Any window pattern is acceptable. See the section **CLIENT PATTERNS** in either **fluxbox-keys(5)** or **fluxbox-apps(5)** for details. Default: **{static groups} (workspace)** -**session.screen0.iconbar.usePixmap**: *boolean* +**session.screen0.iconbar.usePixmap**: *boolean* This is also set in the Iconbar Mode menu. When set to True, this will show the native icon of applications. Default: **True** -**session.screen0.iconbar.iconTextPadding**: *integer* +**session.screen0.iconbar.iconTextPadding**: *integer* This specifies the space between the window title and the edge of the button. Default: **10** -**session.screen0.iconbar.alignment**: *position* +**session.screen0.iconbar.alignment**: *position* This value should be changed in the Iconbar Mode menu. -**session.screen0.iconbar.iconifiedPattern**: *string* +**session.screen0.iconbar.iconifiedPattern**: *string* Allows to decorate the title of iconified (minimized) windows. The title is represented by "%t". @@ -1114,7 +1118,7 @@ Default: **( %t )** -Available options: +Available options: - **Left**: Fixed width, aligned left - **Relative**: Width varies to fill the iconbar @@ -1123,35 +1127,35 @@ Available options: \+ Default: **Relative** -**session.screen0.iconbar.iconWidth**: *integer* +**session.screen0.iconbar.iconWidth**: *integer* Used to specify the iconbar button width for Left/Right alignment. Default: **128** -**session.screen0.strftimeFormat**: *date* +**session.screen0.strftimeFormat**: *date* This adjusts the way the current time is displayed in the toolbar. The **strftime(3)** format is used. Default: **%k:%M** -**session.screen0.tabs.intitlebar**: *boolean* +**session.screen0.tabs.intitlebar**: *boolean* This specifies whether tabs should be embedded in the titlebar or placed outside the window. Default: **True** -**session.screen0.tab.placement**: *placement* +**session.screen0.tab.placement**: *placement* This specifies where external tabs will appear on the window. It has the same possible values as **sesion.screen0.{slit|toolbar}.placement**. Default: **TopLeft** -**session.screen0.tab.width**: *integer* +**session.screen0.tab.width**: *integer* This specifies the width of external tabs in pixels. Default: **64** -**session.screen0.focusModel**: **ClickToFocus|MouseFocus|StrictMouseFocus** +**session.screen0.focusModel**: **ClickToFocus|MouseFocus|StrictMouseFocus** This controls how windows gain focus via the mouse. With “ClickToFocus”, the user must click on the window. With “MouseFocus”, windows gain focus whenever the mouse moves over them, but only when the mouse is moving. @@ -1161,63 +1165,63 @@ changing desktops, closing windows, etc. Default: **ClickToFocus** -**session.screen0.autoRaise**: *boolean* +**session.screen0.autoRaise**: *boolean* When True, this setting automatically raises any window that gains focus. Default: **True** -**session.autoRaiseDelay**: *integer* +**session.autoRaiseDelay**: *integer* Adjusts the delay (in milli-sec) before focused windows will raise when using the Autoraise option. Default: **250** -**session.screen0.clickRaises**: *boolean* +**session.screen0.clickRaises**: *boolean* This setting allows a user to click anywhere on a window to bring it on top of other windows. Otherwise, only the titlebar will work. Default: **True** -**session.screen0.workspacewarping**: *boolean* +**session.screen0.workspacewarping**: *boolean* This setting enables a user to change workspaces by dragging a window across the edge of the screen. Default: **True** -**session.screen0.showwindowposition**: *boolean* +**session.screen0.showwindowposition**: *boolean* Setting this resource to True shows the user, in a little window, the exact position of the application window while the user is dragging it. Allows a precise placement of windows on a screen. Default: **False** -**session.screen0.defaultDeco**: *string* +**session.screen0.defaultDeco**: *string* This specifies the default window decorations, according to the same options available to the **\[Deco\]** option in the “apps” file, described in **fluxbox-apps(5)**. Default: **NORMAL** -**session.screen0.menuDelay**: *integer* +**session.screen0.menuDelay**: *integer* This sets the delay in milliseconds for submenus to open when you hover over them or to close when you hover over another item. Default: **200** -**session.screen0.focusNewWindows**: *boolean* +**session.screen0.focusNewWindows**: *boolean* This sets whether or not new windows will become focused automatically. Default: **True** -**session.screen0.workspaceNames**: *names* +**session.screen0.workspaceNames**: *names* Here is where the user can name their workspaces, in a comma-delimited list. However it is recommended to use the tool available in the Workspace Menu to set these. Default: **Workspace 1, Workspace 2, Workspace 3, Workspace 4** -**session.screen0.edgeSnapThreshold**: *integer* +**session.screen0.edgeSnapThreshold**: *integer* When moving a window across your screen, fluxbox is able to have it “snap” to the edges of the screen and other windows for easy placement. This variable tells fluxbox the distance (in pixels) at which the window @@ -1225,7 +1229,7 @@ will jump to the edge. Default: **10** -**session.screen0.edgeResizeSnapThreshold**: *integer* +**session.screen0.edgeResizeSnapThreshold**: *integer* When resizing a window by grabbing a corner, fluxbox is able to have it “snap” to the edges of the screen and other windows for easy placement. This variable tells fluxbox the distance (in pixels) at which the window @@ -1233,11 +1237,11 @@ will jump to the edge. Default: **0** -**session.screen0.windowPlacement**: *strategy* +**session.screen0.windowPlacement**: *strategy* This resource specifies where to place new windows when not otherwise specified (by the program or the “apps” file, for example). -Available strategies: +Available strategies: - RowSmartPlacement: tries to place windows in rows without overlapping @@ -1259,40 +1263,40 @@ Available strategies: Default: **RowSmartPlacement** -**session.screen0.rowPlacementDirection**: **LeftToRight**|**RightToLeft** +**session.screen0.rowPlacementDirection**: **LeftToRight**|**RightToLeft** These settings control the direction in which windows are tiled using the RowSmartPlacement and ColSmartPlacement strategies described above. Default: **LeftToRight** -**session.screen0.colPlacementDirection**: **TopToBottom**|**BottomToTop** +**session.screen0.colPlacementDirection**: **TopToBottom**|**BottomToTop** These settings control the direction in which windows are tiled using the RowSmartPlacement and ColSmartPlacement strategies described above. Default: **TopToBottom** -**session.screen0.fullMaximization**: *boolean* +**session.screen0.fullMaximization**: *boolean* If this setting is enabled, windows will maximize over the toolbar, slit, and any other window that creates a strut, no matter what their individual settings are. Default: **False** -**session.screen0.opaqueMove**: *boolean* +**session.screen0.opaqueMove**: *boolean* When moving a window, setting this to True will draw the window contents as it moves (this is nasty on slow systems). If False, it will only draw an outline of the window border. Default: **True** -**session.screen0.opaqueResize**: *boolean* +**session.screen0.opaqueResize**: *boolean* When resizing a window, setting this to True will draw the window contents as it resizes (this is nasty on slow systems). If False, it will only draw an outline of the window border. Default: **False** -**session.screen0.opaqueResizeDelay**: *integer* +**session.screen0.opaqueResizeDelay**: *integer* When resizing a window in opaque mode, this controls the resize clock pulse in ms. Low values resize "smoother" but slow clients (browser etc. which are expensive to resize) can put too much stress on the system @@ -1301,12 +1305,12 @@ before the size is aligned to the mouse position) Default: **40** -**session.screen0.workspaces**: *integer* +**session.screen0.workspaces**: *integer* Set this to the number of workspaces the users wants. Default: **4** -**session.screen0.struts**: *integer*, *integer*, *integer*, *integer* +**session.screen0.struts**: *integer*, *integer*, *integer*, *integer* Shrink the workspace by left, right, top, bottom pixels (positive integers) This allows you to add some padding to the workspace eg. to keep a fraction of the desktop visible against maximized windows. @@ -1315,32 +1319,32 @@ heads (<n> starts counting at 1) Default: **0,0,0,0** -**session.screen0.toolbar.button.<name>.label**: *string* +**session.screen0.toolbar.button.<name>.label**: *string* The label text for the toolbar button tool "button.<name>" Default: **blank** -**session.screen0.toolbar.button.<name>.commands**: *string*:'string':'string':'string':'string' +**session.screen0.toolbar.button.<name>.commands**: *string*:'string':'string':'string':'string' A colon delimited list of commands, executed when the respective mouse button is pressed on the toolbar button tool "button.<name>" The commands are the same as those detailed in **fluxbox-keys(5)**. Default: **blank** -**session.cacheLife**: *minutes* +**session.cacheLife**: *minutes* This tells fluxbox how long unused pixmaps may stay in the X server’s memory. Default: **5** -**session.cacheMax**: *KbSize* +**session.cacheMax**: *KbSize* This tells fluxbox how much memory it may use to store cached pixmaps on the X server. If your machine runs short of memory, you may lower this value. Default: **200** -**session.colorsPerChannel**: *integer* +**session.colorsPerChannel**: *integer* This tells fluxbox how many colors to take from the X server on pseudo-color displays. A channel would be red, green, or blue. fluxbox will allocate this variable ^ 3 and make them always available. Value @@ -1349,30 +1353,30 @@ set this resource to 4. Default: **4** -**session.doubleClickInterval**: *integer* +**session.doubleClickInterval**: *integer* Adjust the delay in milliseconds between mouse clicks for fluxbox to consider a double click. Default: **250** -**session.forcePseudoTransparency**: *boolean* +**session.forcePseudoTransparency**: *boolean* If you have Xorg’s composite extension enabled, this setting will force the menu, windows, toolbar, and slit to use pseudo-transparency instead of true transparency. Default: **False** -**session.ignoreBorder**: *boolean* +**session.ignoreBorder**: *boolean* This configures the ability to move windows by dragging the border. Default: **False** -**session.tabPadding**: *integer* +**session.tabPadding**: *integer* This specifies the spacing between tabs. Default: **0** -**session.tabsAttachArea**: **Window|Titlebar** +**session.tabsAttachArea**: **Window|Titlebar** With this set to “Window”, windows may be grouped by dragging one tab with the middle mouse button and dropping it anywhere on another window. With “Titlebar”, the user must drop the tab on the target window’s @@ -1380,11 +1384,11 @@ titlebar. Default: **Window** -**session.titlebar.{left|right}**: *buttons* +**session.titlebar.{left|right}**: *buttons* The buttons or icons to place in the titlebar of decorated windows. You may specify any number, space-delimited. -The available options are: +The available options are: **Close Maximize MenuIcon Minimize Shade Stick LHalf RHalf** Default left: **Stick** @@ -1394,7 +1398,7 @@ Default right: **Shade Minimize Maximize Close** *LHalf* and *RHalf* are buttons to quickly place a window into the left and right half of the current monitor. -**session.screen0.pin{Left|Right}**: *classes* +**session.screen0.pin{Left|Right}**: *classes* Sort the system tray icons according to order specified in *classes*, which is a comma-separated list of CLASSCLASS properties of the X clients (The second field of WM\_CLASS from the output of the @@ -1408,46 +1412,46 @@ All of the *location* resources following require a pathname to their specific files. This is where you can specify different files. Most of the defaults will be located in the user’s **~/.fluxbox** directory. -**session.appsFile**: *location* +**session.appsFile**: *location* Location of persistent application settings, or the “apps” file. See the **Remember…​** item in the **Window Menu** section above or **fluxbox-apps(5)** for details. -**session.groupFile**: *location* +**session.groupFile**: *location* Deprecated, auto-grouping is now done in the “apps” file, see **fluxbox-apps(5)** for details. -**session.keyFile**: *location* +**session.keyFile**: *location* Location of the keyboard mapping settings, or the “keys” file. See **fluxbox-keys(5)** for details. -**session.menuFile**: *location* +**session.menuFile**: *location* Location of the Root Menu file. See **fluxbox-menu(5)** for details. -**session.slitlistFile**: *location* +**session.slitlistFile**: *location* Location of the file used to remember slit client ordering. See **SLIT** above for details. -**session.styleFile**: *location* +**session.styleFile**: *location* Location of the currently selected style. See **fluxbox-style(5)** for details. -**session.styleOverlay**: *location* +**session.styleOverlay**: *location* Location of the style overlay file. See **fluxbox-style(5)** for details. -**session.screen0.windowMenu**: *location* +**session.screen0.windowMenu**: *location* This optionally specifies the location of a user-defined window menu. If left blank, it will use **~/.fluxbox/windowmenu**. Default: **blank** -**session.menuSearch**: **nowhere**|**itemstart**|**somewhere** +**session.menuSearch**: **nowhere**|**itemstart**|**somewhere** This setting controls the way the menu search feature works. -Available options: +Available options: - nowhere: disables the menu search - itemstart: typed text matches at the start of a menu items @@ -1458,11 +1462,11 @@ Available options: # ENVIRONMENT -**HOME** +**HOME** fluxbox uses **$HOME** to find the .fluxbox/init file and to resolve style file and -directory names. -**DISPLAY** +**DISPLAY** When no other display was given on the command line, fluxbox will start on the display specified by this variable. diff --git a/content/help/man-startfluxbox.md b/content/help/man-startfluxbox.md index 4960739..aef7100 100644 --- a/content/help/man-startfluxbox.md +++ b/content/help/man-startfluxbox.md @@ -1,3 +1,6 @@ +--- +weight: 2 +--- # NAME startfluxbox - start a fluxbox session @@ -16,7 +19,7 @@ startx, or **~/.xsession** if you run a display manager, like xdm. # FILES -**~/.fluxbox/startup** +**~/.fluxbox/startup** This file contains all commands that should be executed before fluxbox is started. The initial file contains helpful comments for beginners. It also starts fluxbox. diff --git a/content/news/_index.md b/content/news/_index.md index 7e8e41d..e57fae1 100644 --- a/content/news/_index.md +++ b/content/news/_index.md @@ -11,5 +11,3 @@ bookCollapseSection: true # What's happened lately in the fluxbox world? Find announces in here, updates, statements and so on. - -{{
}} \ No newline at end of file diff --git a/content/screenshots/index.md b/content/screenshots/index.md index 35796ac..8a5c5d3 100644 --- a/content/screenshots/index.md +++ b/content/screenshots/index.md @@ -11,9 +11,39 @@ of using Fluxbox together with their preferred applications. ## Bobbens +{{< figure src="screenshot_bobbens.png" title="The desktop of User 'Bobbens'" >}} +Applications used: + +* gkrellm ([website](http://www.muhri.net/gkrellm/)) +* conky ([website](http://conky.sourceforge.net/)) +* urxvt ([website](http://software.schmorp.de/pkg/rxvt-unicode.html)) +* screen +* irssi ([website](http://irssi.org/)) +* zsh ([website](http://www.zsh.org/)) ## Zan -## Tenr +{{< figure src="screenshot_zan.png" title="The desktop of User 'Zan'" >}} + +Applications used: + +* docker ([website](http://icculus.org/openbox/2/docker/)) +* urxvt ([website](http://software.schmorp.de/pkg/rxvt-unicode.html)) +* sonata ([website](http://sonata.berlios.de/)) +* fluxstyle ([website](http://fluxstyle.berlios.de/)) +* ipager ([website](http://useperl.ru/ipager/index.en.html)) + + +## Tenner + +{{< figure src="screenshot_tenner.png" title="The desktop of User 'Tenner'" >}} + +Applications used: +* screen ([.screenrc](./resources/screenrc_tenner)) +* irssi ([website](http://irssi.org/) | [theme](./resources/marker.theme)) +* zsh ([website](http://www.zsh.org/)) +* urxvt ([website](http://software.schmorp.de/pkg/rxvt-unicode.html)) +* conky ([website](http://conky.sourceforge.net/) | [.conkyrc](./resources/conkyrc_tenner) | [.timeconkyrc](./resources/timeconkyrc_tenner)) +* xclock diff --git a/layouts/news/section.html b/layouts/news/section.html new file mode 100644 index 0000000..7496fb8 --- /dev/null +++ b/layouts/news/section.html @@ -0,0 +1,12 @@ +{{ define "main" }} +
+ {{ .Content }} + +
+ +{{ template "_internal/pagination.html" . }} {{ end }} diff --git a/static/screenshots/resources/conkyrc_tenner b/static/screenshots/resources/conkyrc_tenner new file mode 100644 index 0000000..46ddce5 --- /dev/null +++ b/static/screenshots/resources/conkyrc_tenner @@ -0,0 +1,245 @@ +# set to yes if you want tormo to be forked in the background +background yes + +#cpu_avg_samples 3 +#net_avg_samples 3 + +# X font when Xft is disabled, you can pick one with program xfontsel +#font 5x7 +#font 6x10 +#font 7x13 +#font 8x13 +#font 7x12 +#font *mintsmild.se* +#font -*-*-*-*-*-*-34-*-*-*-*-*-*-* + +# Use Xft? +use_xft yes + +# Xft font when Xft is enabled +xftfont Bitstream Vera Sans:size=8 +#xftfont Arial:size=8 + +# Text alpha when using Xft +xftalpha 0.8 + +# mail spool +#mail_spool $MAIL + +# Update interval in seconds +update_interval 0.5 +# Create own window instead of using desktop (required in nautilus) +own_window no + +# own window transparent +own_window_transparent yes + +# Use double buffering (reduces flicker, may not work for everyone) +double_buffer yes + +# Minimum size of text area +minimum_size 600 10 + +# Draw shades? +draw_shades yes + +# Draw outlines? +draw_outline no + +# Draw borders around text +draw_borders no + +# Stippled borders? +stippled_borders 8 + +# border margins +border_margin 4 + +# border width +border_width 1 + +# Default colors and also border colors +default_color white +default_shade_color black +default_outline_color black + +# Text alignment, other possible values are commented +alignment top_left +#alignment top_right +#alignment bottom_left +#alignment bottom_right + +# Gap between borders of screen and text +gap_x 7 +gap_y -7 + +# Subtract file system buffers from used memory? +no_buffers yes + +# set to yes if you want all text to be in uppercase +uppercase no + +# boinc (seti) dir +# seti_dir /opt/seti + + + +#xmms_player infopipe + + +# Possible variables to be used: +# +# Variable Arguments Description +# acpiacadapter ACPI ac adapter state. +# acpifan ACPI fan state +# acpitemp ACPI temperature. +# adt746xcpu CPU temperature from therm_adt746x +# adt746xfan Fan speed from therm_adt746x +# battery (num) Remaining capasity in ACPI or APM +# battery. ACPI battery number can be +# given as argument (default is BAT0). +# buffers Amount of memory buffered +# cached Amount of memory cached +# color (color) Change drawing color to color +# cpu CPU usage in percents +# cpubar (height) Bar that shows CPU usage, height is +# bar's height in pixels +# downspeed net Download speed in kilobytes +# downspeedf net Download speed in kilobytes with one +# decimal +# exec shell command Executes a shell command and displays +# the output in torsmo. warning: this +# takes a lot more resources than other +# variables. I'd recommend coding wanted +# behaviour in C and posting a patch :-). +# execi interval, shell Same as exec but with specific interval. +# command Interval can't be less than +# update_interval in configuration. +# fs_bar (height), (fs) Bar that shows how much space is used on +# a file system. height is the height in +# pixels. fs is any file on that file +# system. +# fs_free (fs) Free space on a file system available +# for users. +# fs_free_perc (fs) Free percentage of space on a file +# system available for users. +# fs_size (fs) File system size +# fs_used (fs) File system used space +# hr (height) Horizontal line, height is the height in +# pixels +# i2c (dev), type, n I2C sensor from sysfs (Linux 2.6). dev +# may be omitted if you have only one I2C +# device. type is either in (or vol) +# meaning voltage, fan meaning fan or temp +# meaning temperature. n is number of the +# sensor. See /sys/bus/i2c/devices/ on +# your local computer. +# kernel Kernel version +# loadavg (1), (2), (3) System load average, 1 is for past 1 +# minute, 2 for past 5 minutes and 3 for +# past 15 minutes. +# machine Machine, i686 for example +# mails Mail count in mail spool. You can use +# program like fetchmail to get mails from +# some server using your favourite +# protocol. See also new_mails. +# mem Amount of memory in use +# membar (height) Bar that shows amount of memory in use +# memmax Total amount of memory +# memperc Percentage of memory in use +# new_mails Unread mail count in mail spool. +# nodename Hostname +# outlinecolor (color) Change outline color +# pre_exec shell command Executes a shell command one time before +# torsmo displays anything and puts output +# as text. +# processes Total processes (sleeping and running) +# running_processes Running processes (not sleeping), +# requires Linux 2.6 +# shadecolor (color) Change shading color +# stippled_hr (space), Stippled (dashed) horizontal line +# (height) +# swapbar (height) Bar that shows amount of swap in use +# swap Amount of swap in use +# swapmax Total amount of swap +# swapperc Percentage of swap in use +# sysname System name, Linux for example +# time (format) Local time, see man strftime to get more +# information about format +# totaldown net Total download, overflows at 4 GB on +# Linux with 32-bit arch and there doesn't +# seem to be a way to know how many times +# it has already done that before torsmo +# has started. +# totalup net Total upload, this one too, may overflow +# updates Number of updates (for debugging) +# upspeed net Upload speed in kilobytes +# upspeedf net Upload speed in kilobytes with one +# decimal +# uptime Uptime +# uptime_short Uptime in a shorter format +# +# seti_prog Seti@home current progress +# seti_progbar (height) Seti@home current progress bar +# seti_credit Seti@hoome total user credit + + +# variable is given either in format $variable or in ${variable}. Latter +# allows characters right after the variable and must be used in network +# stuff because of an argument + + +# | +# +--music +# | +# +--status +# | | +# | +--status.....${execi 2 ~/bin/mpcinfo.sh status} +# | +--repeat.....${execi 2 ~/bin/mpcinfo.sh repeat} +# | +--random...${execi 2 ~/bin/mpcinfo.sh random} + +#${font -xos4-terminus-bold-*-*-*-14-*-*-*-*-*-iso10646-1}${color #078ba4}v:$mpd_vol $mpd_artist - $mpd_title +#${color #17afaa}${time %x :: %T} + + + +# stuff after 'TEXT' will be formatted on screen +#[ $nodename $kernel on $machine ] +#${color #f7f7f7}${font Bitstream Vera Sans:size=18}${time %H%M} + +# fast schwarz ${color #383838} +# fast weiss ${color #f7f7f7} +# dunkelgruen ${color #318043} +# hellrot ${color #E5898C} +# bordaux ${color #BD595D} + +## dunkles wp +# ${color #f7f7f7} +# $mpd_artist - $mpd_title [ MPD ${color #E5898C}$mpd_status${color #f7f7f7} ] +# $xmms_title [ XMMS ${color #E5898C}$xmms_status${color #f7f7f7} ] + +# ${color #f7f7f7}${execi 180 ~/bin/svncheckout.sh} +# ${color #82353B} +# ${execi 3600 birthday -W 3} + +## helles wp +# ${color #383838} +# ${font Bitstream Vera Sans:size=8}$mpd_artist - $mpd_title [ MPD ${color #E5898C}$mpd_status${color #383838} ] +# ${font Bitstream Vera Sans:size=8}$xmms_title [ XMMS ${color #E5898C}$xmms_status${color #383838} ] + +# ${font Bitstream Vera Sans:size=8}${color #383838}${execi 180 ~/bin/svncheckout.sh} +# ${color #82353B} +# ${font Bitstream Vera Sans:size=8}${execi 3600 birthday -W 3} +#$xmms_title [ ${color #E5898C}$xmms_status${color #f7f7f7} ] +#${color #f7f7f7}${execi 180 ~/bin/svncheckout.sh} + +TEXT + + +${color #f7f7f7} +$mpd_smart [ ${color #BD595D}$mpd_status${color #f7f7f7} | ${color #BD595D}$mpd_random${color #f7f7f7} ] + +${color #f7f7f7}${execi 180 ~/bin/svncheckout.sh} +${color #f7f7f7}${execi 180 ~/bin/svncheckout_dev.sh} +${color #BD595D} +${execi 3600 birthday -W 1} diff --git a/static/screenshots/resources/marker.theme b/static/screenshots/resources/marker.theme new file mode 100644 index 0000000..be5b807 --- /dev/null +++ b/static/screenshots/resources/marker.theme @@ -0,0 +1,352 @@ +# marker theme by tenner, www.tenr.de + +# When testing changes, the easiest way to reload the theme is with /RELOAD. +# This reloads the configuration file too, so if you did any changes remember +# to /SAVE it first. Remember also that /SAVE overwrites the theme file with +# old data so keep backups :) + +# TEMPLATES: + +# The real text formats that irssi uses are the ones you can find with +# /FORMAT command. Back in the old days all the colors and texts were mixed +# up in those formats, and it was really hard to change the colors since you +# might have had to change them in tens of different places. So, then came +# this templating system. + +# Now the /FORMATs don't have any colors in them, and they also have very +# little other styling. Most of the stuff you need to change is in this +# theme file. If you can't change something here, you can always go back +# to change the /FORMATs directly, they're also saved in these .theme files. + +# So .. the templates. They're those {blahblah} parts you see all over the +# /FORMATs and here. Their usage is simply {name parameter1 parameter2}. +# When irssi sees this kind of text, it goes to find "name" from abstracts +# block below and sets "parameter1" into $0 and "parameter2" into $1 (you +# can have more parameters of course). Templates can have subtemplates. +# Here's a small example: +# /FORMAT format hello {colorify {underline world}} +# abstracts = { colorify = "%G$0-%n"; underline = "%U$0-%U"; } +# When irssi expands the templates in "format", the final string would be: +# hello %G%Uworld%U%n +# ie. underlined bright green "world" text. +# and why "$0-", why not "$0"? $0 would only mean the first parameter, +# $0- means all the parameters. With {underline hello world} you'd really +# want to underline both of the words, not just the hello (and world would +# actually be removed entirely). + +# COLORS: + +# You can find definitions for the color format codes in docs/formats.txt. + +# There's one difference here though. %n format. Normally it means the +# default color of the terminal (white mostly), but here it means the +# "reset color back to the one it was in higher template". For example +# if there was /FORMAT test %g{foo}bar, and foo = "%Y$0%n", irssi would +# print yellow "foo" (as set with %Y) but "bar" would be green, which was +# set at the beginning before the {foo} template. If there wasn't the %g +# at start, the normal behaviour of %n would occur. If you _really_ want +# to use the terminal's default color, use %N. + +############################################################################# + +# default foreground color (%N) - -1 is the "default terminal color" +default_color = "-1"; + +# print timestamp/servertag at the end of line, not at beginning +info_eol = "false"; + +# these characters are automatically replaced with specified color +# (dark grey by default) +replaces = { "[]=" = "%K$*%n"; }; + +abstracts = { + ## + ## generic + ## + + # text to insert at the beginning of each non-message line + #line_start = "%n"; + line_start = "%K%K"; + # timestamp styling, nothing by default + timestamp = "%K%%H%%M"; + + # any kind of text that needs hilighting, default is to bold + hilight = "%_$0-%_"; + + # any kind of error message, default is bright red + error = "%R$*%n"; + + # channel name is printed + #channel = "%_$*%_"; + channel = "%K$0-"; + + # nick is printed + #nick = "%_$*%_"; + nick = "%_$0-%_"; + + # nick host is printed + #nickhost = "[$*]"; + nickhost = "%K(%K$0-%K)%K"; + + # server name is printed + server = "%_$*%_"; + + # some kind of comment is printed + #comment = "[$*]"; + comment = "%K(%K$0-%K)%n"; + + # reason for something is printed (part, quit, kick, ..) + #reason = "{comment $*}"; + reason = "{comment %K$0-}"; + + # mode change is printed ([+o nick]) + #mode = "{comment $*}"; + mode = "{comment $0-}"; + + ## + ## channel specific messages + ## + + # highlighted nick/host is printed (joins) + channick_hilight = "%K$*%n"; + chanhost_hilight = "{nickhost %K$*%n}"; + + # nick/host is printed (parts, quits, etc.) + channick = "%K$*%n"; + chanhost = "{nickhost $*}"; + + # highlighted channel name is printed + channelhilight = "%K$*%n"; + + # ban/ban exception/invite list mask is printed + ban = "%K$*%n"; + + ## + ## messages + ## + + # the basic styling of how to print message, $0 = nick mode, $1 = nick + msgnick = "%n$0$1-%K>%n %|"; + + # message from you is printed. "msgownnick" specifies the styling of the + # nick ($0 part in msgnick) and "ownmsgnick" specifies the styling of the + # whole line. + + # Example1: You want the message text to be green: + # ownmsgnick = "{msgnick $0 $1-}%g"; + # Example2.1: You want < and > chars to be yellow: + # ownmsgnick = "%Y{msgnick $0 $1-%Y}%n"; + # (you'll also have to remove <> from replaces list above) + # Example2.2: But you still want to keep <> grey for other messages: + # pubmsgnick = "%K{msgnick $0 $1-%K}%n"; + # pubmsgmenick = "%K{msgnick $0 $1-%K}%n"; + # pubmsghinick = "%K{msgnick $1 $0$2-%n%K}%n"; + # ownprivmsgnick = "%K{msgnick $*%K}%n"; + # privmsgnick = "%K{msgnick %R$*%K}%n"; + + # $0 = nick mode, $1 = nick + ownmsgnick = "{msgnick $0 $1-}"; + ownnick = "%Y$*%n"; + + # public message in channel, $0 = nick mode, $1 = nick + pubmsgnick = "{msgnick $0 $1-}"; + pubnick = "%W$*%n"; + + # public message in channel meant for me, $0 = nick mode, $1 = nick + pubmsgmenick = "{msgnick $0 $1-}%y"; + menick = "%Y$*%y"; + + # public highlighted message in channel + # $0 = highlight color, $1 = nick mode, $2 = nick + pubmsghinick = "{msgnick $1 $0$2-}%y"; + + # channel name is printed with message + msgchannel = "%K:%Y$*%n"; + + # private message, $0 = nick, $1 = host + privmsg = "[%Y$0%K(%r$1-%K)%n] "; + + # private message from you, $0 = "msg", $1 = target nick + ownprivmsg = "[%W$0%K(%R$1-%K)%n] "; + + # own private message in query + ownprivmsgnick = "{msgnick %g$*}"; + ownprivnick = "%Y$*%n"; + + # private message in query + privmsgnick = "{msgnick %W$*%n}"; + + ## + ## Actions (/ME stuff) + ## + + # used internally by this theme + # action_core = "%W$[-9]0- * %w"; + action_core = "%W$0-%w"; + + # generic one that's used by most actions + action = " %G*** %|{action_core %G$*} "; + + # own action, both private/public + ownaction = "{action $*}"; + + # own action with target, both private/public + ownaction_target = "{action_core $0}%K:%c$1%w "; + + # private action sent by others + pvtaction = "%W (*) $*%w "; + pvtaction_query = "{action $*}"; + + # public action sent by others + pubaction = "{action $*}"; + + + ## + ## other IRC events + ## + + # whois + whois = "%# $[8]0 : $1-"; + + # notices + ownnotice = "[%r$0%K(%R$1-%K)]%n "; + notice = "%K-%M$*%K-%n "; + pubnotice_channel = "%K:%m$*"; + pvtnotice_host = "%K(%m$*%K)"; + servernotice = "%g!$*%n "; + + # CTCPs + ownctcp = "[%r$0%K(%R$1-%K)] "; + ctcp = "%g$*%n"; + + # wallops + wallop = "%W$*%n: "; + wallop_nick = "%n$*"; + wallop_action = "%W * $*%n "; + + # netsplits + netsplit = "%r$*%n"; + netjoin = "%g$*%n"; + + # /names list + names_prefix = ""; + names_nick = "[%_$0%_$1-] "; + names_nick_op = "{names_nick $*}"; + names_nick_halfop = "{names_nick $*}"; + names_nick_voice = "{names_nick $*}"; + names_users = "[%g$*%n]"; + names_channel = "%g$*%n"; + + # DCC + dcc = "%g$*%n"; + dccfile = "%_$*%_"; + + # DCC chat, own msg/action + dccownmsg = "[%r$0%K($1-%K)%n] "; + dccownnick = "%R$*%n"; + dccownquerynick = "%W$*%n"; + dccownaction = "{action $*}"; + dccownaction_target = "{action_core $0}%K:%c$1%n "; + + # DCC chat, others + dccmsg = "[%B$1-%K(%b$0%K)%n] "; + dccquerynick = "%G$*%n"; + dccaction = "%W (*dcc*) $*%n %|"; + + ## + ## statusbar + ## + + # default background for all statusbars. You can also give + # the default foreground color for statusbar items. + sb_background = "%N"; + + # default backround for "default" statusbar group + #sb_default_bg = "%4"; + # background for prompt / input line + sb_prompt_bg = "%n"; + # background for info statusbar + sb_info_bg = "%8"; + # background for topicbar (same default) + #sb_topic_bg = "%4"; + + # text at the beginning of statusbars. sb-item already puts + # space there,so we don't use anything by default. + sbstart = ""; + # text at the end of statusbars. Use space so that it's never + # used for anything. + sbend = " "; + + topicsbstart = "{sbstart $*}"; + topicsbend = "{sbend $*}"; + + prompt = "%W$*%n>%n "; + + sb = "%N$*%K%n "; + + #sb = "%c(%n$*%c)%n"; + + sbmode = "%K/%K+%g$* %K%n"; + sbaway = " ****%W$0%n****"; + sbservertag = ":$0"; + sbnickmode = "$0"; + + + # ',' separator + sb_act_sep = "%K$*"; + # normal text + sb_act_text = "%K$*"; + # public message + sb_act_msg = "%W$*"; + # hilight + sb_act_hilight = "%Y$*"; + # hilight with specified color, $0 = color, $1 = text + sb_act_hilight_color = "$0$1-%n"; + + sbmore = "%_+++%_"; + + + + sb_usercount = "{sb %_$0%_ nicks ($1-)}"; + sb_uc_ircops = "%_*%_$*"; + sb_uc_ops = "%_@%_$*"; + sb_uc_halfops = "%_%%%_$*"; + sb_uc_voices = "%_+%_$*"; + sb_uc_normal = "$*"; + sb_uc_space = " "; + +}; + +formats = { + "fe-common/core" = { + daychange = "%Y< %%d %%b %%Y %Y>"; + nick_changed = " %K~:%w$0 %Y>> %W$1"; + join = " %Kj:$0{channick_hilight}:{chanhost_hilight $1}"; + part = " %Kp:$0{channick}%K:{chanhost $1}"; + quit = " %Kq:$0{channick}%K:{chanhost $1}"; + kick = " %rk%K:$0{channick}/%K{channel $1}/%K{nick $2}/%K{reason $3}"; + topic_unset = " %KT:[%G{channel %G$1}%K]/{nick %W$0}: %|%w$2"; + new_topic = " %KT:[%G{channel %G$1}%K]/{nick %W$0}: %|%w$2"; + + }; + "fe-common/irc" = { + chanmode_change = " %Km:%w{%wmode $1}%K/%n{nick $2}"; + whois = "%n---%nWhois%n---<%n $0 {chanhost_hilight $1@$2}%w%:%n|%n {whois ircname $3}"; + whois_idle = "%n|%n {whois idle %|$1d $2h $3m $4s}"; + whois_idle_signon = "%n|%n {whois idle %|$1d $2h $3m $4s {comment signon: $5}}"; + whois_server = "%n|%n {whois server %|$1 {comment $2}}"; + whois_oper = "%n|%n {whois {hilight $1}}"; + whois_registered = "%n|%n {whois has registered this nick}"; + whois_help = "%n|%n {whois is available for help}"; + whois_modes = "%n|%n {whois modes $1}"; + whois_realhost = "%n|%n {whois hostname $1-}"; + whois_usermode = "%n|%n {whois usermode $1}"; + whois_channels = "%n|%n {whois channels %|$1}"; + whois_away = "%n|%n {whois away %|$1}"; + whois_special = "%n|%n {whois info %|$1}"; + whois_extra = "%n|%n {whois extra %|$1}"; + end_of_whois = "%n`---------------------------------------------------------"; + whois_not_found = "%n>%w>%n>%n There is no such nick $0"; + }; +}; + diff --git a/static/screenshots/resources/screenrc_tenner b/static/screenshots/resources/screenrc_tenner new file mode 100644 index 0000000..cfbfd9c --- /dev/null +++ b/static/screenshots/resources/screenrc_tenner @@ -0,0 +1,71 @@ +# .screenrc +# sven michel +# www.tenr.de +# 05022006 + +# this shows a little toolbar at the bottom showing logname@host then numbered windows + #caption always "%{Gk}$LOGNAME@%H%{= kG} %?%-Lw%?%{= Gk}%n*%f %t%?(%u)%?%{= kG}%?%+Lw%?" + caption always "%{= dd}[$LOGNAME@%H%{= dd}] %?%-Lw%?%{+u dd}%n*%f %t%?(%u)%?%{= dd}%?%+Lw%?" + # farbe fuer: host bruecke actives rest_rechts + + #caption always '%{-b gk}%-w%{+b kg}%50>%n %t%{-b gk}%+w%< %=[%c] [%H]' + # caption always "%>%{wk}%?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw%?%<" + # caption always "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<" + # caption always "%?%F%{.RW}%?%3n %t%? [%h]%?" + # caption always "%{rk}%H %{gk}%c %{yk}%M%d %{wk}%?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw%?" + # caption always "%{kG}%?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{kG}%?%+Lw%?" + # caption always "%{rk}%H %{gk}%c %{yk}%M%d %{wk}%?%-Lw% ?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw%?" + # caption always "%{rk}%H%{gk} | %c %{yk}%d.%m.%Y | %?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw%? | %{rk} Load: %l %{wk}" + # caption always "%{=}%{+b kR}%H %{+b kY}%M %d %{+b kG}%0c %{+b kB}%?%-Lw%?%{+b kW}%n*%f %kt%?(%u)%?%{+bkB}%?%+Lw%? | %{kR} Load: %l %{kB}" + # caption always "%{=}%{+b kR}%H %{+b kY}%M %d %{+b kG}%0c %{+b kB}%?%-Lw%?%{+b kW}%n*%f %kt%?(%u)%?%{+bkB}%?%+Lw%? | %{kR} Load: %l %{kB}" + # cation always '%{-b}%{= wb}%-Lw%{= wr}%{+b}%n%f %t%{= wb}%{-b}%+Lw %{= wr} %=%c %Y-%m-%d' + + + + +#hardstatus alwayslastline " %H | %d-%m-%y %c | %-Lw%{= kc}%50> %n%f* %t %{-}%+Lw%<" +# sorendition +u kc # Farben der Statusleiste +# activity "activity in %n (%t) [%w:%s]~" +# bell "Action in %n (%t) [%w:%s]~" +# vbell_msg " *Beep!* " # Statt beep soll das dieser Text ausgegeben werden + + + + crlf off + +# turns off the copyright message + startup_message off + +# adds some extra rollback buffer + defscrollback 2000 + +# set the shell, quite easy this way + shell -$SHELL + + defmonitor on + +# notification in stupid keypesses :) + activity "%" + +# set the audio bell, with "off" you see the visual one which i need from time to time :) + vbell off + +# detach on hangup + autodetach on + +# binding the F1 - F8 keys to the first 8 screens, F11 = previous | F12 = next + bindkey -k k1 select 0 + bindkey -k k2 select 1 + bindkey -k k3 select 2 + bindkey -k k4 select 3 + bindkey -k k5 select 4 + bindkey -k k6 select 5 + bindkey -k k7 select 6 + bindkey -k k8 select 7 + bindkey -k F2 next + bindkey -k F1 prev + +# some other keybindings + #bind W screen -t 'DICTIONARY' links dict.tu-chemnitz.de + #bindkey ^f screen ssh slapfish.org + bind ^f screen -t 'DICTIONARY' links dict.tu-chemnitz.de diff --git a/static/screenshots/resources/serenity1280.jpg b/static/screenshots/resources/serenity1280.jpg new file mode 100644 index 0000000..59260ec Binary files /dev/null and b/static/screenshots/resources/serenity1280.jpg differ diff --git a/static/screenshots/resources/timeconkyrc_tenner b/static/screenshots/resources/timeconkyrc_tenner new file mode 100644 index 0000000..f132e18 --- /dev/null +++ b/static/screenshots/resources/timeconkyrc_tenner @@ -0,0 +1,125 @@ +# set to yes if you want tormo to be forked in the background +background no + +#cpu_avg_samples 3 +#net_avg_samples 3 + +# Use Xft? +use_xft yes + +# Xft font when Xft is enabled +#xftfont Bitstream Vera Sans:size=8 +#xftfont calibri:size=34:bold +#xftfont Arial:size=8 + +# Text alpha when using Xft +xftalpha 0.8 + +# mail spool +#mail_spool $MAIL + +# Update interval in seconds +update_interval 0.5 +# Create own window instead of using desktop (required in nautilus) +own_window yes +own_window_transparent yes +own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager + +# Use double buffering (reduces flicker, may not work for everyone) +double_buffer yes + +# Minimum size of text area +minimum_size 99 50 + +# Draw shades? +draw_shades no + +# Draw outlines? +draw_outline no + +# Draw borders around text +draw_borders yes + +# Stippled borders? +stippled_borders 8 + +# border margins +border_margin 4 + +# border width +border_width 0 + +# Default colors and also border colors +default_color white +default_shade_color black +default_outline_color black + +# Text alignment, other possible values are commented +#alignment top_left +alignment top_right +#alignment bottom_left +#alignment bottom_right + +# Gap between borders of screen and text +gap_x 5 +gap_y 117 + +# Subtract file system buffers from used memory? +no_buffers yes + +# set to yes if you want all text to be in uppercase +uppercase no + +# boinc (seti) dir +# seti_dir /opt/seti + +#xmms_player infopipe + +#${font -xos4-terminus-bold-*-*-*-14-*-*-*-*-*-iso10646-1}${color #078ba4}v:$mpd_vol $mpd_artist - $mpd_title +#${color #17afaa}${time %x :: %T} + + + +# stuff after 'TEXT' will be formatted on screen +#[ $nodename $kernel on $machine ] +#${color #f7f7f7}${font Bitstream Vera Sans:size=18}${time %H%M} + +# fast schwarz ${color #383838} +# fast weiss ${color #f7f7f7} +# dunkelgruen ${color #318043} +# bordaux ${color #AA4C4FE5898C} + +#${color #ffffff}${font calibri:size=25:bold}${time %H.%M} +#${font calibri:size=1:bold} +#${font Bitstream Vera Sans Mono:size=9:bold} up: ${upspeedf eth0} +#${font Bitstream Vera Sans Mono:size=9:bold}down: ${downspeedf eth0} + +#${color #ffffff}${font calibri:size=30:bold}${time %H}${color #ffffff}${font calibri:size=20}.${time %M} +#${font calibri:size=2:bold} +#${font calibri:size=8:bold} +#${cpubar 4} +#${membar 4} + + +TEXT +${font Bitstream Vera Sans Mono:size=11:bold}${time %d %b %G} +${font calibri:size=4:bold} +${cpubar 7} +${font calibri:size=4:bold} +${membar 7} +${font calibri:size=4:bold} +${upspeedgraph eth0 7,99 ffffff ffffff} +${font calibri:size=4:bold} +${downspeedgraph eth0 7,99 ffffff ffffff} +${font calibri:size=4:bold} +${font calibri:size=0:bold} +${if_mounted /media/cdrom0}${font Bitstream Vera Sans Mono:size=8:bold}${color #ffffff}dvd ${color #AA4C4F}${fs_bar 7 /media/cdrom0}$endif +${font calibri:size=0:bold} +${if_mounted /media/cdrom1}${font Bitstream Vera Sans Mono:size=8:bold}${color #ffffff}bnr ${color #AA4C4F}${fs_bar 7 /media/cdrom1}$endif +${font calibri:size=0:bold} +${if_mounted /media/windoz}${font Bitstream Vera Sans Mono:size=8:bold}${color #ffffff}win ${color #AA4C4F}${fs_bar 7 /windoz}$endif +${font calibri:size=0:bold} +${if_mounted /media/stick}${font Bitstream Vera Sans Mono:size=8:bold}${color #ffffff}usb ${color #AA4C4F}${fs_bar 7 /stick}$endif +${font calibri:size=0:bold} +${if_mounted /media/player}${font Bitstream Vera Sans Mono:size=8:bold}${color #ffffff}mp3 ${color #AA4C4F}${fs_bar 7 /player}$endif + diff --git a/themes/hugo-book b/themes/hugo-book index 036e037..7c78a39 160000 --- a/themes/hugo-book +++ b/themes/hugo-book @@ -1 +1 @@ -Subproject commit 036e037a63ba06ca366adb1a0c3a005d1a0b15b8 +Subproject commit 7c78a39c531aa2492ed7e92f2ce9dfb2c8c0d3fa diff --git a/utils/number-manpages.py b/utils/number-manpages.py new file mode 100644 index 0000000..370675c --- /dev/null +++ b/utils/number-manpages.py @@ -0,0 +1,30 @@ +import sys + +def main(): + + templ = '''--- +weight: {} +--- +''' + numbers = { + 'man-fluxbox.md': 1, + 'man-startfluxbox.md': 2, + 'man-fluxbox-keys.md': 3, + 'man-fluxbox-apps.md': 4, + 'man-client-patterns.md': 5, + 'man-fluxbox-menu.md': 6, + 'man-fluxbox-style.md': 7, + 'man-fluxbox-fbsetbg.md': 8, + 'man-fluxbox-fbsetroot.md': 9, + 'man-fluxbox-fbrun.md': 10, + 'man-fluxbox-remote.md': 11, + } + + id = sys.argv[1] + + if id in numbers: + print(templ.format(numbers[id])) + sys.stdout.write(sys.stdin.read()) + +if __name__ == "__main__": + main()