90 lines
4 KiB
ReStructuredText
90 lines
4 KiB
ReStructuredText
===========
|
|
View Source
|
|
===========
|
|
|
|
View Source lets you look at the HTML or XML source for the page you're viewing. To activate View Source:
|
|
|
|
- context-click in the page and select *View Page Source*
|
|
- press :kbd:`Ctrl` + :kbd:`U` on Windows and Linux, or :kbd:`Cmd` + :kbd:`U` on macOS
|
|
|
|
The command opens a new tab with the source for the current page.
|
|
|
|
View Source features
|
|
********************
|
|
|
|
View Source has three additional features, which can be accessed from the context menu in the View Source tab:
|
|
|
|
.. image:: view_source_context_menu.png
|
|
:class: center
|
|
|
|
Go to Line
|
|
Scrolls to the specified line. If the number is higher than the lines in a file, you receive an error message.
|
|
Wrap Long Lines (toggle)
|
|
Wraps long lines to the width of the page.
|
|
Syntax Highlighting (toggle)
|
|
Applies syntax highlighting to the code.When syntax highlighting is on, View Source also highlights parsing errors in red. Hovering your mouse over errors displays a tooltip explaining the error.
|
|
|
|
.. image:: view_source_error.png
|
|
:class: border
|
|
|
|
|
|
This feature is useful when you're looking for HTML errors.
|
|
|
|
To access Go to Line from the keyboard, press :kbd:`Control` + :kbd:`Option` + :kbd:`L` on macOS, or :kbd:`Alt` + :kbd:`Shift` + :kbd:`L` on Windows or Linux.
|
|
|
|
|
|
Link to a line number
|
|
*********************
|
|
|
|
It is possible to link to a particular line, by adding the #lineNNN anchor to the url the browser will jump to the NNN line.
|
|
|
|
For example view-source:https://www.mozilla.org/#line100
|
|
|
|
|
|
View Selection Source
|
|
*********************
|
|
|
|
If you select part of a web page and context-click, you'll see a context menu item labeled "View Selection Source", that behaves just like "View Page Source", except you only see the source for the selection.
|
|
|
|
|
|
View MathML Source
|
|
******************
|
|
|
|
If you context-click while the mouse is over some `MathML <https://developer.mozilla.org/en-US/docs/Web/MathML>`_, you'll see a context menu item labeled "View MathML Source": click it to see the MathML source.
|
|
|
|
|
|
Limitations of View Source
|
|
**************************
|
|
|
|
There are limitations to what View Source does for you that you need to be aware of.
|
|
|
|
Error reporter ≠ validator
|
|
--------------------------
|
|
|
|
View Source only reports parsing errors, **not** HTML validity errors. For example, putting a `div <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/div>`_ element as a child of a `ul <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul>`_ element isn't a parse error, but it **is not** valid HTML. Therefore, this error will not be flagged in View Source. If you want to check that HTML is valid, you should use an HTML validator, such as `the one offered by W3C <https://validator.w3.org/>`_.
|
|
|
|
Not all parse errors are reported
|
|
---------------------------------
|
|
|
|
Even though all the reported errors are parse errors according to the HTML specification, not all parse errors are reported by View Source. Among the errors that don't get reported:
|
|
|
|
|
|
- Bytes that are illegal according to the document's encoding aren't marked as errors.
|
|
- Forbidden characters aren't reported as errors.
|
|
- Errors related to the end-of-file aren't reported.
|
|
- Tree builder errors relating to text (as opposed to tags, comments, or doctypes) aren't reported.
|
|
- Parse errors related to ``xmlns`` attributes aren't reported.
|
|
|
|
|
|
XML syntax highlighting
|
|
***********************
|
|
|
|
View Source uses the HTML tokenizer when highlighting XML source. While the tokenizer has support for processing instructions when highlighting XML source, that's the only XML-specific capability provided. Because of this, doctypes that have an internal subset are not highlighted correctly, and entity references to custom entities are also not highlighted correctly.
|
|
|
|
This mishighlighting can be seen by viewing the source of Firefox chrome files (such as XUL documents). However, this shouldn't be a problem in practice when viewing typical XML files.
|
|
|
|
|
|
See also
|
|
********
|
|
|
|
- `HTML5 Parser-Based View Source Syntax Highlighting <https://hsivonen.iki.fi/view-source/>`_ (Blog post)
|