A user account is required in order to edit this wiki, but we've had to disable public user registrations due to spam.

To request an account, ask an autoconfirmed user on Chat (such as one of these permanent autoconfirmed members).

IDE: Difference between revisions

From WHATWG Wiki
Jump to navigation Jump to search
(Update on example vim plugin)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= vim =
= vim =


=== HTML5 text/html syntax ===
vim natively ships with CSS, Javascript & HTML syntax highlighting provided the feature is switched on.


https://vim.svn.sourceforge.net/svnroot/vim/vim7/runtime/autoload/xml/ and ''':help xml-omni-datafile''' might help you get started.
vim also has completion features documented at http://vimdoc.sourceforge.net/htmldoc/insert.html#ft-css-omni


Ideally some sort of tool to convert http://syntax.whattf.org/relaxng/ into a '''xml-omni-datafile''' is required. Updating https://vim.svn.sourceforge.net/svnroot/vim/vim7/runtime/autoload/xml/html40s.vim looks a bit too painful.
https://github.com/kaihendry/vim-html5/ provides an example with a [http://youtu.be/fhDSPOLzdbw video tutorial] of howto integrate with validator.nu, jshint, csslint et al.
 
=== Lint ===
 
See the [http://blog.whatwg.org/vim-checker HTML5 conformance checking in Vim blog entry] for an introduction.
 
Idea is to integrate Web services via [http://en.wikipedia.org/wiki/CURL curl] with your editor that supports [[Validator.nu_GNU_Output]], e.g. [http://en.wikipedia.org/wiki/Vim_editor vim]:
 
* HTML validation with [http://validator.nu/ validator.nu] script
* JavaScript validation with [http://www.jslint.com/ JSlint] script - [http://git.webvm.net/?p=jslint service source]
* CSS validation is [http://lists.w3.org/Archives/Public/www-validator-css/2008Jul/thread.html being worked on]
 
=== [http://jsbeautifier.org/ Javascript unpacker and beautifier] ===
 
Drop it into ~/.vim/ftplugin/jsbeautify.vim from http://www.vim.org/scripts/script.php?script_id=2727 and simply `source ~/.vim/ftplugin/jsbeautify.vim` from http://svn.natalian.org/projects/html5/javascript.vim
 
To run the beautifier, typically it's the keystrokes [\]+[f]+[f].
 
=== Installation instructions ===
 
http://svn.natalian.org/projects/html5/INSTALL
 
Any suggestions? Please get in contact with [http://hendry.iki.fi/ Kai Hendry]
 
Caveats:
* Vim's errorformat has issues parsing anything too complex, so best edit the stream for the errorformat (not the other way around)
* Vim's quickfix list (:cope) seems to require a filename (%f) in the error format


= Emacs =
= Emacs =
Line 38: Line 12:


Emacs ships with [http://www.thaiopensource.com/nxml-mode/ nxml-mode], a major mode for editing XML which does on-the-fly validation with RELAX NG schema. You can plug [http://wiki.whatwg.org/wiki/HTML5_Conformance_Checker#The_Schemas  fantasai and hsivonen's schema] into nxml-mode. The necessary shim code is included in the [http://github.com/hober/html5-el/tree/master hober/html5-el project on github].
Emacs ships with [http://www.thaiopensource.com/nxml-mode/ nxml-mode], a major mode for editing XML which does on-the-fly validation with RELAX NG schema. You can plug [http://wiki.whatwg.org/wiki/HTML5_Conformance_Checker#The_Schemas  fantasai and hsivonen's schema] into nxml-mode. The necessary shim code is included in the [http://github.com/hober/html5-el/tree/master hober/html5-el project on github].
[[Category:Implementations]]

Latest revision as of 16:09, 19 May 2014

vim

vim natively ships with CSS, Javascript & HTML syntax highlighting provided the feature is switched on.

vim also has completion features documented at http://vimdoc.sourceforge.net/htmldoc/insert.html#ft-css-omni

https://github.com/kaihendry/vim-html5/ provides an example with a video tutorial of howto integrate with validator.nu, jshint, csslint et al.

Emacs

XHTML5 or polyglot documents

Emacs ships with nxml-mode, a major mode for editing XML which does on-the-fly validation with RELAX NG schema. You can plug fantasai and hsivonen's schema into nxml-mode. The necessary shim code is included in the hober/html5-el project on github.