Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
1e3cb37
Remove unused layout code
XhmikosR Sep 15, 2026
bbd2195
Use front matter defaults for the docs layout
XhmikosR Sep 15, 2026
8c7b52e
Clean up _config.yml
XhmikosR Sep 15, 2026
ccaed57
Fix home page title and add a site description
XhmikosR Sep 15, 2026
5f03f96
Use relative_url in layouts and includes
XhmikosR Sep 15, 2026
2814d55
Highlight the current page in the navigation
XhmikosR Sep 15, 2026
976434c
Use landmark elements and a responsive grid
XhmikosR Sep 15, 2026
ca1f68c
Fix FAQ heading markup
XhmikosR Sep 15, 2026
427e236
Load AdSense in the head, production only
XhmikosR Sep 15, 2026
b561fcb
Make the CLI video responsive
XhmikosR Sep 15, 2026
02d2b0d
Clean up local tooling
XhmikosR Sep 15, 2026
fd69af9
Fix bin/jekyll-page
XhmikosR Sep 15, 2026
827094f
Update gems with Dependabot
XhmikosR Sep 15, 2026
d5c309b
Use dashes for unordered lists
XhmikosR Sep 15, 2026
7b61073
Use a numbered list for Task Scheduler steps
XhmikosR Sep 15, 2026
e47780a
Replace "e.g." and "i.e."
XhmikosR Sep 15, 2026
af22a25
Remove em-dashes
XhmikosR Sep 15, 2026
85a7789
Omit "Microsoft" before "Windows"
XhmikosR Sep 15, 2026
156db4c
Fix README heading levels
XhmikosR Sep 15, 2026
362b180
Renumber ordered lists
XhmikosR Sep 15, 2026
33b2e77
Start body headings at h2
XhmikosR Sep 15, 2026
3b043e7
Fix list spacing and indentation
XhmikosR Sep 15, 2026
c0c4f38
Remove extra blank lines
XhmikosR Sep 15, 2026
01a2054
Fix nested list in cookie manager troubleshooting
XhmikosR Sep 15, 2026
197a85b
Use an offcanvas menu for the navigation on phones
XhmikosR Sep 15, 2026
5c16241
Fix "IndexedDB" typo
XhmikosR Sep 15, 2026
1518137
Update gems
XhmikosR Sep 15, 2026
d92fd52
src/index.md: remove unneeded title
XhmikosR Sep 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,16 @@ updates:
update-types:
- 'minor'
- 'patch'
- package-ecosystem: 'bundler'
directory: '/'
cooldown:
default-days: 7
schedule:
interval: 'monthly'
groups:
bundler:
patterns:
- '*'
update-types:
- 'minor'
- 'patch'
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ _site
.bundle/
vendor/
.jekyll-cache/
.jekyll-metadata

# Local Netlify folder
.netlify
Expand Down
4 changes: 2 additions & 2 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ GEM
addressable (2.9.0)
public_suffix (>= 2.0.2, < 8.0)
base64 (0.3.0)
bigdecimal (4.1.2)
bigdecimal (4.1.3)
colorator (1.1.0)
concurrent-ruby (1.3.8)
csv (3.3.6)
Expand Down Expand Up @@ -107,7 +107,7 @@ DEPENDENCIES
CHECKSUMS
addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
bigdecimal (4.1.3) sha256=61ebe1e5e559bdc3cc6f2c0ee7f427321fc838f59611c294356eb04d6e21cf66
colorator (1.1.0) sha256=e2f85daf57af47d740db2a32191d1bdfb0f6503a0dfbc8327d0c9154d5ddfc38
concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1
csv (3.3.6) sha256=aba61e7e507a66f03d45cb1f3c4b6359861c3504038b422962875dce099e4456
Expand Down
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Makefile for BleachBit documentation site

.PHONY: help clean serve build install update \
.PHONY: help clean serve serve-prod build install update \
docker-serve docker-build docker-shell docker-down

# Default target
Expand All @@ -9,6 +9,7 @@ help:
@echo " help - Show this help message"
@echo " clean - Remove generated files and dependencies"
@echo " serve - Start local development server"
@echo " serve-prod - Start local server without drafts"
@echo " build - Build the static site"
@echo " install - Install Ruby dependencies"
@echo " update - Update Ruby dependencies"
Expand Down
23 changes: 11 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This is a Jekyll site built with Ruby gems. Are you a user wanting to learn how

Otherwise, if you want to build the documentation site, follow the instructions below.

# Build
## Build

```sh
sudo apt-get update
Expand All @@ -16,7 +16,7 @@ bundle exec jekyll serve
bundle exec jekyll build
```

# Build with Docker
## Build with Docker

To skip installing Ruby and gems locally, use Docker or Podman:

Expand All @@ -30,17 +30,16 @@ make docker-down # stop the container
The first run writes `.env` with your host uid/gid, so generated files
are owned by you.

# Help improve
## Help improve

1. Log in to GitHub.
2. Fork this repository to make your own copy.
3. Make the edits in your own repository.
4. Submit a pull request to merge your changes.

## Style guide

# Style guide

## Writing style
### Writing style

- Use sentence case for all headings.
- Avoid em-dashes; use commas, colons, or rewrite the sentence.
Expand All @@ -49,7 +48,7 @@ are owned by you.
- Write "that is" instead of "i.e."
- Omit "Microsoft" when referring to Windows.

## UI instructions
### UI instructions

- Bold UI elements the user clicks, selects, or toggles:
- buttons: click **Delete**
Expand All @@ -65,7 +64,7 @@ are owned by you.
- Use `+` to join keys, no spaces
- Capitalize key names: `Ctrl`, `Shift`, `Alt`, `Enter`, `Delete`

## Headings
### Headings

- Set `title` and optionally `subtitle` in the front matter;
the template renders both: do not repeat them in the body
Expand All @@ -78,25 +77,25 @@ are owned by you.
- Use sentence case for both title and subtitle (in front matter)
and for body headings: `## Limits to know`, not `## Limits To Know`

## Horizontal rules
### Horizontal rules

- Use `---` only for major structural breaks, not between every section
- Do not use `---` immediately after a heading

## Formatting
### Formatting

- Use `-` for unordered lists, not `*`.
- Use numbered lists for steps or sequences.
- Use bullet lists for items that don't need numbering.
- Wrap long lines to keep diffs readable.

## Capitalization of proper nouns
### Capitalization of proper nouns

- BleachBit: always CamelCase
- Winapp2: capitalized when referring to the community project
- `winapp2.ini`: always lowercase in code ticks; it is a filename
- Windows, Linux, macOS: follow each platform's own styling

# License
## License

The documentation is under the GNU General Public License version 3 or later
45 changes: 17 additions & 28 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,15 @@
# Site title and subtitle. This is used in _includes/header.html
# Site title, used in _includes/header.html
title: BleachBit Documentation
#subtitle: 'Documentation for BleachBit'
# Used by jekyll-seo-tag for the home page title and default meta description
tagline: Official user and developer guides
description: Official user and developer guides for BleachBit, a free and open-source system cleaner.
url: "https://docs.bleachbit.org"

# if you wish to integrate disqus on pages set your shortname here
disqus_shortname: ''
disqus_shortname: ""

# if you use google analytics, add your tracking id here
google_analytics_id: ''

# Enable/show navigation. There are there options:
# 0 - always hide
# 1 - always show
# 2 - show only if docs are present
navigation: 2

# URL to source code, used in _includes/footer.html
#codeurl: 'https://github.com/bruth/jekyll-docs-template'
google_analytics_id: ""

# Navigation sections, in order. Key is the page's `category`.
sections:
Expand All @@ -27,9 +20,7 @@ sections:
dev: Developers
post: Posts

# Keep as an empty string if served up at the root. If served up at a specific
# path (e.g. on GitHub pages) leave off the trailing slash, e.g. /my-project
baseurl: ''
baseurl: ""

permalink: pretty

Expand All @@ -38,38 +29,36 @@ collections:
output: true
permalink: /:categories/:name/

# Syntax highlighting
highlighter: rouge
defaults:
- scope:
path: ""
type: docs
values:
layout: page

encoding: "utf-8"
timezone: UTC
strict_front_matter: true

liquid:
error_mode: warn
strict_filters: false
strict_variables: false
error_mode: strict
strict_filters: true

# Sass
sass:
style: compressed
style: compressed

# Since these are pages, it doesn't really matter
# Docs have dates, so don't skip ones dated in the future
future: true

# Site files live in src/, repo tooling stays in the root
source: src

# Use the kramdown Markdown renderer
markdown: kramdown

# Netlify preview rules
include:
- _redirects

plugins:
- jekyll-last-modified-at
# https://help.github.com/articles/redirects-on-github-pages/
- jekyll-redirect-from
- jekyll-seo-tag
- jekyll-sitemap
35 changes: 19 additions & 16 deletions bin/jekyll-page
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
#!/usr/bin/env ruby

require 'date'
require 'json'
require 'optparse'
require 'shellwords'
require 'yaml'

options = {
# Expects to be in the bin/ sub-directory by default
Expand Down Expand Up @@ -33,32 +35,38 @@ DOCS_DIR = "#{BASE_DIR}/src/_docs"

# Ensure the _docs directory exists (we are in the correct directory)
if not Dir.exist?(DOCS_DIR)
puts "#{DOCS_DIR} directory does not exist"
exit
abort "#{DOCS_DIR} directory does not exist"
end

if not title or not category
puts parser
exit
abort parser.to_s
end

sections = YAML.safe_load_file("#{BASE_DIR}/_config.yml")['sections']
if not sections.key?(category)
abort "Unknown category #{category}, use one of: #{sections.keys.join(', ')}"
end

if options[:edit] and ENV['EDITOR'].to_s.strip.empty?
abort 'No $EDITOR variable set'
end

if not filename
filename = title.downcase.gsub(/[^a-z0-9\s]/, '').gsub(/\s+/, '-')
end

now=DateTime.now().strftime('%F %T')
now = Time.now.strftime('%F %T')

filepath = "#{DOCS_DIR}/#{filename}.md"

if File.exist?(filepath)
puts "File #{filepath} already exists"
exit
abort "File #{filepath} already exists"
end

# A JSON string is also a valid YAML string, so quotes in the title are escaped
content = <<END
---
layout: page
title: \"#{title}\"
title: #{title.to_json}
category: #{category}
date: #{now}
---
Expand All @@ -71,10 +79,5 @@ File.open(filepath, 'w') do |file|
end

if options[:edit]
if not ENV['EDITOR']
puts 'No $EDITOR variable set'
exit
end
puts ENV['EDITOR']
exec("#{ENV['EDITOR']} #{filepath}")
exec(*Shellwords.split(ENV['EDITOR']), filepath)
end
4 changes: 2 additions & 2 deletions src/404.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@ sitemap: false

> 🧹 **Oops! This page has been swept away.**
>
> Like your browser cache, your cookies, and your deepest secretsthis page no longer exists.
> Like your browser cache, your cookies, and your deepest secrets, this page no longer exists.
> *BleachBit cleaned it up. Or maybe it was never here.*

---

## Options

- [Return to Home]({{ site.baseurl }}/)
- [Return to Home]({{ '/' | relative_url }})
- [Report a Problem](https://www.bleachbit.org/contact/): If you believe this is an error, please let us know so we can fix it.
36 changes: 18 additions & 18 deletions src/_data/faqs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,20 +119,20 @@ main:
Mode](https://wiki.ubuntu.com/RecoveryMode) like this:

1. Reboot the system.
1. Choose the boot option *Advanced options for Ubuntu*.
1. Choose a recent kernel with *(recovery mode)*.
1. In the Recovery Menu, choose _clean_. Note: this will mount your filesystem.
1. If this cleans enough space, boot normally and then clean the cache as mentioned above.
1. Otherwise, choose _root_ from the Recovery Menu.
1. Type this command to switch to your normal user account: `su username -`. (Replace _username_ with your username.)
1. Run this command to clean the user's cache: `rm -rf ~/.cache/`.
1. Reboot.
2. Choose the boot option *Advanced options for Ubuntu*.
3. Choose a recent kernel with *(recovery mode)*.
4. In the Recovery Menu, choose _clean_. Note: this will mount your filesystem.
5. If this cleans enough space, boot normally and then clean the cache as mentioned above.
6. Otherwise, choose _root_ from the Recovery Menu.
7. Type this command to switch to your normal user account: `su username -`. (Replace _username_ with your username.)
8. Run this command to clean the user's cache: `rm -rf ~/.cache/`.
9. Reboot.

In the future, you may avoid this situation by disabling the BleachBit option **System -
Free Disk Space**. Otherwise, do not interrupt BleachBit while it is working.
- question: How many passes does BleachBit make for the overwrite file option (shredding file)?
answer: See [Shred files and wipe disks](/doc/shred-files-and-wipe-disks/).
- question: How do I see BleachBit in my own language on Microsoft Windows?
- question: How do I see BleachBit in my own language on Windows?
answer: |
There are a few ways to affect the language of the BleachBit user interface.

Expand All @@ -141,9 +141,9 @@ main:

To force BleachBit to always show in English, you have a few options:

* Download and install the English installer instead of the regular installer.
* If using the regular (non-English-only) installer, uncheck the option to install translations.
* Manually delete the translations. The default location for translations is `c:\Program Files (x86)\BleachBit\share\locale`.
- Download and install the English installer instead of the regular installer.
- If using the regular (non-English-only) installer, uncheck the option to install translations.
- Manually delete the translations. The default location for translations is `c:\Program Files (x86)\BleachBit\share\locale`.

The language chosen in the BleachBit installer does not affect the BleachBit application:
it affects only the language of the installer.
Expand All @@ -164,7 +164,7 @@ things_to_know:
answer: |
Cache generally improves the performance of your computer. For example, browser cache
prevents many files (such as pieces of web pages) from being downloaded again. Getting the
file from the cache is much faster than downloading it&mdash;even with fast bandwidth.
file from the cache is much faster than downloading it, even with fast bandwidth.
Applications (such as web browsers) normally delete the useless parts of cache to prevent
it from growing too large and to make room for new, potentially-useful data.

Expand All @@ -176,10 +176,10 @@ things_to_know:
answer: |
Cookies are not inherently evil or dangerous. The following statements are *false*:

* Cookies have no uses besides advertising
* Cookies can infect a computer like a virus
* Cookies cause popup ads
* Cookies can read arbitrary information from your computer (such as your name, your credit card, or private documents)
- Cookies have no uses besides advertising
- Cookies can infect a computer like a virus
- Cookies cause popup ads
- Cookies can read arbitrary information from your computer (such as your name, your credit card, or private documents)

Cookies perform useful functions such as maintaining your login information: this saves
you the time of logging in again. Many web sites use cookies to make honest improvements
Expand All @@ -189,7 +189,7 @@ things_to_know:
disabled (using unique information such as IP address, user agent, plugins, etc), so
disabling cookies may not have the intended effect.

On the other hand, some web sites use tricks (e.g., "evercookie" technology) to resurrect
On the other hand, some web sites use tricks (for example, "evercookie" technology) to resurrect
deleted cookies and try to track users between browsers on the same computer. Using
another trick, cookies can track visitors between web sites for behavioural ad targeting:
for example, once you visited an online camping store, and suddenly every other web site
Expand Down
Loading