0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00
Dennis van den Berg 1ad194c0df
patch 9.1.0551: filetype: htmlangular files are not properly detected
Problem:  filetype: htmlangular files are not properly detected
Solution: Use the new htmlangular filetype for angular files, because
          since angular v17, those are no longer valid HTML files.
          (Dennis van den Berg)

Since Angular 17, the new Control Flow Syntax is not valid HTML. This PR
adds a new filetype detection for the HTML templates of Angular.

It first checks the filename. The Angular convention is to use
*.component.html for the template. However, this is not mandatory.

If the filename does not match, it will check the contents of the file
if it contains:

  - One of the Control-Flow blocks: @if, @for, @switch, @defer
  - A structural directive: *ngIf, *ngFor, *ngSwitch, *ngTemplateOutlet
  - Builtin Angular elements: ng-template or ng-content
  - String interpolation: {{ something }}

This enables the Angular LSP to attach only to htmlangular filetypes, as
well as language parsers, such as tree-sitter.

closes: #15190

Signed-off-by: Dennis van den Berg <dennis.vandenberg@nedap.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-07-09 19:44:32 +02:00
..
2008-06-24 22:58:06 +00:00
2021-09-09 21:55:11 +02:00
2021-09-09 21:55:11 +02:00
2022-07-25 15:42:07 +01:00
2022-03-30 10:51:39 +01:00
2016-10-23 21:21:08 +02:00
2021-09-21 20:09:51 +02:00
2021-09-09 21:55:11 +02:00
2022-07-01 18:45:04 +01:00
2010-01-06 20:54:52 +01:00
2021-09-09 21:55:11 +02:00
2021-09-09 21:55:11 +02:00
2019-11-10 22:09:11 +01:00
2022-03-30 10:51:39 +01:00
2023-02-27 15:49:53 +00:00
2021-09-09 21:55:11 +02:00
2006-04-15 20:16:09 +00:00
2019-01-01 15:32:17 +01:00
2023-10-16 09:53:37 +02:00
2021-09-09 21:55:11 +02:00
2021-05-02 17:19:11 +02:00
2023-10-16 09:53:37 +02:00
2021-09-09 21:55:11 +02:00
2020-03-01 19:06:45 +01:00

The autoload directory is for standard Vim autoload scripts.

These are functions used by plugins and for general use.  They will be loaded
automatically when the function is invoked.  See ":help autoload".

gzip.vim	for editing compressed files
netrw*.vim	browsing (remote) directories and editing remote files
tar.vim		browsing tar files
zip.vim		browsing zip files
paste.vim	common code for mswin.vim, menu.vim and macmap.vim
spellfile.vim	downloading of a missing spell file

Omni completion files:
ccomplete.vim		C
csscomplete.vim		HTML / CSS
htmlcomplete.vim	HTML
javascriptcomplete.vim  Javascript
phpcomplete.vim		PHP
pythoncomplete.vim	Python
rubycomplete.vim	Ruby
syntaxcomplete.vim	from syntax highlighting
xmlcomplete.vim		XML (uses files in the xml directory)