Soak 主题会自动识别并高亮显示代码块中的内容。
这是一个最基础的代码高亮显示:
fn main() { println!("Hello World!");}
你可以在上面加个标题,类似这样:
function isPrime(n) { if (n <= 1) return false; for (let i = 2; i <= Math.sqrt(n); i++) { if (n % i === 0) return false; } return true;}
当遇到带有通常用于终端会话或 shell 脚本的语言标识符的代码块时,它还会自动显示成另外一种样式:
function Watch-Tail { Get-Content -Tail 20 -Wait $args }New-Alias tail Watch-Tail
当你想突出显示出某一行,或者某一片区域时,它也是支持的:
package mainimport "fmt"
func swap(x, y string) (string, string) { return y, x}func main() { a, b := swap("Google", "Runoob") fmt.Println(a, b)}
还支持标记语法(mark
、ins
、 del
),默认情况下,所有目标行都将使用标记类型 mark
,该标记以中性颜色呈现,仅突出显示行,而不为其添加任何语义含义。
还有两种其他标记类型可用于为您的行添加语义含义:ins
(插入)和del
(删除)。它们分别以绿色和红色呈现,通常用于指示代码的更改。
function demo() { console.log('该行被标记为已删除') // 这线和下一行被标记为插入 console.log('这是第二个插入线')
return '该行使用中性默认标记类型'}
又或者你想在标记处放上自己的标签,这也是可以的:
<button role="button" {...props}
value={value} className={buttonClassName}
disabled={disabled} active={active}>
{children && !active && (typeof children === 'string' ? <span>{children}</span> : children)}</button>
您还可以使用diff
语言,而不是在开放代码围栏上添加行号。 将开头代码围栏中的语言设置为diff
,然后在任何行的第一列中添加+
或-
标记:
function thisIsJavaScript() { console.log('要删除的旧代码') console.log('新的闪亮代码!')}
还有突出标记字符功能:
function demo() { // Mark any given text inside lines return 'Multiple matches of the given text are supported';}
console.log('The words yes and yep will be marked.')
function demo() { console.log('These are inserted and deleted marker types'); // The return statement uses the default marker type return true;}
强制不显示行号:
// Line numbers are disabled for this blockconsole.log('Hello?')console.log('Sorry, do you know what line I am on?')
修改起始行号:
console.log('Greetings from line 5!')console.log('I am on line 6')
折叠代码行:
此处折叠代码 2 行
import { someBoilerplateEngine } from '@example/some-boilerplate'import { evenMoreBoilerplate } from '@example/even-more-boilerplate'const engine = someBoilerplateEngine(evenMoreBoilerplate())engine.doSomething(1, 2, 3, calcFn)
function calcFn() {此处折叠代码 3 行
const a = 1 const b = 2 return a + b}