Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/onecentlin/laravel-blade-snippets-vscode

Laravel blade snippets and syntax highlight support for Visual Studio Code
https://github.com/onecentlin/laravel-blade-snippets-vscode

blade laravel laravel-blade-snippets snippets visual-studio-code vscode vscode-extension

Last synced: 27 days ago
JSON representation

Laravel blade snippets and syntax highlight support for Visual Studio Code

Awesome Lists containing this project

README

        

# [Laravel Blade Snippets](https://marketplace.visualstudio.com/items?itemName=onecentlin.laravel-blade)

Laravel blade snippets and syntax highlight support for Visual Studio Code.

> Suggest Laravel related extension: [Laravel Snippets](https://marketplace.visualstudio.com/items?itemName=onecentlin.laravel5-snippets)

## Screenshot

![Demo](https://github.com/onecentlin/laravel-blade-snippets-vscode/raw/master/images/screenshot.gif)

## User Settings

Open `Preferences` -> `Settings`

```json
"emmet.triggerExpansionOnTab": true, // enable tab to expanse emmet tags
"blade.format.enable": true, // if you would like to enable blade format
```

Specific settings for blade language

```json
"[blade]": {
"editor.autoClosingBrackets": "always"
},
```

## Features

- Blade syntax highlight
- Blade snippets
- Emmet works in blade template
- Blade formatting

## Blade Syntax Hightlight

- Auto detected with `.blade.php` extension
- Manually switch language mode to `Blade` (`Ctrl + K, M` or `⌘ + K, M`)

## Laravel Blade Snippets

| Trigger | Snippet |
| ------------------- | ----------------------------------------- |
| b:extends | @extends |
| b:yield | @yield |
| b:section | @section...@endsection |
| b:section-show | @section...@show |
| b:if | @if...@endif |
| b:if-else | @if...@else...@endif |
| b:unless | @unless...@endunless |
| b:has-section | @hasSection...@else...@endif |
| b:for | @for...@endfor |
| b:foreach | @foreach...@endforeach |
| b:forelse | @forelse...@empty...@endforelse |
| b:while | @while...@endwhile |
| b:each | @each |
| b:push | @push...@endpush |
| b:stack | @stack |
| b:inject | @inject |
| b:comment | {{-- comment --}} (`Ctrl + /` or `⌘ + /`) |
| b:echo | {{ $data }} |
| b:echo-html | {!! $html !!} |
| b:echo-raw | @{{ variable }} |
| b:can | @can...@endcan (v5.1) |
| b:can-elsecan | @can...@elsecan...@endcan (v5.1) |
| b:canany | @canany...@endcanany (v5.8) |
| b:canany-elsecanany | @canany...@elsecanany...@endcanany (v5.8) |
| b:cannot | @cannot...@endcannot (v5.3) |
| b:cannot-elsecannot | @cannot...@elsecannot...@endcannot (v5.3) |
| b:verbatim | @verbatim...@endverbatim (v5.3) |
| b:php | @php...@endphp (v5.3) |
| b:includeIf | @includeIf (v5.3) |
| b:includeWhen | @includeWhen (v5.4) |
| b:includeFirst | @includeFirst (v5.5) |
| b:includeUnless | @includeUnless (v6.x) |
| b:component | @component...@endcomponent (v5.4) |
| b:slot | @slot...@endslot (v5.4) |
| b:isset | @isset...@endisset (v5.4) |
| b:empty | @empty...@endempty (v5.4) |
| b:auth | @auth...@endauth (v5.5) |
| b:guest | @guest...@endguest (v5.5) |
| b:switch | @switch...@case...@endswitch (v5.5) |
| b:lang | @lang |
| b:csrf | @csrf (v5.6) |
| b:method | @method(...) (v5.6) |
| b:dump | @dump(...) (v5.6) |
| b:dd | @dd(...) (v5.6) |
| b:prepend | @prepend...@endprepen (v5.6) |
| b:error | @error...@enderror (v5.8) |
| b:props | @props (v7.4) |
| b:production | @production...@endproduction |
| b:env | @env...@endenv |
| b:once | @once...@endonce |
| b:class | @class (v8.51) |
| b:aware | @aware (v8.64) |
| b:js | @js (v8.71) |
| b:checked | @checked (v9.x) |
| b:selected | @selected (v9.x) |
| b:disabled | @disabled (v9.x) |
| b:style | @style (v9.x) |
| b:readonly | @readonly (v9.x) |
| b:required | @required (v9.x) |
| b:pushOnce | @pushOnce...@endPushOnce (v9.x) |
| b:pushIf | @pushIf...@endPushIf (v9.x) |
| b:prependOnce | @prependOnce...@endPrependOnce (v9.x) |
| b:session | @session ... @endsession (v10.x) |

### $loop variable (Laravel v5.3+)

| Trigger | Snippet |
| ------------ | ------------------------------------------------------ |
| b:loop | $loop->(index,remaining,count,first,last,depth,parent) |
| b:loop-first | @if($loop->first)...@endif |
| b:loop-last | @if($loop->last)...@endif |

## Laravel Helper Snippets for Blade

| Trigger | Laravel Helper |
| ------------------- | --------------------- |
| lv:elixir | elixir() - deprecated |
| lv:mix | mix() (v5.4) |
| lv:trans | trans() |
| lv:action | action() |
| lv:secure-asset | secure_asset() |
| lv:url | url() |
| lv:asset | asset() |
| lv:route | route() |
| lv:csrf-field | csrf_field() |
| lv:csrf-token | csrf_token() |
| lv:pagination-links | $collection->links() |

## Blade extensions

Register in the `boot` method of `ServiceProvider`

- `Blade::component`
- `Blade::include`
- `Blade::if`
- `Blade::directive`
- `Blade::stringable`

Rendering inline blade templates

- `Blade::render`
- `Blade::renderComponent`

## Contact

Please file any [issues](https://github.com/onecentlin/laravel-blade-snippets-vscode/issues) or have a suggestion please tweet me [@onecentlin](https://twitter.com/onecentlin).

## Credits

- Blade language grammar is based on [Medalink syntax definition](https://github.com/Medalink/laravel-blade) for Sublime Text; Converted from [Blade templating support in Atom](https://github.com/jawee/language-blade)
- Textmate language format file is based on [Textmate bundle for Laravel 5](https://github.com/loranger/Laravel.tmbundle).

## License

Please read [License](https://github.com/onecentlin/laravel-blade-snippets-vscode/blob/master/LICENSE.md) for more information