HUGO

  • Новости
  • Документация
  • Темы
  • Витрина
  • Сообщество
  • GitHub
  • Telegram
Star

Что на этой странице

  • Настройка выделения синтаксиса
  • Генерация синтаксиса подсветки CSS
  • Подсветка шорткода
    • Пример: Подсветка шорткода
  • Подсветка шаблона функции
  • Подсветка в ограничениях кода
  • Список языков выделения цветности
CONTENT MANAGEMENT

Подсветка синтаксиса

Hugo поставляется с действительно быстрой подсветкой синтаксиса от Chroma.

Хьюго использует Chroma в качестве подсветки кода; он построен на Go и действительно очень быстр - и по наиболее важным частям совместим с Pygments, который мы использовали раньше.

Настройка выделения синтаксиса

Смотрите настройка выделения.

Генерация синтаксиса подсветки CSS

Если Вы работаете с pygmentsUseClasses=true в конфигурации Вашего сайта, Вам понадобится таблица стилей.

Вы можете создать ее с помощью Hugo:

hugo gen chromastyles --style=monokai > syntax.css

Запустите hugo gen chromastyles -h для получения дополнительных опций. Смотрите https://xyproto.github.io/splash/docs/ для галереи доступных стилей.

Подсветка шорткода

Подсветка осуществляется с помощью встроенного шорткода highlight. highlight принимает ровно один обязательный параметр для выделения языка программирования и требует закрывающего шорткода. Обратите внимание, что highlight не используется для выделения javascript на стороне клиента.

Параметры:

  • linenos: настроить номера строк. Допустимые значения: true, false, table или inline. false отключит номера строк, если он настроен для включения в конфигурации сайта. table предоставит блоки кода, удобные для копирования и вставки.
  • hl_lines: перечисляет набор номеров строк или диапазонов номеров строк, которые необходимо выделить.
  • linenostart=199: начинает отсчет номеров строк с 199.
  • anchorlinenos: Настроить якоря для номеров строк. Допустимые значения: true или false;
  • lineanchors: Настройте префикс для якорей в номерах строк. Будет иметь суффикс -, поэтому ссылка на строку номер 1 с опцией lineanchors=prefix добавляет к странице привязку prefix-1.

Пример: Подсветка шорткода

{{< highlight go "linenos=table,hl_lines=8 15-17,linenostart=199" >}}
// ... code
{{< / highlight >}}

Дает следующее:

199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
// GetTitleFunc returns a func that can be used to transform a string to
// title case.
//
// The supported styles are
//
// - "Go" (strings.Title)
// - "AP" (see https://www.apstylebook.com/)
// - "Chicago" (see https://www.chicagomanualofstyle.org/home.html)
//
// If an unknown or empty style is provided, AP style is what you get.
func GetTitleFunc(style string) func(s string) string {
  switch strings.ToLower(style) {
  case "go":
    return strings.Title
  case "chicago":
    return transform.NewTitleConverter(transform.ChicagoStyle)
  default:
    return transform.NewTitleConverter(transform.APStyle)
  }
}

Подсветка шаблона функции

Смотрите подсветка.

Подсветка в ограничениях кода

По умолчанию выделение в границах кода включено.

```go {linenos=table,hl_lines=[8,"15-17"],linenostart=199}
// ... code
```

Дает следующее:

199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
// GetTitleFunc returns a func that can be used to transform a string to
// title case.
//
// The supported styles are
//
// - "Go" (strings.Title)
// - "AP" (see https://www.apstylebook.com/)
// - "Chicago" (see https://www.chicagomanualofstyle.org/home.html)
//
// If an unknown or empty style is provided, AP style is what you get.
func GetTitleFunc(style string) func(s string) string {
  switch strings.ToLower(style) {
  case "go":
    return strings.Title
  case "chicago":
    return transform.NewTitleConverter(transform.ChicagoStyle)
  default:
    return transform.NewTitleConverter(transform.APStyle)
  }
}

Обратите внимание, что только Goldmark поддерживает передачу атрибутов, таких как hl_lines, и важно, чтобы он не содержал пробелов. Смотрите goldmark-highlighting для получения дополнительной информации.

Параметры такие же, как и в highlighting shortcode, включая linenos=false, но обратите внимание на немного другой синтаксис атрибута Markdown.

Список языков выделения цветности

Полный список лексеров Chroma и их псевдонимов (который является идентификатором, используемым в функции шаблона highlight или при выделении в ограждениях кода):

ABAP
ABAP, abap
ABNF
abnf
ANTLR
antlr
APL
apl
ActionScript
actionscript, as
ActionScript 3
actionscript3, as, as3
Ada
ada, ada2005, ada95, adb, ads
Angular2
ng2
ApacheConf
aconf, apache, apacheconf, conf, htaccess
AppleScript
applescript
Arduino
arduino, ino
Awk
awk, gawk, mawk, nawk
BNF
bnf
Ballerina
bal, ballerina
Base Makefile
*, bsdmake, mak, make, makefile, mf, mk
Bash
bash, bash_*, bashrc, ebuild, eclass, env, exheres-0, exlib, ksh, sh, shell, zsh, zshrc
Batchfile
bat, batch, cmd, dosbatch, winbatch
BibTeX
bib, bibtex
BlitzBasic
b3d, bb, blitzbasic, bplus, decls
Brainfuck
b, bf, brainfuck
C
c, h, idc
C#
c#, cs, csharp
C++
C, CPP, H, c++, cc, cp, cpp, cxx, h++, hh, hpp, hxx
CFEngine3
cf, cf3, cfengine3
CMake
cmake, txt
COBOL
COB, CPY, cob, cobol, cpy
CSS
css
Caddyfile
caddy, caddyfile
Caddyfile Directives
caddy-d, caddyfile-d, caddyfile-directives
Cap'n Proto
capnp
Cassandra CQL
cassandra, cql
Ceylon
ceylon
ChaiScript
chai, chaiscript
Cheetah
cheetah, spitfire, spt, tmpl
Clojure
clj, clojure
CoffeeScript
coffee, coffee-script, coffeescript
Common Lisp
cl, common-lisp, lisp
Coq
coq, v
Crystal
cr, crystal
Cython
cython, pxd, pxi, pyrex, pyx
D
d, di
DTD
dtd
Dart
dart
Diff
diff, patch, udiff
Django/Jinja
django, jinja
Docker
docker, dockerfile
EBNF
ebnf
Elixir
elixir, ex, exs
Elm
elm
EmacsLisp
el, elisp, emacs, emacs-lisp
Erlang
erl, erlang, es, escript, hrl
FSharp
fs, fsharp, fsi
Factor
factor
Fish
fish, fishshell, load
Forth
forth, frt, fs, fth
Fortran
F03, F90, f03, f90, fortran
GAS
S, asm, gas, s
GDScript
gd, gdscript
GLSL
frag, geo, glsl, vert
Genshi
genshi, kid, xml+genshi, xml+kid
Genshi HTML
html+genshi, html+kid
Genshi Text
genshitext
Gherkin
Cucumber, FEATURE, Gherkin, cucumber, feature, gherkin
Gnuplot
gnuplot, plot, plt
Go
go, golang
Go HTML Template
go-html-template
Go Text Template
go-text-template
GraphQL
gql, graphql, graphqls
Groovy
gradle, groovy
HCL
hcl
HLB
hlb
HTML
htm, html, xhtml, xslt
HTTP
http
Handlebars
handlebars
Haskell
haskell, hs
Haxe
haxe, hx, hxsl
Hexdump
hexdump
Hy
hy, hylang
INI
cfg, dosini, editorconfig, gitconfig, inf, ini
Idris
idr, idris
Igor
igor, igorpro, ipf
Io
io
J
ijs, j
JSON
json
Java
java
JavaScript
javascript, js, jsm
Julia
jl, julia
Jungle
jungle
Kotlin
kotlin, kt
LLVM
ll, llvm
Lighttpd configuration file
lighttpd, lighty
Lua
lua, wlua
MLIR
mlir
Mako
mako, mao
Mason
m, mason, mc, mhtml, mi
Mathematica
cdf, ma, mathematica, mma, nb, nbp
Matlab
m, matlab
MiniZinc
MZN, dzn, fzn, minizinc, mzn
Modula-2
def, m2, mod, modula2
MonkeyC
mc, monkeyc
MorrowindScript
morrowind, mwscript
MySQL
mysql, sql
Myghty
myghty, myt
NASM
ASM, asm, nasm
Newspeak
newspeak, ns2
Nginx configuration file
conf, nginx
Nim
nim, nimrod
Nix
nix, nixos
OCaml
ml, mli, mll, mly, ocaml
Objective-C
h, m, obj-c, objc, objective-c, objectivec
Octave
m, octave
OpenSCAD
openscad, scad
Org Mode
org, orgmode
PHP
inc, php, php3, php4, php5, php[345]
PHTML
phtml
PL/pgSQL
plpgsql
POVRay
inc, pov
PacmanConf
conf, pacmanconf
Perl
perl, pl, pm, t
Pig
pig
PkgConfig
pc, pkgconfig
Pony
pony
PostScript
eps, postscr, postscript, ps
PostgreSQL SQL dialect
postgres, postgresql
PowerShell
posh, powershell, ps1, psm1
Prolog
ecl, pl, pro, prolog
PromQL
promql
Protocol Buffer
proto, protobuf
Puppet
pp, puppet
Python
py, python, pyw, sage, sc, tac
Python 3
py3, python3
QBasic
BAS, bas, basic, qbasic
R
R, Renviron, Rhistory, Rprofile, S, r, s, splus
Racket
racket, rkt, rktd, rktl
Ragel
ragel
ReasonML
re, reason, reasonml, rei
Rexx
arexx, rex, rexx, rx
Ruby
duby, gemspec, rake, rb, rbw, rbx, ruby
Rust
in, rs, rust
SAS
SAS, sas
SCSS
scss
SPARQL
rq, sparql
SQL
sql
SYSTEMD
service, systemd
Sass
sass
Scala
scala
Scheme
scheme, scm, ss
Scilab
sce, sci, scilab, tst
Smalltalk
smalltalk, squeak, st
Smarty
smarty, tpl
Snobol
snobol
Solidity
sol, solidity
SquidConf
conf, squid, squid.conf, squidconf
Standard ML
fun, sig, sml
Stylus
styl, stylus
Swift
swift
TASM
ASM, asm, tasm
TOML
toml
TableGen
tablegen, td
Tcl
rvt, tcl
Tcsh
csh, tcsh
TeX
aux, latex, tex, toc
Termcap
src, termcap
Terminfo
src, terminfo
Terraform
terraform, tf
Thrift
thrift
TradingView
tradingview, tv
Transact-SQL
t-sql, tsql
Turing
tu, turing
Turtle
ttl, turtle
Twig
twig
TypeScript
ts, tsx, typescript
TypoScript
ts, typoscript
TypoScriptCssData
typoscriptcssdata
TypoScriptHtmlData
typoscripthtmldata
VB.net
bas, vb, vb.net, vbnet
VHDL
vhd, vhdl
VimL
exrc, gvimrc, vim, vimrc
WDTE
wdte
XML
rss, svg, wsdl, wsf, xml, xsd, xsl, xslt
Xorg
conf, xorg.conf
YAML
yaml, yml
YANG
yang
Zig
zig
cfstatement
cfs
markdown
markdown, md, mkd
plaintext
no-highlight, plain, text, txt
reStructuredText
rest, restructuredtext, rst
react
jsx, react
reg
reg, registry
systemverilog
sv, svh, systemverilog
verilog
v, verilog
vue
vue, vuejs

Смотрите также

  • highlight
  • Конфигурация разметки
  • О Хьюго
    • Обзор
    • Модель безопасности Хьюго
    • Hugo и GDPR
    • Что такое Хьюго
    • Функции Хьюго
    • Преимущества статики
    • Лицензия
  • С чего начать
    • Обзор начала работы
    • Быстрый старт
    • Установка Хьюго
    • Основы использования
    • Структура каталогов
    • Настройка
    • Внешние ресурсы обучения
  • Модули Хьюго
    • Обзор модулей Hugo
    • Настройка модулей
    • Использование модулей Hugo
    • Компоненты темы
  • Управление контентом
    • Обзор управления контентом
    • Организация
    • Пакеты страниц
    • Форматы контента
    • Front Matter
    • Page Resources
    • Параметры сборки
    • Обработка изображений
    • Шорткоды
    • Связанный контент
    • Разделы
    • Типы контента
    • Архетипы
    • Таксономии
    • Содержание
    • Ссылки и перекрестные ссылки
    • Управление URL-адресами
    • Меню
    • Статические файлы
    • Комментарии
    • Многоязычный и i18n
    • Подсветка синтаксиса
  • Templates
    • Templates Overview
    • Introduction
    • Template Lookup Order
    • Custom Output Formats
    • Base Templates and Blocks
    • List Page Templates
    • Homepage Template
    • Section Templates
    • Taxonomy Templates
    • Single Page Templates
    • Content View Templates
    • Data Templates
    • Partial Templates
    • Shortcode Templates
    • Local File Templates
    • 404 Page
    • Menu Templates
    • Pagination
    • RSS Templates
    • Sitemap Template
    • Robots.txt
    • Internal Templates
    • Alternative Templating
    • Template Debugging
  • Functions
    • Functions Quick Reference
    • .AddDate
    • .Format
    • .Get
    • .GetPage
    • .HasMenuCurrent
    • .IsMenuCurrent
    • .Param
    • .Render
    • .RenderString
    • .Scratch
    • .Unix
    • absLangURL
    • absURL
    • after
    • anchorize
    • append
    • apply
    • base64
    • chomp
    • complement
    • cond
    • countrunes
    • countwords
    • dateFormat
    • default
    • delimit
    • dict
    • echoParam
    • emojify
    • eq
    • errorf and warnf
    • fileExists
    • findRE
    • first
    • float
    • ge
    • getenv
    • group
    • gt
    • hasPrefix
    • highlight
    • hmac
    • htmlEscape
    • htmlUnescape
    • hugo
    • humanize
    • i18n
    • Image Functions
    • in
    • index
    • int
    • intersect
    • isset
    • jsonify
    • lang.Merge
    • lang.NumFmt
    • last
    • le
    • len
    • lower
    • lt
    • markdownify
    • Math
    • md5
    • merge
    • ne
    • now
    • os.Stat
    • partialCached
    • path.Base
    • path.Dir
    • path.Ext
    • path.Join
    • path.Split
    • plainify
    • pluralize
    • print
    • printf
    • println
    • querify
    • range
    • readDir
    • readFile
    • ref
    • reflect.IsMap
    • reflect.IsSlice
    • relLangURL
    • relref
    • relURL
    • replace
    • replaceRE
    • safeCSS
    • safeHTML
    • safeHTMLAttr
    • safeJS
    • safeURL
    • seq
    • sha
    • shuffle
    • singularize
    • slice
    • slicestr
    • sort
    • split
    • string
    • strings.Count
    • strings.HasSuffix
    • strings.Repeat
    • strings.RuneCount
    • strings.TrimLeft
    • strings.TrimPrefix
    • strings.TrimRight
    • strings.TrimSuffix
    • substr
    • symdiff
    • templates.Exists
    • time
    • title
    • transform.Unmarshal
    • trim
    • truncate
    • union
    • uniq
    • upper
    • urlize
    • urls.Parse
    • where
    • with
  • Variables
    • Variables Overview
    • Site Variables
    • Page Variables
    • Shortcode Variables
    • Pages Methods
    • Taxonomy Variables
    • File Variables
    • Menu Entry Properties
    • Hugo Variables
    • Git Variables
    • Sitemap Variables
  • Hugo Pipes
    • Hugo Pipes Overview
    • Hugo Pipes Introduction
    • SASS / SCSS
    • PostProcess
    • PostCSS
    • JavaScript Building
    • Babel
    • Asset minification
    • Asset bundling
    • Fingerprinting and SRI
    • Resource from Template
    • Resource from String
  • CLI
  • Troubleshooting
    • Troubleshoot
    • FAQ
    • Build Performance
  • Tools
    • Developer Tools Overview
    • Migrations
    • Starter Kits
    • Frontends
    • Editor Plug-ins
    • Search
    • Other Projects
  • Hosting & Deployment
    • Hosting & Deployment Overview
    • Hugo Deploy
    • Host-Agnostic Deploys with Nanobox
    • Host on AWS Amplify
    • Host on Netlify
    • Host on Render
    • Host on Firebase
    • Host on GitHub
    • Host on GitLab
    • Hosting on KeyCDN
    • Host on Bitbucket
    • Deployment with Wercker
    • Deployment with Rsync
  • Contribute
    • Contribute to Hugo
    • Development
    • Documentation
    • Themes
  • Maintenance
“Подсветка синтаксиса” последнее обновление: December 29, 2020: Перевод content-management (f98c73c98)
Улучшить эту страницу
Авторы Hugo
Hugo Logo
  • Подать вопрос
  • Получить помощь
  • Обсудить исходный код
  • @GoHugoIO
  • @spf13
  • @bepsays
 
 

Спонсоры Hugo

Logo for Forestry.io
Logo for Linode
Logo for eSolia
 

Авторские права на логотипы Hugo принадлежат © Steve Francia 2013–2021.

Hugo Gopher основан на оригинальной работе Renée French.

  • Новости
  • Документация
  • Темы
  • Витрина
  • Сообщество
  • GitHub
  • Telegram
  • О Хьюго
  • С чего начать
  • Модули Хьюго
  • Управление контентом
  • Templates
  • Functions
  • Variables
  • Hugo Pipes
  • CLI
  • Troubleshooting
  • Tools
  • Hosting & Deployment
  • Contribute
  • Maintenance