# Customizing Osprey Delight makes heavy use of various Hugo features, e.g. [modules](https://gohugo.io/hugo-modules/). It directly benefits from Hugo's virtual file system and [directory structure](https://gohugo.io/getting-started/directory-structure/), [partials](https://gohugo.io/templates/partials/), as well as using the awesome [Hugo Pipes](https://gohugo.io/hugo-pipes/) whenever it makes sense. This also means that you normally do not need to maintain a separate fork due to the wide availability of customization options. ## Custom SCSS Place a file named `_custom.scss` in your `assets/sass/` folder (create the directories if needed). This will override the theme's `_custom.scss` which is loaded in the internal main SCSS. > The theme's built-in `_custom.scss` contains useful customization examples, so don't be afraid to copy, override and experiment with it. ### Theming Get creative and build your own theme for Osprey Delight! A theme ([example dark theme](./themes/osprey-delight/assets/themes/dedark)) consists of three optional files: File | Purpose | Recommendation --------------------|------------------------------------------------------------------- |------------------------ `_colors.scss` | Colors | Use a color scheme generator site (e.g. "coolors") to get some ideas, align with your logo's colors. `_fontface.scss` | Font settings | Use [Google fonts](https://fonts.google.com/) for a font that fits. Tools such as [webfont helper](https://google-webfonts-helper.herokuapp.com/fonts) help you with independently self-hosting the font. `_custom.scss` | Any other custom adaptions | Just like the [custom SCSS described before](#custom-scss), but theme-local instead globally scoped. Set the theme in your config.yaml, e.g.: ```yaml Params: # ... theme: "dedark" ``` ### Syntax Highlighting (for Blog) Limiting external dependencies is important when it comes performance, therefore only Hugo's internal [Chroma Syntax Highlighting](https://gohugo.io/content-management/syntax-highlighting/) is supported out of the box. Here's how to use it: 1. Generate a Chromastyle of your choice (in this case `solarized-dark`) as `_custom.scss` in project root: `hugo gen chromastyles --style=solarized-dark > _custom.scss` 2. Move the file to `assets/sass/` folder 3. Add `pygmentsUseClasses = true` to your config.yaml > Refer to [the official Hugo documentation](https://gohugo.io/content-management/syntax-highlighting/) for more info. ## Templates In this section, you can learn how to adjust templates or theme structure to your needs. ### Add your own sections Adjust the config.yaml file by adding another entry to `menu`, for instance one for music: ```yaml Menu: Main: # ... - name: "Music" identifier: "music" url: "/#music" weight: 2 ``` This will create a section with name "Music" in the nav bar and renders the content of `content/music.md` given by the identifier. If you need further styling of this section you can place a `music.html` partial in `layouts/partials/sections` (e.g. by using the `default.html` in the same folder as starting point). The weight determines the position on the page as well as in the nav bar. ### Advanced: Extend the head In case you want to load custom HTML for additional scripts etc. inside the page's `head`: Place a file named `head-extended.html` in your `layouts/partials/` folder (create the directories if needed). This file can e.g. contain additional `