[libc-commits] [libc] f493b21 - [libc] Update look and feel of libc.llvm.org

Jeff Bailey via libc-commits libc-commits at lists.llvm.org
Fri Aug 5 11:18:46 PDT 2022


Author: Jeff Bailey
Date: 2022-08-05T18:18:40Z
New Revision: f493b21e1695ac08ea3cd54dc2c2b87c36f52a95

URL: https://github.com/llvm/llvm-project/commit/f493b21e1695ac08ea3cd54dc2c2b87c36f52a95
DIFF: https://github.com/llvm/llvm-project/commit/f493b21e1695ac08ea3cd54dc2c2b87c36f52a95.diff

LOG: [libc] Update look and feel of libc.llvm.org

This design is borrowed from the lldb folks (thank you!) to declutter
the page.

 * The version number at the top is removed.
 * Links are pushed over to a sidebar
 * The sidebar has headings

There are other minor changes:

* The warning about this project not being ready is now an RST "warning"
* Links to the Bug Reports and the Source Code are Added
* Refer to this project as either "The LLVM C LIbrary" or "The libc"

Tested:
Built locally

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D131242

Added: 
    libc/docs/_static/custom.css

Modified: 
    libc/docs/conf.py
    libc/docs/index.rst

Removed: 
    


################################################################################
diff  --git a/libc/docs/_static/custom.css b/libc/docs/_static/custom.css
new file mode 100644
index 0000000000000..e1e49f84c9034
--- /dev/null
+++ b/libc/docs/_static/custom.css
@@ -0,0 +1,100 @@
+pre {
+  padding: 7px;
+}
+
+div.document {
+  width: 90%;
+}
+
+div.body {
+  max-width: 90%;
+}
+
+div.note {
+  padding: 20px 20px 10px 20px;
+}
+
+div.note p.admonition-title {
+  font-size: 130%;
+}
+
+table.mapping {
+  width: 100%;
+}
+
+table.mapping td {
+  width: 50%;
+  padding: 5px;
+}
+
+table.mapping td.hed {
+  background: #606060;
+  color: #fefefe;
+  text-align: left;
+  border-bottom: 2px #fefefe solid;
+  font-weight: bold;
+}
+
+table.mapping td.header {
+  background: #eeeeee;
+}
+
+table.mapping td.content {
+  font-family: monospace;
+  padding-bottom: 15px;
+}
+
+/* Workaround for a Safari bug that would otherwise make table cells less wide
+than the containing text. This just sets it back to the default browser
+property.*/
+td {
+  -webkit-hyphens: manual !important;
+}
+
+div.sphinxsidebar .caption {
+  font-family: Helvetica, Verdana, sans-serif;
+  font-size: 10pt;
+  font-weight: bold;
+  color: #fefefe;
+  background: #606060;
+  margin-bottom: 0;
+  text-transform: uppercase;
+  padding: 7px;
+}
+
+div.sphinxsidebar a,
+div.sphinxsidebar a:hover {
+  border: none;
+}
+
+div.sphinxsidebar li {
+  padding-left: 7px;
+  border-bottom: 1px solid #fefefe;
+}
+
+div.sphinxsidebar li:hover {
+  background: #eeeeee;
+}
+
+div.sphinxsidebar ul {
+  background: #e9e9e9;
+  margin: 0px;
+  padding: 0px;
+}
+
+div.sphinxsidebar ul a {
+  font-family: Helvetica, Verdana, sans-serif;
+  font-size: 8pt;
+  display: block;
+  padding: 5px 0;
+  line-height: 14pt;
+}
+
+div.sphinxsidebar ul li.toctree-l1 > a {
+  font-size: 100%;
+}
+
+div.sphinxsidebar h3 {
+  /* Hide Navigation. */
+  display: none;
+}

diff  --git a/libc/docs/conf.py b/libc/docs/conf.py
index 3a0e2a43ce250..941c9e5224adc 100644
--- a/libc/docs/conf.py
+++ b/libc/docs/conf.py
@@ -48,9 +48,9 @@
 # built documents.
 #
 # The short X.Y version.
-version = '14.0'
+# version = '14.0'
 # The full version, including alpha/beta/rc tags.
-release = '14.0'
+# release = '14.0'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
@@ -91,19 +91,24 @@
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
 # a list of builtin themes.
-html_theme = 'haiku'
+#html_theme = 'haiku'
+html_theme = 'alabaster'
 
 # Theme options are theme-specific and customize the look and feel of a theme
 # further.  For a list of options available for each theme, see the
 # documentation.
-#html_theme_options = {}
+html_theme_options = {
+     'font_size': '11pt',
+    # Don't generate any links to GitHub.
+    'github_button' : 'false',
+}
 
 # Add any paths that contain custom themes here, relative to this directory.
 #html_theme_path = []
 
 # The name for this set of Sphinx documents.  If None, it defaults to
 # "<project> v<release> documentation".
-#html_title = None
+html_title = 'The LLVM C Library'
 
 # A shorter title for the navigation bar.  Default is the same as html_title.
 #html_short_title = None
@@ -120,7 +125,13 @@
 # Add any paths that contain custom static files (such as style sheets) here,
 # relative to this directory. They are copied after the builtin static files,
 # so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = []
+html_static_path = ['_static']
+#
+#html_context = {
+#    'css_files': [
+#        '_static/libc.css'
+#        ],
+#    }
 
 # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
 # using the given strftime format.

diff  --git a/libc/docs/index.rst b/libc/docs/index.rst
index e67ef77b1027a..cee6a9bbe2800 100644
--- a/libc/docs/index.rst
+++ b/libc/docs/index.rst
@@ -1,13 +1,10 @@
-===============================================
-llvm-libc: An ISO C-conformant Standard Library
-===============================================
+==================
+The LLVM C Library
+==================
 
-**llvm-libc library is not complete.  If you need a fully functioning libc right
-now, you should continue to use your standard system libc.**
-
-.. contents:: Table of Contents
-  :depth: 4
-  :local:
+.. warning::
+  The libc is not complete.  If you need a fully functioning C library right
+  now, you should continue to use your standard system libraries.
 
 Introduction
 ============
@@ -36,34 +33,43 @@ Platform Support
 ================
 
 Most development is currently targeting x86_64 and aarch64 on Linux.  Several
-functions in llvm-libc have been tested on Windows.  The Fuchsia platform is
-slowly replacing functions from its bundled libc with functions from llvm-libc.
+functions in the libc have been tested on Windows.  The Fuchsia platform is
+slowly replacing functions from its bundled libc with functions from this
+project.
 
 ABI Compatibility
 =================
 
-llvm-libc is written to be ABI independent.  Interfaces are generated using
+The libc is written to be ABI independent.  Interfaces are generated using
 LLVM's tablegen, so supporting arbitrary ABIs is possible.  In it's initial
-stages llvm-libc is not offering ABI stability in any form.
+stages there is no ABI stability in any form.
+
+.. toctree::
+   :hidden:
+   :maxdepth: 1
+   :caption: Documentation
 
-Other Interesting Documentation
-===============================
+   build_system
+   clang_tidy_checks
+   entrypoints
+   fuzzing
+   ground_truth_specification
+   header_generation
+   implementation_standard
+   api_test
+   layering
+   mechanics_of_public_api
+   redirectors
+   source_layout
+   strings
+   runtimes_build
+   stdio
+   math
 
 .. toctree::
+   :hidden:
+   :maxdepth: 1
+   :caption: External Links
 
-    build_system
-    clang_tidy_checks
-    entrypoints
-    fuzzing
-    ground_truth_specification
-    header_generation
-    implementation_standard
-    api_test
-    layering
-    mechanics_of_public_api
-    redirectors
-    source_layout
-    strings
-    runtimes_build
-    stdio
-    math
+   Source Code <https://github.com/llvm/llvm-project/tree/main/libc>
+   Bug Reports <https://github.com/llvm/llvm-project/issues/labels/libc/>


        


More information about the libc-commits mailing list