parallax / filament-syntax-entry
为可主题化的语法高亮添加 Filament infolist 条目。
2.0.1
2024-03-28 12:59 UTC
Requires
- php: ^8.3
- filament/filament: ^3.0
- illuminate/contracts: ^10.0|^11.0
- spatie/laravel-package-tools: ^1.15.0
- tempest/highlight: ^1.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9|^8.1
- orchestra/testbench: ^8.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
README
为使用 tempestphp/highlight 实现的可主题化服务器端语法高亮添加 Filament infolist entry。
安装
使用 composer 安装此包
composer require parallax/filament-syntax-entry
可选,您可以使用以下命令发布视图
php artisan vendor:publish --tag="filament-syntax-entry-views"
从 1.x 升级
升级到 2.x 版本时需要注意一些重要更改
- 服务器端语法高亮需要 PHP 8.3
- Highlight.js 已不再受支持
- 主题选择已被替换为创建自定义主题的能力
快速入门
添加 Infolist entry
将 SyntaxEntry
添加到 $infolist->schema()
方法中。
<?php namespace App\Filament\Resources; use Parallax\FilamentSyntaxEntry\SyntaxEntry; class ProductResource extends Resource { public static function infolist(Infolist $infolist): Infolist { return $infolist ->schema([ SyntaxEntry::make('metadata'), ]); } }
设置语言
默认语言值设置为 json
。要覆盖此值,您可以使用 language()
方法
SyntaxEntry::make('metadata') ->language('json');
以下语言目前可用
blade
css
gdscript
html
javascript
json
php
sql
twig
xml
yaml
创建自定义主题
您可以通过使用 theme()
方法覆盖默认主题
SyntaxEntry::make('metadata') ->theme('smudge');
这将使用自定义类包装语法组件,如下所示
syntax-entry-theme-smudge
最后一步是遵循 tempestphp/highlight 的文档来创建您自己的主题,并将其与 Filament themes 结合使用。
更新日志
有关最近更改的更多信息,请参阅 CHANGELOG。
致谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可文件。